Exportieren ihrer FHIR-Daten

Mithilfe des Massenvorgangs $export im FHIR-Dienst können Sie Daten exportieren, wie in der HL7 FHIR Bulk Data Access-Spezifikation beschrieben.

Bevor Sie versuchen, die Verwendung $exportauszuführen, stellen Sie sicher, dass Ihr FHIR-Dienst für die Verbindung mit einem Azure Data Lake Storage Gen2-Konto konfiguriert ist. Informationen zum Konfigurieren von Exporteinstellungen und zum Erstellen eines Data Lake Storage Gen2-Kontos finden Sie unter "Konfigurieren von Einstellungen für den Export".

Aufrufen des Endpunkts $export

Nachdem Sie den FHIR-Dienst für die Verbindung mit einem Data Lake Storage Gen2-Konto eingerichtet haben, können Sie den $export Endpunkt aufrufen, und der FHIR-Dienst exportiert Daten in einen Azure Blob Storage-Container innerhalb des Speicherkontos. Im folgenden Beispiel werden alle Ressourcen in einen Container exportiert, der durch den Namen ({{containerName}}) angegeben wird. Beachten Sie, dass Sie den Container vorab im Data Lake Storage Gen2-Konto erstellen müssen, wenn Sie die {{containerName}} Anforderung angeben möchten.

GET {{fhirurl}}/$export?_container={{containerName}}

Wenn Sie keinen Containernamen in der Anforderung angeben (z. B. durch Aufrufen GET {{fhirurl}}/$export), wird ein neuer Container mit einem automatisch generierten Namen für die exportierten Daten erstellt.

Allgemeine Informationen zur FHIR-API-Spezifikation $export finden Sie in der Dokumentation zu HL7 FHIR Export Request Flow .

Der FHIR-Dienst unterstützt $export auf den folgenden Ebenen:

  • System:GET {{fhirurl}}/$export
  • Patient:GET {{fhirurl}}/Patient/$export
  • Patientengruppe*:GET {{fhirurl}}/Group/[ID]/$export
    *Der FHIR-Dienst exportiert alle referenzierten Ressourcen, exportiert jedoch nicht die Merkmale der Gruppenressource selbst.

Daten werden in mehrere Dateien exportiert. Jede Datei enthält Ressourcen von nur einem Typ. Die Anzahl der Ressourcen in einer einzelnen Datei ist begrenzt. Die maximale Anzahl von Ressourcen basiert auf der Systemleistung. Es ist derzeit auf 5.000 festgelegt, kann sich aber ändern. Das Ergebnis ist, dass Sie möglicherweise mehrere Dateien für einen Ressourcentyp abrufen. Die Dateinamen folgen dem Format <resourceName>-<number>-<number>.ndjson. Die Reihenfolge der Dateien ist nicht garantiert, dass sie einer Sortierung der Ressourcen in der Datenbank entspricht.

Hinweis

Patient/$export und Group/[ID]/$export kann doppelte Ressourcen exportieren, wenn sich eine Ressource in mehreren Gruppen oder in einem Fächer von mehr als einer Ressource befindet.

Zusätzlich zum Überprüfen des Vorhandenseins exportierter Dateien in Ihrem Speicherkonto können Sie den $export Vorgangsstatus über die URL im Content-Location Header überprüfen, der in der FHIR-Dienstantwort zurückgegeben wird. Weitere Informationen finden Sie in der Dokumentation zur Massendatenstatusanforderung von HL7.

Exportieren Ihrer FHIR-Daten in Data Lake Storage Gen2

Derzeit unterstützt $export der FHIR-Dienst Data Lake Storage Gen2-Konten mit den folgenden Einschränkungen:

  • Data Lake Storage Gen2 bietet hierarchische Namespaces, aber es gibt keine Möglichkeit, Vorgänge auf ein bestimmtes Unterverzeichnis innerhalb eines Containers abzuzielen $export . Der FHIR-Dienst kann nur den Zielcontainer für den Export angeben, in dem ein neuer Ordner für jeden $export Vorgang erstellt wird.
  • Nachdem ein $export Vorgang abgeschlossen ist und alle Daten in einen Ordner geschrieben wurden, exportiert der FHIR-Dienst nichts mehr in diesen Ordner, da nachfolgende Exporte in denselben Container in einem neu erstellten Ordner enthalten sind.

Informationen zum Exportieren von Daten in ein Speicherkonto hinter einer Firewall finden Sie unter Konfigurieren von Einstellungen für den Export.

Einstellungen und Parameter

Headers

