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 $export
auszufü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. Hinweis: Sie müssen den Container im Data Lake Storage Gen2-Konto erstellen, bevor Sie die Anforderung angeben {{containerName}}
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. 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 einem Ordner geschrieben wurden, exportiert der FHIR-Dienst nichts mehr in diesen Ordner. Nachfolgende Exporte in denselben Container befinden sich in einem neu erstellten Ordner.
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.
- Akzeptieren:
application/fhir+json
- Bevorzugen:
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/ndjson oder 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 | Hiermit können Sie angeben, welche Ressourcentypen einbezogen 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 |
No | 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 in einen neuen Container mit einem automatisch generierten Namen exportiert. |
_till |
No | Ermöglicht ihnen das Exportieren von Ressourcen, die bis zum angegebenen Zeitpunkt geändert wurden. Dieser Parameter gilt nur für den Export auf Systemebene. Wenn historische Versionen in diesem Fall nicht deaktiviert oder gelöscht wurden, garantiert der Export eine echte Momentaufnahmeansicht. |
includeAssociatedData |
No | Ermöglicht ihnen das Exportieren des Verlaufs und vorläufig gelöschter Ressourcen. Dieser Filter funktioniert nicht mit dem Abfrageparameter "_typeFilter". Fügen Sie den Wert als "_history" zum Exportieren des Verlaufs/nicht der neuesten versionsgesteuerten Ressourcen ein. 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 eine DELETE-Anforderung an die URL senden, die im Header "Content-Location" angegeben ist, um die Anforderung abzubrechen.
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 anderer Optionen für den Export finden Sie unter:
Hinweis
FHIR® ist eine eingetragene Marke von HL7 und wird mit Genehmigung von HL7 verwendet.