Export dat FHIR v rozhraní Azure API for FHIR

Důležité

Rozhraní Azure API for FHIR bude vyřazeno 30. září 2026. Postupujte podle strategií migrace a do tohoto data přejděte na službu FHIR služby Azure Health Data Services. Vzhledem k vyřazení rozhraní Azure API for FHIR nebudou nová nasazení od 1. dubna 2025 povolena. Služba FHIR služby Azure Health Data Services je vyvinutá verze rozhraní Azure API for FHIR, která zákazníkům umožňuje spravovat služby FHIR, DICOM a MedTech s integrací do jiných služeb Azure.

Funkce hromadného exportu umožňuje export dat ze serveru FHIR v souladu se specifikací FHIR.

Před použitím $export se chcete ujistit, že je rozhraní Azure API for FHIR nakonfigurované tak, aby ho používalo. Informace o konfiguraci nastavení exportu a vytvoření účtu úložiště Azure najdete na stránce konfigurace exportu dat.

Poznámka:

Jako cíl pro operace $export se můžou zaregistrovat jenom účty úložiště ve stejném předplatném jako účty úložiště pro rozhraní Azure API for FHIR.

Použití příkazu $export

Po konfiguraci rozhraní Azure API for FHIR pro export můžete použít příkaz $export k exportu dat z této služby. Data se uloží do účtu úložiště, který jste zadali při konfiguraci exportu. Pokud chcete zjistit, jak vyvolat příkaz $export na serveru FHIR, přečtěte si dokumentaci ke specifikaci $export HL7 FHIR.

Úlohy zablokované ve špatném stavu

V některých situacích může být úloha zablokovaná ve špatném stavu. K tomu může dojít zejména v případě, že oprávnění účtu úložiště nebyla správně nastavená. Jedním ze způsobů, jak ověřit export, je zkontrolovat účet úložiště a zjistit, ndjsonjestli jsou k dispozici odpovídající soubory kontejneru (tj. ). Pokud nejsou k dispozici a nejsou spuštěné žádné další úlohy exportu, je možné, že se aktuální úloha zablokuje ve špatném stavu. Úlohu exportu byste měli zrušit odesláním žádosti o zrušení a opětovným zařazením úlohy do fronty. Výchozí doba spuštění exportu ve špatném stavu je 10 minut, než se zastaví a přesune do nové úlohy nebo zkusí export zopakovat.

Azure API For FHIR podporuje $export na následujících úrovních:

  • Systém: GET https://<<FHIR service base URL>>/$export>>
  • Pacient: GET https://<<FHIR service base URL>>/Patient/$export>>
  • Skupina pacientů* – Azure API for FHIR exportuje všechny související prostředky, ale nevyexportuje charakteristiky skupiny: GET https://<<FHIR service base URL>>/Group/[ID]/$export>>

Při exportu se data exportují do více souborů, z nichž každý obsahuje prostředky pouze jednoho typu. Počet prostředků v jednotlivých souborech bude omezený. 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ů budou následovat ve formátu resourceName-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 v oddílu více prostředků nebo je ve více skupinách.

Kromě toho se podporuje kontrola stavu exportu prostřednictvím adresy URL vrácené hlavičkou umístění během fronty spolu se zrušením skutečné úlohy exportu.

Export dat FHIR do ADLS Gen2

V současné době podporujeme $export pro účty úložiště s podporou ADLS Gen2 s následujícím omezením:

  • Uživatel nemůže využít hierarchické obory názvů, ale neexistuje způsob, jak v kontejneru cílit export do konkrétního podadresáře. Poskytujeme pouze možnost cílit na konkrétní kontejner (kde vytvoříme novou složku pro každý export).
  • Po dokončení exportu nikdy do této složky nic neexportujeme, protože následné exporty do stejného kontejneru budou uvnitř nově vytvořené složky.

Nastavení a parametry

Hlavičky

Existují dva požadované parametry hlavičky, které musí být nastaveny pro $export úlohy. Hodnoty jsou definovány aktuální specifikací $export.

  • Přijmout – application/fhir+json
  • Preferovat – respond-async

Parametry dotazů

Rozhraní Azure API for FHIR podporuje následující parametry dotazu. 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 ndjson. Všechny úlohy exportu se vrátí ndjson a předaná hodnota nemá žádný vliv na chování kódu.
_Protože Ano Umožňuje exportovat pouze prostředky, které byly změněny od zadaného času.
_Typ Ano Umožňuje určit, které typy prostředků budou zahrnuty. Například _type=Pacient by vrátil pouze prostředky pacientů.
_typefilter Ano K vyžádání jemně odstupňovaného filtrování můžete použít _typefilter spolu s parametrem _type. Hodnota parametru _typeFilter je čárkami oddělený seznam dotazů FHIR, které dále omezují výsledky.
_Kontejner No Určuje kontejner v rámci nakonfigurovaného účtu úložiště, ve kterém se mají data exportovat. Pokud je zadaný kontejner, data se exportují do složky do daného kontejneru. Pokud kontejner není zadaný, data se exportují do nového kontejneru.
_Až No Umožňuje exportovat pouze prostředky, které byly změněny do zadaného času. Tento parametr se vztahuje pouze na export na úrovni systému. V takovém případě platí, že pokud nebyly zakázané nebo vyprázdněné historické verze, export zaručuje skutečné zobrazení snímků nebo jinými slovy povolí časová cesta.
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 ne nejnovější verze prostředků. Pokud chcete exportovat obnovitelné odstraněné prostředky, zahrňte hodnotu jako _deleted.
_isparallel No Do operace exportu je možné přidat parametr dotazu "_isparallel", aby se zlepšila jeho propustnost. Aby bylo možné povolit paralelizaci, musí být hodnota nastavená na true. Je důležité si uvědomit, že použití tohoto parametru může vést ke zvýšení spotřeby jednotek žádostí v průběhu životnosti exportu.

