1. Einführung

Zuletzt aktualisiert: 16.05.2020
In diesem Codelab wird ein Muster für die Datenaufnahme gezeigt, mit dem Gesundheitsdaten im FHIR R4-Format (reguläre Ressourcen) mit den Cloud Healthcare FHIR-APIs in BigQuery aufgenommen werden. Es wurden realistische Gesundheitsdaten für Tests generiert und im Google Cloud Storage-Bucket gs://hcls_testing_data_fhir_10_patients/) für Sie bereitgestellt.
In diesem Codelab lernen Sie Folgendes:
- FHIR R4-Ressourcen aus GCS in den Cloud Healthcare FHIR-Speicher importieren
- FHIR-Daten aus dem FHIR-Speicher in ein Dataset in BigQuery exportieren
Was benötige ich, um diese Demo auszuführen?
- Sie benötigen Zugriff auf ein GCP-Projekt.
- Sie müssen dem GCP-Projekt die Rolle „Inhaber“ zugewiesen haben.
- FHIR R4-Ressourcen im NDJSON-Format (content-structure=RESOURCE)
Wenn Sie kein GCP-Projekt haben, erstellen Sie ein neues.
FHIR R4-Ressourcen im NDJSON-Format wurden an den folgenden Speicherorten in den GCS-Bucket vorab geladen:
- gs://hcls_testing_data_fhir_10_patients/fhir_r4_ndjson/ – Reguläre Ressourcen
Alle oben genannten Ressourcen haben das Dateiformat JSON mit Zeilenumbrüchen als Trennzeichen (NDJSON), aber eine unterschiedliche Inhaltsstruktur:
- Reguläre Ressourcen im NDJSON-Format: Jede Zeile in der Datei enthält eine FHIR-Kernressource im JSON-Format (z. B. Patient, Observation usw.). Jede NDJSON-Datei enthält FHIR-Ressourcen desselben Ressourcentyps. Die Datei „Patient.ndjson“ enthält beispielsweise eine oder mehrere FHIR-Ressourcen vom Typ „resourceType“ = „ Patient“ und die Datei „Observation.ndjson“ eine oder mehrere FHIR-Ressourcen vom Typ „resourceType“ = „ Observation“.
Wenn Sie ein neues Dataset benötigen, können Sie es jederzeit mit SyntheaTM generieren. Laden Sie es dann in GCS hoch, anstatt den im Codelab bereitgestellten Bucket zu verwenden.
2. Projekt einrichten
Führen Sie die folgenden Schritte aus, um die Healthcare API zu aktivieren und die erforderlichen Berechtigungen zu erteilen:
Shell-Variablen für Ihre Umgebung initialisieren
Wie Sie die PROJECT_NUMBER und PROJECT_ID herausfinden, erfahren Sie unter Projekte identifizieren.
<!-- CODELAB: Initialize shell variables --> export PROJECT_ID=<PROJECT_ID> export PROJECT_NUMBER=<PROJECT_NUMBER> export SRC_BUCKET_NAME=hcls_testing_data_fhir_10_patients export BUCKET_NAME=<BUCKET_NAME> export DATASET_ID=<DATASET_ID> export FHIR_STORE=<FHIR_STORE> export BQ_DATASET=<BQ_DATASET>
Healthcare API aktivieren
Mit den folgenden Schritten aktivieren Sie Healthcare APIs in Ihrem GCP-Projekt. Dadurch wird dem Projekt das Dienstkonto der Healthcare API hinzugefügt.
- Rufen Sie die API-Bibliothek der GCP Console auf.
- Wählen Sie Ihr Projekt aus der Projektliste aus.
- Wählen Sie in der API-Bibliothek die API aus, die Sie aktivieren möchten. Wenn Sie Hilfe bei der Suche nach der API benötigen, verwenden Sie das Suchfeld und die Filter.
- Klicken Sie auf der API-Seite auf AKTIVIEREN.
Zugriff auf das synthetische Dataset erhalten
- Senden Sie von der E-Mail-Adresse, mit der Sie sich in der Cloud Console anmelden, eine E-Mail an hcls-solutions-external+subscribe@google.com, um eine Beitrittsanfrage zu senden.
- Sie erhalten eine E‑Mail mit einer Anleitung, wie Sie die Aktion bestätigen können.
- Verwenden Sie die Option, um auf die E‑Mail zu antworten und der Gruppe beizutreten.
- Klicken Sie NICHT auf die Schaltfläche
. Es funktioniert nicht. - Sobald Sie die Bestätigungs-E-Mail erhalten haben, können Sie mit dem nächsten Schritt im Codelab fortfahren.
Google Cloud Storage-Bucket in Ihrem GCP-Projekt erstellen
gsutil mb gs://$BUCKET_NAME
Synthetische Daten in Ihr GCP-Projekt kopieren
gsutil -m cp gs://$SRC_BUCKET_NAME/fhir_r4_ndjson/**.ndjson \ gs://$BUCKET_NAME/fhir_r4_ndjson/
Berechtigungen erteilen
Bevor Sie FHIR-Ressourcen aus Cloud Storage importieren und nach BigQuery exportieren, müssen Sie dem Dienstkonto Cloud Healthcare Service Agent zusätzliche Berechtigungen erteilen. Weitere Informationen finden Sie unter Cloud Storage-Berechtigungen für FHIR-Speicher und BigQuery-Berechtigungen für FHIR-Speicher.
Storage-Administratorberechtigung gewähren
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:service-$PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/storage.objectViewer
BigQuery-Administratorberechtigungen erteilen
gcloud projects add-iam-policy-binding $PROJECT_ID \ --member=serviceAccount:service-$PROJECT_NUMBER@gcp-sa-healthcare.iam.gserviceaccount.com \ --role=roles/bigquery.admin
3. Umgebung einrichten
Führen Sie die folgenden Schritte aus, um Daten aus NDJSON-Dateien in ein Gesundheitsdatenset in BigQuery aufzunehmen. Verwenden Sie dazu die Cloud Healthcare FHIR APIs:
Healthcare-Dataset und FHIR-Speicher erstellen
Healthcare-Dataset mit Cloud Healthcare APIs erstellen
gcloud beta healthcare datasets create $DATASET_ID --location=us-central1
FHIR-Speicher im Dataset mit Cloud Healthcare APIs erstellen
gcloud beta healthcare fhir-stores create $FHIR_STORE \ --dataset=$DATASET_ID --location=us-central1 --version=r4
4. Daten in FHIR-Speicher importieren
Testdaten aus Google Cloud Storage in den FHIR-Speicher importieren
Wir verwenden vorab geladene Dateien aus dem GCS-Bucket. Diese Dateien enthalten reguläre FHIR R4-Ressourcen im NDJSON-Format. Als Antwort erhalten Sie OPERATION_NUMBER, die im Validierungsschritt verwendet werden kann.
Reguläre Ressourcen aus dem GCS-Bucket in Ihrem GCP-Projekt importieren
gcloud beta healthcare fhir-stores import gcs $FHIR_STORE \ --dataset=$DATASET_ID --async \ --gcs-uri=gs://$BUCKET_NAME/fhir_r4_ndjson/**.ndjson \ --location=us-central1 --content-structure=RESOURCE
Validieren
Der Validierungsvorgang wurde abgeschlossen. Es kann einige Minuten dauern, bis der Vorgang abgeschlossen ist. Möglicherweise müssen Sie diesen Befehl also einige Male mit einer gewissen Verzögerung wiederholen.
gcloud beta healthcare operations describe OPERATION_NUMBER \ --dataset=$DATASET_ID --location=us-central1
5. Daten aus dem FHIR-Speicher nach BigQuery exportieren
BigQuery-Dataset erstellen
bq mk --location=us --dataset $PROJECT_ID:$BQ_DATASET
Gesundheitsdaten aus dem FHIR-Speicher in ein BigQuery-Dataset exportieren
gcloud beta healthcare fhir-stores export bq $FHIR_STORE \ --dataset=$DATASET_ID --location=us-central1 --async \ --bq-dataset=bq://$PROJECT_ID.$BQ_DATASET \ --schema-type=analytics
Als Antwort erhalten Sie OPERATION_NUMBER, die im Validierungsschritt verwendet werden kann.
Validieren
Validierungsvorgang erfolgreich abgeschlossen
gcloud beta healthcare operations describe OPERATION_NUMBER \ --dataset=$DATASET_ID --location=us-central1
Prüfen, ob das BigQuery-Dataset alle 16 Tabellen enthält
bq ls $PROJECT_ID:$BQ_DATASET
6. Bereinigen
Damit Ihrem Google Cloud-Konto die in dieser Anleitung verwendeten Ressourcen nicht in Rechnung gestellt werden, können Sie die in der GCP erstellten Ressourcen bereinigen, damit sie kein Kontingent verbrauchen und Ihnen nicht später in Rechnung gestellt werden. In den folgenden Abschnitten wird erläutert, wie Sie diese Ressourcen löschen oder deaktivieren.
Projekt löschen
Am einfachsten vermeiden Sie weitere Kosten durch Löschen des für die Anleitung erstellten Projekts.
So löschen Sie das Projekt:
- Rufen Sie in der GCP Console die Seite Projekte auf. ZUR SEITE „PROJEKTE“
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.
Wenn Sie das Projekt beibehalten möchten, können Sie das Cloud Healthcare-Dataset und das BigQuery-Dataset anhand der folgenden Anleitung löschen.
Dataset der Cloud Healthcare API löschen
Folgen Sie dieser Anleitung, um ein Healthcare API-Dataset mit der GCP Console und der gcloud CLI zu löschen.
Schnellbefehl für die Befehlszeile:
gcloud beta healthcare datasets delete $DATASET_ID --location=us-central1
BigQuery-Dataset löschen
Folgen Sie der Anleitung, um BigQuery-Datasets über verschiedene Schnittstellen zu löschen.
Schnellbefehl für die Befehlszeile:
bq rm -r -f $PROJECT_ID:$DATASET_ID
7. Glückwunsch
Herzlichen Glückwunsch! Sie haben das Codelab zum Aufnehmen von Gesundheitsdaten in BigQuery mit Cloud Healthcare APIs erfolgreich abgeschlossen.
Sie haben FHIR R4-kompatible synthetische Daten aus Google Cloud Storage in die Cloud Healthcare FHIR-APIs importiert.
Sie haben Daten aus den Cloud Healthcare FHIR APIs nach BigQuery exportiert.
Sie kennen jetzt die wichtigsten Schritte, die erforderlich sind, um mit der Healthcare-Datenanalyse mit BigQuery auf der Google Cloud Platform zu beginnen.