Für Aufträge müssen zwei erforderliche Headerparameter festgelegt $export werden. Die Werte werden gemäß der aktuellen HL7 -$export Spezifikation festgelegt.

  • Annehmen: application/fhir+json
  • Bevorzugen Sie: respond-async

Abfrageparameter

Der FHIR-Dienst unterstützt die folgenden Abfrageparameter zum Filtern exportierter Daten. Alle diese Parameter sind optional.

Query parameter (Abfrageparameter) Definiert durch die FHIR-Spezifikation? Beschreibung
_outputFormat Ja Unterstützt derzeit drei Werte, die an der FHIR-Spezifikation ausgerichtet werden sollen: application/fhir+ndjson, , application/ndjsonoder nur ndjson. Alle Exportaufträge geben Dateien zurück .ndjson , und der übergebene Wert hat keine Auswirkungen auf das Codeverhalten.
_since Ja Ermöglicht ihnen, nur Ressourcen zu exportieren, die seit dem angegebenen Zeitpunkt geändert wurden.
_type Ja Ermöglicht die Angabe, welche Ressourcentypen eingeschlossen werden sollen. Würde z. B _type=Patient . nur Patientenressourcen zurückgeben.
_typeFilter Ja Um eine feiner abgestimmte Filterung anzufordern, können Sie zusammen mit dem _type Parameter verwenden_typeFilter. Der Wert des _typeFilter Parameters ist eine durch Trennzeichen getrennte Liste von FHIR-Abfragen, die die Ergebnisse weiter einschränken.
_container Nein Gibt den Namen des Containers im konfigurierten Speicherkonto an, in das die Daten exportiert werden sollen. Wenn ein Container angegeben ist, werden die Daten in einen Ordner in diesem Container exportiert. Wenn der Container nicht angegeben ist, werden die Daten mit einem automatisch generierten Namen in einen neuen Container exportiert.
_till Nein Ermöglicht das Exportieren von Ressourcen, die bis zum angegebenen Zeitpunkt geändert wurden. Dieser Parameter gilt nur für den Export auf Systemebene. In diesem Fall, wenn historische Versionen nicht deaktiviert oder gelöscht wurden, garantiert export true Momentaufnahme Ansicht, oder mit anderen Worten, Zeitreisen.
includeAssociatedData Nein Ermöglicht ihnen das Exportieren des Verlaufs und vorläufig gelöschter Ressourcen. Dieser Filter funktioniert nicht mit dem Abfrageparameter "_typeFilter". Schließen Sie den Wert als "_history" ein, um den Verlauf/nicht die neuesten versionsierten Ressourcen zu exportieren. Schließen Sie den Wert als "_deleted" ein, um vorläufig gelöschte Ressourcen zu exportieren.

Hinweis

Nur Speicherkonten im selben Abonnement wie der FHIR-Dienst dürfen als Ziel für $export Vorgänge registriert werden.

Problembehandlung

Die folgenden Informationen helfen Ihnen beim Beheben von Problemen beim Exportieren von FHIR-Daten.

Aufträge, die in einem schlechten Zustand stecken bleiben

In einigen Situationen besteht das Potenzial, dass ein Auftrag in einem schlechten Zustand hängen bleibt, während der FHIR-Dienst versucht, Daten zu exportieren. Dies kann insbesondere auftreten, wenn die Berechtigungen des Data Lake Storage Gen2-Kontos nicht ordnungsgemäß eingerichtet wurden.

Eine Möglichkeit, den Status Ihres $export Vorgangs zu überprüfen, besteht darin, zum Speicherbrowser Ihres Speicherkontos zu wechseln und zu sehen, ob .ndjson dateien im Exportcontainer vorhanden sind. Wenn die Dateien nicht vorhanden sind und keine anderen $export Aufträge ausgeführt werden, ist es möglich, dass der aktuelle Auftrag in einem fehlerhaften Zustand hängen bleibt. In diesem Fall können Sie den $export Auftrag abbrechen, indem Sie die FHIR-Dienst-API mit einer DELETE Anforderung aufrufen. Später können Sie den $export Auftrag erneut aufschreiben und es erneut versuchen.

Weitere Informationen zum Abbrechen eines $export Vorgangs finden Sie in der Dokumentation zur Massendatenlöschanforderung von HL7.

Hinweis

Im FHIR-Dienst beträgt die Standardzeit für einen $export Vorgang im Leerlauf 10 Minuten, bevor der Dienst den Vorgang beendet und zu einem neuen Auftrag wechselt.

Nächste Schritte

In diesem Artikel haben Sie gelernt, wie Sie FHIR-Ressourcen mithilfe des $export Vorgangs exportieren. Informationen zum Einrichten und Verwenden zusätzlicher Optionen für den Export finden Sie unter:

FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.