Poznámka:

Došlo ke známému problému s operací $export, která by mohla vést k neúplným exportům s úspěšným stavem. K problému dochází při použití příznaku is_parallel. Tento problém má vliv na export úloh spuštěných s parametrem dotazu _isparallel od 13. února 2024.

Zabezpečený export do služby Azure Storage

Azure API for FHIR podporuje zabezpečenou operaci exportu. Vyberte jednu ze dvou možností níže:

  • Povolení azure API for FHIR jako důvěryhodné služby Microsoftu pro přístup k účtu úložiště Azure

  • Povolení přístupu ke konkrétním IP adresům přidruženým k rozhraní Azure API for FHIR pro přístup k účtu úložiště Azure Tato možnost poskytuje dvě různé konfigurace v závislosti na tom, jestli je účet úložiště ve stejném umístění jako nebo je v jiném umístění než rozhraní Azure API for FHIR.

Povolení azure API for FHIR jako důvěryhodné služby Microsoftu

Na webu Azure Portal vyberte účet úložiště a pak vyberte okno Sítě . Na kartě Brány firewall a virtuální sítě vyberte Vybrané sítě.

Důležité

Ujistěte se, že jste udělili oprávnění k přístupu k účtu úložiště pro rozhraní Azure API for FHIR pomocí jeho spravované identity. Další informace najdete v tématu Konfigurace nastavení exportu a nastavení účtu úložiště.

Azure Storage Networking Settings.

V části Výjimky zaškrtněte políčko Povolit důvěryhodným služby Microsoft přístup k tomuto účtu úložiště a uložte nastavení.

Allow trusted Microsoft services to access this storage account.

Teď jste připraveni bezpečně exportovat data FHIR do účtu úložiště. Všimněte si, že účet úložiště je ve vybraných sítích a není veřejně přístupný. Pokud chcete získat přístup k souborům, můžete pro účet úložiště povolit a používat privátní koncové body nebo povolit všechny sítě pro účet úložiště po krátkou dobu.

Důležité

Uživatelské rozhraní se později aktualizuje, abyste mohli vybrat typ prostředku pro rozhraní Azure API for FHIR a konkrétní instanci služby.

Povolit konkrétním IP adresům přístup k účtu úložiště Azure z jiných oblastí Azure

  1. Na webu Azure Portal přejděte do účtu Azure Data Lake Storage Gen2.

  2. V nabídce vlevo vyberte Sítě.

  3. Vyberte Povoleno z vybraných virtuálních sítí a IP adres.

  4. V části Brána firewall v poli Rozsah adres zadejte IP adresu. Přidejte rozsahy IP adres pro povolení přístupu z internetu nebo z místních sítí. IP adresu najdete v následující tabulce pro oblast Azure, ve které je služba FHIR zřízená.

    Oblast Azure Veřejná IP adresa
    Austrálie – východ 20.53.44.80
    Střední Kanada 20.48.192.84
    USA – střed 52.182.208.31
    USA – východ 20.62.128.148
    USA – východ 2 20.49.102.228
    USA – východ 2 (EUAP) 20.39.26.254
    Německo – sever 51.116.51.33
    Německo – středozápad 51.116.146.216
    Japonsko – východ 20.191.160.26
    Jižní Korea – střed 20.41.69.51
    Severní střed USA 20.49.114.188
    Severní Evropa 52.146.131.52
    Jižní Afrika – sever 102.133.220.197
    Středojižní USA 13.73.254.220
    Southeast Asia 23.98.108.42
    Švýcarsko – sever 51.107.60.95
    Velká Británie – jih 51.104.30.170
    Velká Británie – západ 51.137.164.94
    Středozápad USA 52.150.156.44
    Západní Evropa 20.61.98.66
    Západní USA 2 40.64.135.77

Povolit konkrétním IP adresě přístup k účtu úložiště Azure ve stejné oblasti

Proces konfigurace PRO IP adresy ve stejné oblasti je stejný jako předchozí postup s tím rozdílem, že místo toho použijete konkrétní rozsah IP adres ve formátu CIDR (Classless Inter-Domain Routing) (tj. 100.64.0.0/10). Musíte zadat rozsah IP adres (100.64.0.0 až 100.127.255.255), protože IP adresa pro službu FHIR je přidělena při každém provedení žádosti o operaci.

Poznámka:

Privátní IP adresu je možné použít v rozsahu 10.0.2.0/24, ale neexistuje žádná záruka, že operace bude v takovém případě úspěšná. Pokud požadavek operace selže, můžete to zkusit znovu, ale dokud nepoužijete IP adresu v rozsahu 100.64.0.0/10, požadavek nebude úspěšný.

Toto chování sítě pro rozsahy IP adres je záměrně. Alternativou je konfigurace účtu úložiště v jiné oblasti.

Další kroky

V tomto článku jste se naučili exportovat prostředky FHIR pomocí příkazu $export. V dalším kroku se dozvíte, jak exportovat deidentifikovaná data.

FHIR® je registrovaná ochranná známka HL7 a používá se s povolením HL7.