Archiviare dati sanitari con Google Cloud CLI
Questa pagina mostra come utilizzare l'API Cloud Healthcare e Google Cloud CLI per completare le seguenti attività:
- Creare un set di dati dell'API Cloud Healthcare.
- Crea uno dei seguenti datastore all'interno del set di dati:
- Archivio Digital Imaging and Communications in Medicine (DICOM)
- Archivio Fast Healthcare Interoperability Resources (FHIR)
- Archivio Health Level Seven International Version 2 (HL7v2)
- Memorizza dati DICOM, FHIR e HL7v2 e visualizza i metadati DICOM.
Se ti interessa lavorare solo con un tipo di datastore, puoi passare direttamente a quella sezione della guida rapida dopo aver completato i passaggi descritti in Prima di iniziare e Crea un set di dati.
Prima di iniziare
- Accedi al tuo account Google Cloud . Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Crea o seleziona un Google Cloud progetto.
Ruoli richiesti per selezionare o creare un progetto
- Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto per il quale ti è stato concesso un ruolo.
-
Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto
(
roles/resourcemanager.projectCreator), che contiene l'autorizzazioneresourcemanager.projects.create. Scopri come concedere i ruoli.
-
Creare un progetto Google Cloud :
gcloud projects create PROJECT_ID
Sostituisci
PROJECT_IDcon un nome per il progetto Google Cloud che stai creando. -
Seleziona il progetto Google Cloud che hai creato:
gcloud config set project PROJECT_ID
Sostituisci
PROJECT_IDcon il nome del progetto Google Cloud .
-
Verifica che la fatturazione sia abilitata per il tuo progetto Google Cloud .
Abilita l'API Cloud Healthcare:
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo dei servizi (
roles/serviceusage.serviceUsageAdmin), che include l'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.gcloud services enable healthcare.googleapis.com
-
Concedi ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM:
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Sostituisci quanto segue:
PROJECT_ID: il tuo ID progetto.USER_IDENTIFIER: l'identificatore del tuo account utente . Ad esempio:myemail@example.com.ROLE: il ruolo IAM che concedi al tuo account utente.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Crea o seleziona un Google Cloud progetto.
Ruoli richiesti per selezionare o creare un progetto
- Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto per il quale ti è stato concesso un ruolo.
-
Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto
(
roles/resourcemanager.projectCreator), che contiene l'autorizzazioneresourcemanager.projects.create. Scopri come concedere i ruoli.
-
Creare un progetto Google Cloud :
gcloud projects create PROJECT_ID
Sostituisci
PROJECT_IDcon un nome per il progetto Google Cloud che stai creando. -
Seleziona il progetto Google Cloud che hai creato:
gcloud config set project PROJECT_ID
Sostituisci
PROJECT_IDcon il nome del progetto Google Cloud .
-
Verifica che la fatturazione sia abilitata per il tuo progetto Google Cloud .
Abilita l'API Cloud Healthcare:
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo dei servizi (
roles/serviceusage.serviceUsageAdmin), che include l'autorizzazioneserviceusage.services.enable. Scopri come concedere i ruoli.gcloud services enable healthcare.googleapis.com
-
Concedi ruoli al tuo account utente. Esegui il seguente comando una volta per ciascuno dei seguenti ruoli IAM:
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmingcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Sostituisci quanto segue:
PROJECT_ID: il tuo ID progetto.USER_IDENTIFIER: l'identificatore del tuo account utente . Ad esempio:myemail@example.com.ROLE: il ruolo IAM che concedi al tuo account utente.
Crea un set di dati
I set di dati contengono datastore, i quali a loro volta contengono dati sanitari. Per utilizzare l'API Cloud Healthcare, devi creare almeno un set di dati.
L'esempio seguente mostra come creare un set di dati denominato my-dataset nella regione us-central1. Utilizzerai il set di dati in tutta questa guida rapida per creare archivi DICOM, FHIR e HL7v2.
gcloud
Crea un set di dati utilizzando il
comando gcloud healthcare datasets create.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare datasets create my-dataset \ --project=PROJECT_ID \ --location=us-central1
Windows (PowerShell)
gcloud healthcare datasets create my-dataset ` --project=PROJECT_ID ` --location=us-central1
Windows (cmd.exe)
gcloud healthcare datasets create my-dataset ^ --project=PROJECT_ID ^ --location=us-central1
Dovresti ricevere una risposta simile alla seguente:
Risposta
Create request issued for: [my-dataset] Created dataset [my-dataset].
Per completare questa guida rapida, scegli una delle seguenti sezioni:
Archiviare e visualizzare un'istanza DICOM
Questa sezione mostra come completare le seguenti attività:
- Crea un archivio DICOM.
- Importa un'istanza DICOM da un bucket Cloud Storage pubblico nell'archivio DICOM.
- Visualizza i metadati dell'istanza DICOM.
L'API Cloud Healthcare implementa lo standard DICOMweb per archiviare e accedere ai dati di diagnostica per immagini.
Crea un archivio DICOM
Gli archivi DICOM si trovano all'interno di set di dati e contengono istanze DICOM. L'esempio
seguente mostra come creare un archivio DICOM denominato my-dicom-store.
gcloud
Crea
un archivio DICOM utilizzando il comando gcloud healthcare dicom-stores create.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare dicom-stores create my-dicom-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1
Windows (PowerShell)
gcloud healthcare dicom-stores create my-dicom-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1
Windows (cmd.exe)
gcloud healthcare dicom-stores create my-dicom-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1
Dovresti ricevere una risposta simile alla seguente:
Risposta
Created dicomStore [my-dicom-store].
Importa un'istanza DICOM
I dati DICOM di esempio sono disponibili nel bucket Cloud Storage gs://gcs-public-data--healthcare-nih-chest-xray.
gcloud
Importa l'istanza gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm utilizzando il comando
gcloud healthcare dicom-stores import.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare dicom-stores import gcs my-dicom-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1 \ --gcs-uri=gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm
Windows (PowerShell)
gcloud healthcare dicom-stores import gcs my-dicom-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1 ` --gcs-uri=gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm
Windows (cmd.exe)
gcloud healthcare dicom-stores import gcs my-dicom-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1 ^ --gcs-uri=gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm
In questo output:
PROJECT_ID,us-central1,my-dataset,my-dicom-store: i valori che hai fornito durante l'esecuzione del comandoOPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito dall'API Cloud Healthcare quando importi un'istanza DICOM. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. L'importazione di un'istanza DICOM è in genere un'operazione rapida, quindi l'output viene restituito quasi immediatamente.
Risposta
Request issued for: [my-dicom-store] Waiting for operation [projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store
Visualizzare i metadati delle istanze DICOM
gcloud CLI non supporta le transazioni DICOMweb, come la visualizzazione o il recupero di istanze. In alternativa, puoi utilizzare lo strumento a riga di comando DICOMweb di Google, che viene eseguito utilizzando Python. Per informazioni su come configurare Python su Google Cloud, vedi Configurazione di un ambiente di sviluppo Python.
Completa i seguenti passaggi per visualizzare i metadati dell'istanza DICOM utilizzando lo strumento a riga di comando DICOMweb:
Installa lo strumento a riga di comando DICOMweb utilizzando Pip:
pip install https://github.com/GoogleCloudPlatform/healthcare-api-dicomweb-cli/archive/v1.0.zipAggiorna la variabile
PATHin modo da includere la posizione di installazione didcmweb:export PATH="$HOME/bin:$PATH"Visualizza i metadati dell'istanza DICOM:
dcmweb \ https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb \ search instances
Sostituisci
PROJECT_IDcon l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare.L'output è il seguente. Consulta Attributi del modulo comune SOP per i campi nell'output.
[ { "00080016": { "Value": [ "1.2.840.10008.5.1.4.1.1.7" ], "vr": "UI" }, "00080018": { "Value": [ "1.3.6.1.4.1.11129.5.5.153751009835107614666834563294684339746480" ], "vr": "UI" }, "00080060": { "Value": [ "DX" ], "vr": "CS" }, "00100020": { "Value": [ "1" ], "vr": "LO" }, "00100040": { "Value": [ "M" ], "vr": "CS" }, "0020000D": { "Value": [ "1.3.6.1.4.1.11129.5.5.111396399361969898205364400549799252857604" ], "vr": "UI" }, "0020000E": { "Value": [ "1.3.6.1.4.1.11129.5.5.195628213694300498946760767481291263511724" ], "vr": "UI" }, "00280010": { "Value": [ 1024 ], "vr": "US" }, "00280011": { "Value": [ 1024 ], "vr": "US" }, "00280100": { "Value": [ 8 ], "vr": "US" } } ]
Dopo aver importato l'istanza DICOM nell'API Cloud Healthcare e visualizzato i relativi metadati, continua a liberare spazio per evitare che al tuo account Google Cloud vengano addebitati costi per le risorse utilizzate in questa pagina.
Per informazioni sui passaggi successivi, ad esempio come cercare o recuperare immagini DICOM utilizzando lo standard DICOMweb nell'API Cloud Healthcare, consulta la sezione Passaggi successivi.
Archiviazione di risorse FHIR
Questa sezione mostra come completare le seguenti attività:
- Crea un archivio FHIR.
- Importa le risorse FHIR da un bucket Cloud Storage pubblico nel datastore FHIR.
Crea un archivio FHIR
Gli archivi FHIR si trovano all'interno di set di dati e contengono risorse FHIR. L'esempio
riportato di seguito mostra come creare un archivio FHIR denominato my-fhir-store che utilizza la
versione R4 di FHIR.
gcloud
Crea
un archivio FHIR utilizzando il comando gcloud healthcare fhir-stores create.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare fhir-stores create my-fhir-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1 \ --version=R4
Windows (PowerShell)
gcloud healthcare fhir-stores create my-fhir-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1 ` --version=R4
Windows (cmd.exe)
gcloud healthcare fhir-stores create my-fhir-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1 ^ --version=R4
Dovresti ricevere una risposta simile alla seguente:
Risposta
Created fhirStore [my-fhir-store].
Importa risorse FHIR
I dati FHIR di esempio sono disponibili nel bucket Cloud Storage gs://gcp-public-data--synthea-fhir-data-10-patients.
gcloud
Importa le risorse FHIR in gs://gcp-public-data--synthea-fhir-data-10-patients
utilizzando il comando
gcloud healthcare fhir-stores import.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare fhir-stores import gcs my-fhir-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1 \ --gcs-uri=gs://gcp-public-data--synthea-fhir-data-10-patients/fhir_r4_ndjson/*.ndjson \ --content-structure=RESOURCE
Windows (PowerShell)
gcloud healthcare fhir-stores import gcs my-fhir-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1 ` --gcs-uri=gs://gcp-public-data--synthea-fhir-data-10-patients/fhir_r4_ndjson/*.ndjson ` --content-structure=RESOURCE
Windows (cmd.exe)
gcloud healthcare fhir-stores import gcs my-fhir-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1 ^ --gcs-uri=gs://gcp-public-data--synthea-fhir-data-10-patients/fhir_r4_ndjson/*.ndjson ^ --content-structure=RESOURCE
In questo output:
PROJECT_ID,us-central1,my-dataset,my-fhir-store: i valori che hai fornito durante l'esecuzione del comandoOPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito dall'API Cloud Healthcare quando importi una risorsa FHIR. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. L'importazione delle risorse FHIR richiede circa 1-2 minuti.R4: la versione dell'archivio FHIR
Risposta
Request issued for: [my-fhir-store] Waiting for operation [projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/fhirStores/my-fhir-store version: R4
Dopo aver importato le risorse FHIR nell'API Cloud Healthcare, continua con la pulizia per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina.
Per informazioni sui passaggi successivi, ad esempio come visualizzare e cercare le risorse FHIR, consulta la sezione Passaggi successivi.
Memorizzare un messaggio HL7v2
Questa sezione mostra come completare le seguenti attività:
- Crea un archivio HL7v2.
- Importa un messaggio HL7v2 da un bucket Cloud Storage pubblico nell'archivio HL7v2.
L'implementazione di HL7v2 nell'API Cloud Healthcare è in linea con lo standard HL7v2.
Crea un archivio HL7v2
Gli archivi HL7v2 esistono all'interno di set di dati e contengono i messaggi HL7v2. L'esempio
riportato di seguito mostra come creare un archivio HL7v2 denominato my-hl7v2-store.
gcloud
Crea un archivio HL7v2 utilizzando il comando gcloud healthcare hl7v2-stores create.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare hl7v2-stores create my-hl7v2-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1
Windows (PowerShell)
gcloud healthcare hl7v2-stores create my-hl7v2-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1
Windows (cmd.exe)
gcloud healthcare hl7v2-stores create my-hl7v2-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1
Dovresti ricevere una risposta simile alla seguente:
Risposta
Created hl7v2Store [my-hl7v2-store].
Importa i messaggi HL7v2
gcloud
Importa il messaggio HL7v2 gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson utilizzando il comando gcloud healthcare hl7v2-stores import.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare hl7v2-stores import gcs my-hl7v2-store \ --project=PROJECT_ID \ --dataset=my-dataset \ --location=us-central1 \ --gcs-uri=gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson
Windows (PowerShell)
gcloud healthcare hl7v2-stores import gcs my-hl7v2-store ` --project=PROJECT_ID ` --dataset=my-dataset ` --location=us-central1 ` --gcs-uri=gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson
Windows (cmd.exe)
gcloud healthcare hl7v2-stores import gcs my-hl7v2-store ^ --project=PROJECT_ID ^ --dataset=my-dataset ^ --location=us-central1 ^ --gcs-uri=gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson
In questo output:
PROJECT_ID,us-central1,my-dataset,my-hl7v2-store: i valori che hai fornito durante l'esecuzione del comandoOPERATION_ID: un identificatore per l'operazione a lunga esecuzione fornito dall'API Cloud Healthcare quando importi un messaggio HL7v2. Le operazioni a lunga esecuzione vengono restituite quando le chiamate ai metodi potrebbero richiedere molto tempo per essere completate. L'importazione di un messaggio HL7v2 è in genere un'operazione rapida, quindi l'output viene restituito quasi immediatamente.
Risposta
Request issued for: [my-hl7v2-store] Waiting for operation [projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/operations/OPERATION_ID] to complete...done. name: projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/hl7V2Stores/my-hl7v2-store
Dopo aver importato il messaggio HL7v2 nell'API Cloud Healthcare, continua a liberare spazio per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina.
Per informazioni sui passaggi successivi, ad esempio come visualizzare i contenuti di un messaggio HL7v2, consulta la sezione Passaggi successivi.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, elimina il progetto Google Cloud con le risorse.
Se hai creato un nuovo progetto per questa guida rapida, segui i passaggi descritti in Elimina il progetto. In caso contrario, segui i passaggi descritti in Eliminare il set di dati.
(Facoltativo) Revoca le credenziali da gcloud CLI.
gcloud auth revoke
Elimina il progetto
Elimina un progetto Google Cloud :
gcloud projects delete PROJECT_ID
Eliminazione del set di dati
Se non hai più bisogno del set di dati creato in questa guida di avvio rapido, puoi eliminarlo. L'eliminazione di un set di dati è definitiva ed elimina permanentemente tutti gli archivi FHIR, HL7v2 o DICOM al suo interno.
gcloud
Elimina un set di dati utilizzando il
comando gcloud healthcare datasets delete.
Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:
PROJECT_ID: l'ID del progetto Google Cloud che hai creato o selezionato in Prima di iniziare
Esegui questo comando:
Linux, macOS o Cloud Shell
gcloud healthcare datasets delete my-dataset \ --project=PROJECT_ID \ --location=us-central1
Windows (PowerShell)
gcloud healthcare datasets delete my-dataset ` --project=PROJECT_ID ` --location=us-central1
Windows (cmd.exe)
gcloud healthcare datasets delete my-dataset ^ --project=PROJECT_ID ^ --location=us-central1
Risposta
You are about to delete dataset [my-dataset] Do you want to continue (Y/n)? Y Deleted dataset [my-dataset].
Com'è andata?
Passaggi successivi
Consulta le seguenti sezioni per informazioni generali sull'API Cloud Healthcare e su come eseguire le attività di questa guida rapida utilizzando un'altra interfaccia:
- Leggi una panoramica dei concetti dell'API Cloud Healthcare
- Memorizzare dati sanitari con
curlo PowerShell - Memorizzare i dati sanitari con le librerie client
- Archiviare dati sanitari con gcloud CLI
DICOM
- Creazione e gestione degli archivi DICOM
- Connettere un PACS all'API Cloud Healthcare
- Utilizzare lo standard DICOMweb
- Importare ed esportare dati DICOM utilizzando Cloud Storage
Leggi la dichiarazione di conformità DICOM per informazioni su come l'API Cloud Healthcare implementa lo standard DICOMweb.
FHIR
- Creare e gestire gli archivi FHIR
- Creare e gestire risorse FHIR
- Importare ed esportare dati FHIR utilizzando Cloud Storage
Leggi la dichiarazione di conformità FHIR per informazioni su come l'API Cloud Healthcare implementa lo standard FHIR.