Stocker des données de santé avec Google Cloud CLI
Cette page explique comment utiliser l'API Cloud Healthcare et Google Cloud CLI pour effectuer les tâches suivantes :
- créer un ensemble de données pour l'API Cloud Healthcare ;
- Créer l'un des datastores suivants dans l'ensemble de données :
- Magasin DICOM (Digital Imaging and Communications in Medicine)
- Datastore FHIR (Fast Healthcare Interoperability Resources)
- Datastore HL7v2 (Health Level Seven International Version 2)
- Stockez les données DICOM, FHIR et HL7v2, et affichez les métadonnées DICOM.
Si vous souhaitez travailler uniquement avec un type de data store, vous pouvez passer directement à cette section du guide de démarrage rapide après avoir suivi les étapes des sections Avant de commencer et Créer un ensemble de données.
Avant de commencer
- Connectez-vous à votre compte Google Cloud. Si vous débutez sur Google Cloud, créez un compte pour évaluer les performances de nos produits en conditions réelles. Les nouveaux clients bénéficient également de 300 $ de crédits gratuits pour exécuter, tester et déployer des charges de travail.
- Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Créez ou sélectionnez un projet Google Cloud.
-
Créez un projet Google Cloud :
gcloud projects create PROJECT_ID
Remplacez
PROJECT_ID
par le nom du projet Google Cloud que vous créez. -
Sélectionnez le projet Google Cloud que vous avez créé :
gcloud config set project PROJECT_ID
Remplacez
PROJECT_ID
par le nom de votre projet Google Cloud.
-
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activer Cloud Healthcare API :
gcloud services enable healthcare.googleapis.com
-
Attribuez des rôles à votre compte Google. Exécutez la commande suivante une fois pour chacun des rôles IAM suivants :
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
- en remplaçant
PROJECT_ID
par l'ID de votre projet : - Remplacez
EMAIL_ADDRESS
par votre adresse e-mail. - Remplacez
ROLE
par chaque rôle individuel.
- en remplaçant
- Installez Google Cloud CLI.
-
Pour initialiser gcloudCLI, exécutez la commande suivante :
gcloud init
-
Créez ou sélectionnez un projet Google Cloud.
-
Créez un projet Google Cloud :
gcloud projects create PROJECT_ID
Remplacez
PROJECT_ID
par le nom du projet Google Cloud que vous créez. -
Sélectionnez le projet Google Cloud que vous avez créé :
gcloud config set project PROJECT_ID
Remplacez
PROJECT_ID
par le nom de votre projet Google Cloud.
-
-
Vérifiez que la facturation est activée pour votre projet Google Cloud.
-
Activer Cloud Healthcare API :
gcloud services enable healthcare.googleapis.com
-
Attribuez des rôles à votre compte Google. Exécutez la commande suivante une fois pour chacun des rôles IAM suivants :
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:EMAIL_ADDRESS" --role=ROLE
- en remplaçant
PROJECT_ID
par l'ID de votre projet : - Remplacez
EMAIL_ADDRESS
par votre adresse e-mail. - Remplacez
ROLE
par chaque rôle individuel.
- en remplaçant
Créer un ensemble de données
Les ensembles de données contiennent des datastores. Les datastores contiennent des données de santé. Pour utiliser l'API Cloud Healthcare, vous devez créer au moins un ensemble de données.
L'exemple suivant montre comment créer un ensemble de données nommé my-dataset
dans la région us-central1
. Tout au long de ce guide de démarrage rapide, vous allez utiliser l'ensemble de données pour créer des magasins DICOM, FHIR et HL7v2.
gcloud
Créez un ensemble de données à l'aide de la commande gcloud healthcare datasets create
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Vous devriez obtenir un résultat semblable à celui-ci :
Réponse
Create request issued for: [my-dataset] Created dataset [my-dataset].
Pour suivre ce guide de démarrage rapide, choisissez l'une des sections suivantes :
Stocker et afficher une instance DICOM
Ce document explique comment effectuer les tâches suivantes :
- Créer un magasin DICOM.
- importer une instance DICOM à partir d'un bucket Cloud Storage public dans le magasin DICOM ;
- Afficher les métadonnées de l'instance DICOM.
L'API Cloud Healthcare met en œuvre la norme DICOMweb pour stocker et accéder aux données d'imagerie médicale.
Créer un datastore DICOM
Les magasins DICOM existent à l'intérieur des ensembles de données et contiennent des instances DICOM. L'exemple suivant montre comment créer un magasin DICOM nommé my-dicom-store
.
gcloud
Créez un magasin DICOM à l'aide de la commande gcloud healthcare dicom-stores create
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Vous devriez obtenir un résultat semblable à celui-ci :
Réponse
Created dicomStore [my-dicom-store].
Importer une instance DICOM
Des exemples de données DICOM sont disponibles dans le bucket Cloud Storage gs://gcs-public-data--healthcare-nih-chest-xray
.
gcloud
Importez l'instance gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm
à l'aide de la commande gcloud healthcare dicom-stores import
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Dans ce résultat :
PROJECT_ID
,us-central1
,my-dataset
,my-dicom-store
: valeurs que vous avez fournies lors de l'exécution de la commandeOPERATION_ID
: identifiant de l'opération de longue durée fourni par l'API Cloud Healthcare lorsque vous importez une instance DICOM. Les opérations de longue durée sont renvoyées lorsque les appels de méthode peuvent prendre beaucoup de temps. L'importation d'une instance DICOM est généralement une opération rapide, de sorte que la sortie est renvoyée presque immédiatement.
Réponse
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
Afficher les métadonnées d'instance DICOM
La gcloud CLI ne prend pas en charge les transactions DICOMweb, telles que l'affichage ou la récupération d'instances. À la place, vous pouvez utiliser l'outil de ligne de commande DICOMweb de Google, qui s'exécute à l'aide de Python. Pour en savoir plus sur la configuration de Python sur Google Cloud, consultez la page Configurer un environnement de développement Python.
Procédez comme suit pour afficher les métadonnées de l'instance DICOM à l'aide de l'outil de ligne de commande DICOMweb:
Installez l'outil de ligne de commande DICOMweb à l'aide de Pip:
pip install https://github.com/GoogleCloudPlatform/healthcare-api-dicomweb-cli/archive/v1.0.zip
Mettez à jour la variable
PATH
afin d'inclure l'emplacement d'installation dedcmweb
:export PATH="$HOME/bin:$PATH"
Affichez les métadonnées de l'instance DICOM :
dcmweb \ https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb \ search instances
Remplacez
PROJECT_ID
par l'ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer.Le résultat est le suivant. Consultez la section Attributs du module commun SOP pour les champs de sortie.
[ { "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" } } ]
Après avoir importé l'instance DICOM dans l'API Cloud Healthcare et affiché ses métadonnées, passez à la section Nettoyage pour éviter que des frais ne soient facturés sur votre compte Google Cloud pour les ressources utilisées dans cette page.
Pour plus d'informations sur les étapes suivantes, telles que la recherche ou la récupération d'images DICOM à l'aide du standard DICOMweb dans l'API Cloud Healthcare, consultez la section Étapes suivantes.
Stocker des ressources FHIR
Ce document explique comment effectuer les tâches suivantes :
- Créez un magasin FHIR.
- Importez des ressources FHIR depuis un bucket Cloud Storage public dans le magasin FHIR.
Créer un datastore FHIR
Les magasins FHIR existent à l'intérieur des ensembles de données et contiennent des ressources FHIR. L'exemple suivant montre comment créer un magasin FHIR nommé my-fhir-store
qui utilise la version FHIR R4.
gcloud
Créez un magasin FHIR à l'aide de la commande gcloud healthcare fhir-stores create
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Vous devriez obtenir un résultat semblable à celui-ci :
Réponse
Created fhirStore [my-fhir-store].
Importer des ressources FHIR
Des exemples de données FHIR sont disponibles dans le bucket Cloud Storage gs://gcp-public-data--synthea-fhir-data-10-patients
.
gcloud
Importez les ressources FHIR dans gs://gcp-public-data--synthea-fhir-data-10-patients
à l'aide de la commande gcloud healthcare fhir-stores import
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Dans ce résultat :
PROJECT_ID
,us-central1
,my-dataset
,my-fhir-store
: valeurs que vous avez fournies lors de l'exécution de la commandeOPERATION_ID
: identifiant de l'opération de longue durée fourni par l'API Cloud Healthcare lorsque vous importez une ressource FHIR. Les opérations de longue durée sont renvoyées lorsque les appels de méthode peuvent prendre beaucoup de temps. L'importation des ressources FHIR prend environ une à deux minutes.R4
: version du magasin FHIR
Réponse
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
Après avoir importé les ressources FHIR dans l'API Cloud Healthcare, passez à l'étape Nettoyage pour éviter que des frais ne soient facturés sur votre compte Google Cloud pour les ressources utilisées dans cette page.
Pour en savoir plus sur les étapes suivantes, telles que l'affichage et la recherche de ressources FHIR, consultez la section Étapes suivantes.
Stocker un message HL7v2
Ce document explique comment effectuer les tâches suivantes :
- Créer un magasin HL7v2.
- Importez un message HL7v2 à partir d'un bucket Cloud Storage public dans le magasin HL7v2.
L'implémentation de HL7v2 dans l'API Cloud Healthcare est conforme à la norme HL7v2.
Créer un datastore HL7v2
Les datastores HL7v2 existent au sein des ensembles de données et contiennent des messages HL7v2. L'exemple suivant montre comment créer un magasin HL7v2 nommé my-hl7v2-store
.
gcloud
Créez un magasin HL7v2 à l'aide de la commande gcloud healthcare hl7v2-stores create
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Vous devriez obtenir un résultat semblable à celui-ci :
Réponse
Created hl7v2Store [my-hl7v2-store].
Importer des messages HL7v2
gcloud
Importez le message HL7v2 gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson
à l'aide de la commande gcloud healthcare hl7v2-stores import
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Dans ce résultat :
PROJECT_ID
,us-central1
,my-dataset
,my-hl7v2-store
: valeurs que vous avez fournies lors de l'exécution de la commandeOPERATION_ID
: identifiant de l'opération de longue durée fourni par l'API Cloud Healthcare lorsque vous importez un message HL7v2. Les opérations de longue durée sont renvoyées lorsque les appels de méthode peuvent prendre beaucoup de temps. L'importation d'un message HL7v2 est généralement une opération rapide, de sorte que la sortie est renvoyée presque immédiatement.
Réponse
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
Après avoir importé le message HL7v2 dans l'API Cloud Healthcare, passez à l'étape Nettoyage pour éviter que des frais ne soient facturés sur votre compte Google Cloud pour les ressources utilisées dans cette page.
Pour en savoir plus sur les étapes suivantes, telles que l'affichage du contenu d'un message HL7v2, consultez la section Étapes suivantes.
Effectuer un nettoyage
Pour éviter que les ressources utilisées sur cette page ne soient facturées sur votre compte Google Cloud, supprimez le projet Google Cloud contenant les ressources.
Si vous avez créé un projet pour ce démarrage rapide, suivez les étapes décrites dans la section Supprimer le projet. Sinon, suivez la procédure décrite dans la section Supprimer l'ensemble de données.
Facultatif : Révoquez les identifiants de la CLI gcloud.
gcloud auth revoke
Supprimer le projet
Supprimez un projet Google Cloud :
gcloud projects delete PROJECT_ID
Supprimer l'ensemble de données
Si vous n'avez plus besoin de l'ensemble de données créé dans ce guide de démarrage rapide, vous pouvez le supprimer. La suppression d'un ensemble de données entraîne la suppression définitive de l'ensemble de données et des datastores FHIR, HL7v2 ou DICOM qu'il contient.
gcloud
Supprimez un ensemble de données à l'aide de la commande gcloud healthcare datasets delete
.
Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :
PROJECT_ID
: ID du projet Google Cloud que vous avez créé ou sélectionné dans la section Avant de commencer
Exécutez la commande suivante:
Linux, macOS ou 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
Réponse
You are about to delete dataset [my-dataset] Do you want to continue (Y/n)? Y Deleted dataset [my-dataset].
Comment ça s'est passé ?
Étapes suivantes
Consultez les sections suivantes pour obtenir des informations générales sur l'API Cloud Healthcare et découvrir comment effectuer les tâches de ce guide de démarrage rapide à l'aide d'une autre interface:
- Lisez la présentation des concepts de l'API Cloud Healthcare.
- Stocker des données de santé avec
curl
ou PowerShell - Stocker des données médicales avec des bibliothèques clientes
- Stocker des données de santé avec la gcloud CLI
DICOM
- Créer et gérer des magasins DICOM
- Connecter un PACS à l'API Cloud Healthcare
- Utiliser la norme DICOMweb
- Importer et exporter des données DICOM à l'aide de Cloud Storage
Consultez la déclaration de conformité DICOM pour en savoir plus sur la manière dont l'API Cloud Healthcare implémente la norme DICOMweb.
FHIR
- Créer et gérer des magasins FHIR
- Créer et gérer des ressources FHIR
- Importer et exporter des données FHIR à l'aide de Cloud Storage
Consultez la déclaration de conformité FHIR pour en savoir plus sur la manière dont l'API Cloud Healthcare implémente la norme FHIR.