Export dat FHIR
Pomocí hromadné $export
operace ve službě FHIR® můžete exportovat data, jak je popsáno ve specifikaci hromadného přístupu k datům HL7 FHIR.
Než se pokusíte použít $export
, ujistěte se, že je vaše služba FHIR nakonfigurovaná tak, aby se připojila k účtu Azure Data Lake Storage Gen2. Informace o konfiguraci nastavení exportu a vytvoření účtu Data Lake Storage Gen2 najdete v tématu Konfigurace nastavení pro export.
Volání koncového $export
bodu
Po nastavení služby FHIR pro připojení pomocí účtu Data Lake Storage Gen2 můžete volat $export
koncový bod a služba FHIR exportuje data do kontejneru Azure Blob Storage uvnitř účtu úložiště. Následující příklad požadavku exportuje všechny prostředky do kontejneru, který je určen názvem ({{containerName}}
). Poznámka: Pokud chcete zadat {{containerName}}
v požadavku, musíte kontejner vytvořit v účtu Data Lake Storage Gen2.
GET {{fhirurl}}/$export?_container={{containerName}}
Pokud v požadavku nezadáte název kontejneru (například voláním GET {{fhirurl}}/$export
), vytvoří se pro exportovaná data nový kontejner s automaticky vygenerovaným názvem.
Obecné informace o specifikaci rozhraní FHIR API najdete v dokumentaci k toku exportu FHIR HL7 FHIR$export
.
Služba FHIR podporuje $export
následující úrovně:
- Systém:
GET {{fhirurl}}/$export
- Pacient:
GET {{fhirurl}}/Patient/$export
- Skupina pacientů*:
GET {{fhirurl}}/Group/[ID]/$export
*Služba FHIR exportuje všechny odkazované prostředky, ale neexportuje charakteristiky samotného prostředku skupiny.
Data se exportují ve více souborech. Každý soubor obsahuje prostředky pouze jednoho typu. Počet prostředků v jednotlivých souborech je. Maximální počet prostředků je založený na výkonu systému. V současné době je nastavená na 5 000, ale může se změnit.
Výsledkem je, že pro typ prostředku můžete získat více souborů. Názvy souborů se řídí formátem <resourceName>-<number>-<number>.ndjson
. Pořadí souborů není zaručeno, že odpovídá žádnému pořadí prostředků v databázi.
Poznámka:
Patient/$export
a Group/[ID]/$export
může exportovat duplicitní prostředky, pokud je prostředek ve více skupinách nebo v oddílu více prostředků.
Kromě kontroly přítomnosti exportovaných souborů v účtu úložiště můžete stav operace zkontrolovat $export
prostřednictvím adresy URL v Content-Location
hlavičce, která se vrátí v odpovědi služby FHIR. Další informace najdete v dokumentaci k hromadné žádosti o stav dat z HL7.
Export dat FHIR do Data Lake Storage Gen2
Služba FHIR v současné době podporuje $export
účty Data Lake Storage Gen2 s následujícími omezeními:
- Data Lake Storage Gen2 poskytuje hierarchické obory názvů, ale neexistuje způsob, jak cílit
$export
operace na konkrétní podadresář v rámci kontejneru. Služba FHIR může zadat pouze cílový kontejner pro export, kde se vytvoří nová složka pro každou$export
operaci. - Jakmile se
$export
operace dokončí a všechna data se zapíšou do složky, služba FHIR nic do této složky znovu neexportuje. Následné exporty do stejného kontejneru budou uvnitř nově vytvořené složky.
Pokud chcete exportovat data do účtu úložiště za bránou firewall, přečtěte si téma Konfigurace nastavení pro export.
Nastavení a parametry
Hlavičky
Pro úlohy musí být nastaveny $export
dva požadované parametry hlavičky. Hodnoty se nastavují podle aktuální specifikace HL7 $export.
- Přijmout:
application/fhir+json
- Preferovat:
respond-async
Parametry dotazů
Služba FHIR podporuje následující parametry dotazu pro filtrování exportovaných dat. Všechny tyto parametry jsou volitelné.
Parametr dotazu | Definuje se specifikace FHIR? | Popis |
---|---|---|
_outputFormat |
Ano | V současné době podporuje tři hodnoty, které odpovídají specifikaci FHIR: application/fhir+ndjson , application/ndjson nebo jen ndjson . Všechny úlohy exportu vrací .ndjson soubory a předaná hodnota nemá žádný vliv na chování kódu. |
_since |
Ano | Umožňuje exportovat pouze prostředky, které byly změněny od zadaného času. |
_type |
Ano | Umožňuje určit, které typy prostředků se mají zahrnout. Například _type=Patient by se vrátily pouze prostředky pacientů. |
_typeFilter |
Ano | K vyžádání jemně odstupňovaného filtrování můžete použít _typeFilter společně s parametrem _type . Hodnota parametru _typeFilter je čárkami oddělený seznam dotazů FHIR, které dále omezují výsledky. |
_container |
No | Určuje název kontejneru v nakonfigurovaném účtu úložiště, ve kterém se mají data exportovat. Pokud je zadaný kontejner, data se exportují do složky v tomto kontejneru. Pokud kontejner není zadaný, data se exportují do nového kontejneru s automaticky vygenerovaným názvem. |
_till |
No | Umožňuje exportovat prostředky, které byly upraveny až do zadaného času. Tento parametr je použitelný pouze u exportu na úrovni systému. Pokud se v tomto případě historické verze nezaknuly nebo vyprázdnily, export zaručuje skutečné zobrazení snímků. |
includeAssociatedData |
No | Umožňuje exportovat historii a obnovitelné odstraněné prostředky. Tento filtr nefunguje s parametrem dotazu _typeFilter. Zahrňte hodnotu jako _history pro export historie nebo jiných než nejnovějších verzí prostředků. Pokud chcete exportovat obnovitelné odstraněné prostředky, zahrňte hodnotu jako _deleted. |
Poznámka:
Jako cíl pro $export
operace se můžou zaregistrovat jenom účty úložiště ve stejném předplatném jako služba FHIR.
Odstraňování potíží
Následující informace vám můžou pomoct vyřešit problémy s exportem dat FHIR.
Úlohy zablokované ve špatném stavu
V některých situacích může být úloha zablokovaná ve špatném stavu, zatímco se služba FHIR pokouší exportovat data. K tomu může dojít zejména v případě, že oprávnění účtu Data Lake Storage Gen2 nebyla správně nastavená.
Jedním ze způsobů, jak zkontrolovat stav operace$export
, je přejít do prohlížeče úložiště vašeho účtu úložiště a zjistit, jestli se v kontejneru exportu nacházejí nějaké .ndjson
soubory. Pokud soubory nejsou k dispozici a nejsou spuštěné žádné jiné $export
úlohy, je možné, že aktuální úloha je zablokovaná ve špatném stavu. V takovém případě můžete úlohu zrušit $export
odesláním požadavku DELETE na adresu URL uvedenou v hlavičce Content-Location a zrušit požadavek.
Poznámka:
Ve službě FHIR je výchozí doba nečinnosti $export
operace ve špatném stavu 10 minut, než služba zastaví operaci a přesune se na novou úlohu.
Další kroky
V tomto článku jste se dozvěděli o exportu prostředků FHIR pomocí $export
operace. Informace o tom, jak nastavit a používat další možnosti pro export, najdete tady:
Poznámka:
FHIR® je registrovaná ochranná známka HL7 a používá se s povolením HL7.