Újraindexelt feladat futtatása
Előfordulhat, hogy az Azure Health Data Services FHIR szolgáltatásában keresési paraméterek találhatók, amelyek még nem lettek indexelve. Ez a forgatókönyv akkor releváns, ha saját egyéni keresési paramétereket határoz meg. Amíg a keresési paraméter nincs indexelve, nem használható élő éles környezetben. Ez a cikk azt ismerteti, hogyan futtathat újraindexelési feladatot az FHIR-szolgáltatásadatbázisban még nem indexelt egyéni keresési paraméterek indexeléséhez.
Figyelmeztetés
Az első lépések előtt fontos, hogy elolvassa ezt a teljes cikket. Az újraindexelés nagyon nagy teljesítményigényű lehet. Ez a cikk az újraindexelt feladatok szabályozásának és szabályozásának lehetőségeit ismerteti.
Újraindexeléses feladat futtatása
Az újraindexelési feladat teljes FHIR-szolgáltatásadatbázison és adott egyéni keresési paraméteren is végrehajtható.
Újraindexelési feladat futtatása a teljes FHIR-szolgáltatásadatbázison
Az újraindexelési feladat futtatásához használja a következő POST
hívást a kérelem törzsében található JSON formátumú Parameters
erőforrással:
POST {{FHIR_URL}}/$reindex
content-type: application/fhir+json
{
"resourceType": "Parameters",
"parameter": []
}
Hagyja üresen a "parameter": []
mezőt (az ábrán látható módon), ha nem kell módosítania az újraindexelt feladathoz lefoglalt erőforrásokat.
Ha a kérés sikeres, a válaszban egy erőforrás mellett Parameters
egy 201 Létrehozott állapotkódot is kap.
HTTP/1.1 201 Created
Content-Location: https://{{FHIR URL}}/_operations/reindex/560c7c61-2c70-4c54-b86d-c53a9d29495e
{
"resourceType": "Parameters",
"id": "560c7c61-2c70-4c54-b86d-c53a9d29495e",
"meta": {
"versionId": "138035"
},
"parameter": [
{
"name": "id",
"valueString": "560c7c61-2c70-4c54-b86d-c53a9d29495e"
},
{
"name": "lastModified",
"valueDateTime": "2023-06-08T04:52:44.0974408+00:00"
},
{
"name": "queuedTime",
"valueDateTime": "2023-06-08T04:52:44.0974406+00:00"
},
{
"name": "totalResourcesToReindex",
"valueDecimal": 0.0
},
{
"name": "resourcesSuccessfullyReindexed",
"valueDecimal": 0.0
},
{
"name": "progress",
"valueDecimal": 0.0
},
{
"name": "status",
"valueString": "Queued"
},
{
"name": "maximumConcurrency",
"valueDecimal": 3.0
},
{
"name": "queryDelayIntervalInMilliseconds",
"valueDecimal": 500.0
},
{
"name": "maximumNumberOfResourcesPerQuery",
"valueDecimal": 100.0
}
]
}
Újraindexelési feladat futtatása adott egyéni keresési paraméteren
Az újraindexelési feladat adott egyéni keresési paraméterrel való futtatásához használja a következő POST
hívást a kérelem törzsében található JSON formátumú Parameters
erőforrással:
POST {{FHIR_URL}}/$reindex
content-type: application/fhir+json
{
"resourceType": "Parameters",
"parameter": [
{
"name": "targetSearchParameterTypes",
"valueString": "{url of custom search parameter. In case of multiple custom search parameters, url list can be comma separated.}"
}
]
}
Megjegyzés
Az újraindexelt feladat állapotának ellenőrzéséhez vagy a feladat megszakításához szüksége lesz az újraindexelés azonosítójára. Ez a "id"
válaszban visszaadott értékben "parameter"
hordozott érték. A fenti példában az újraindexelt feladat azonosítója a következő lenne 560c7c61-2c70-4c54-b86d-c53a9d29495e
: .
Az újraindexelt feladat állapotának ellenőrzése
Miután elindított egy újraindexeléses feladatot, az alábbi hívással ellenőrizheti a feladat állapotát:
GET {{FHIR_URL}}/_operations/reindex/{{reindexJobId}}
Példa válasz:
{
"resourceType": "Parameters",
"id": "560c7c61-2c70-4c54-b86d-c53a9d29495e",
"meta": {
"versionId": "138087"
},
"parameter": [
{
"name": "id",
"valueString": "560c7c61-2c70-4c54-b86d-c53a9d29495e"
},
{
"name": "startTime",
"valueDateTime": "2023-06-08T04:54:53.2943069+00:00"
},
{
"name": "endTime",
"valueDateTime": "2023-06-08T04:54:54.4052272+00:00"
},
{
"name": "lastModified",
"valueDateTime": "2023-06-08T04:54:54.4053002+00:00"
},
{
"name": "queuedTime",
"valueDateTime": "2023-06-08T04:52:44.0974406+00:00"
},
{
"name": "totalResourcesToReindex",
"valueDecimal": 2.0
},
{
"name": "resourcesSuccessfullyReindexed",
"valueDecimal": 2.0
},
{
"name": "progress",
"valueDecimal": 100.0
},
{
"name": "status",
"valueString": "Completed"
},
{
"name": "maximumConcurrency",
"valueDecimal": 3.0
},
{
"name": "resources",
"valueString": "{{LIST_OF_IMPACTED_RESOURCES}}"
},
{
"name": "resourceReindexProgressByResource (CountReindexed of Count)",
"valueString": "{{RESOURCE_TYPE:REINDEXED_COUNT OF TOTAL_COUNT}}"
},
{
"name": "searchParams",
"valueString": "{{LIST_OF_SEARCHPARAM_URLS}}"
},
{
"name": "queryDelayIntervalInMilliseconds",
"valueDecimal": 500.0
},
{
"name": "maximumNumberOfResourcesPerQuery",
"valueDecimal": 100.0
}
]
}
A fenti válasz a következő információkat jeleníti meg:
totalResourcesToReindex
: Az ebben a feladatban újraindexelt erőforrások teljes számát tartalmazza.resourcesSuccessfullyReindexed
: A feladatban már újraindexelt erőforrások teljes száma.progress
: Feladat újraindexelése befejezettként.resourcesSuccessfullyReindexed
/totalResourcesToReindex
Egyenlő x 100.status
: Azt jelzi, hogy az újraindexelt feladat várólistára van-e helyezve, fut-e, fejeződött-e be, meghiúsult-e vagy megszakadt-e.resources
: Felsorolja az újraindexelt feladat által érintett összes erőforrástípust.'resourceReindexProgressByResource (CountReindexed of Count)': A teljes szám újraindexelt számát adja meg erőforrástípusonként. Azokban az esetekben, amikor egy adott erőforrástípus újraindexelése várólistára kerül, csak a Darabszám van megadva.
'searchParams': Az újraindexelési feladat által érintett keresési paraméterek URL-címét jeleníti meg.
Újraindexeléses feladat törlése
Ha le kell mondania egy újraindexeléses feladatot, használjon egy DELETE
hívást, és adja meg az újraindexelés feladatazonosítóját:
DELETE {{FHIR URL}}/_operations/reindex/{{reindexJobId}}
A teljesítménnyel kapcsolatos megfontolások
Az újraindexelt feladatok teljesítményigényes lehet. Az FHIR szolgáltatás szabályozási vezérlőket kínál, amelyek segítenek az újraindexeléses feladatok adatbázison való futtatásának kezelésében.
Megjegyzés
A nagy adathalmazok esetében nem ritka, hogy egy újraindexelt feladat napokig fusson.
Az alábbiakban egy táblázat ismerteti az újraindexelt feladatok számítási erőforrásainak szabályozásához rendelkezésre álló paramétereket, alapértelmezett értékeket és ajánlott tartományokat. Ezekkel a paraméterekkel felgyorsíthatja a folyamatot (több számítást használhat), vagy lelassíthatja a folyamatot (kevesebb számítást használhat).
Paraméter | Leírás | Alapértelmezett | Elérhető tartomány |
---|---|---|---|
QueryDelayIntervalInMilliseconds |
Az újraindexelési feladat során az egyes erőforráskötegek közötti késés. A kisebb szám felgyorsítja a feladatot, míg egy nagyobb szám lelassítja azt. | 500 MS (.5 másodperc) | 50–500000 |
MaximumResourcesPerQuery |
Az újraindexelendő erőforráskötegben található erőforrások maximális száma. | 100 | 1-5000 |
MaximumConcurrency |
Az adott időpontban elvégzett kötegek száma. | 1 | 1-10 |
Ha a fenti paraméterek bármelyikét szeretné használni, azokat átadhatja az Parameters
erőforrásnak, amikor az újraindexelés indítására irányuló kezdeti POST
kérést küldi el.
POST {{FHIR_URL}}/$reindex
content-type: application/fhir+json
{
"resourceType": "Parameters",
"parameter": [
{
"name": "maximumConcurrency",
"valueInteger": "3"
},
{
"name": "queryDelayIntervalInMilliseconds",
"valueInteger": "1000"
},
{
"name": "maximumNumberOfResourcesPerQuery",
"valueInteger": "1"
}
]
}
Következő lépések
Ebben a cikkben megtanulta, hogyan végezhet újraindexeléses feladatot az FHIR szolgáltatásban. Az egyéni keresési paraméterek definiálásáról további információt az
Az FHIR® a HL7 bejegyzett védjegye, és a HL7 engedélyével használják.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: