Armazenar dados de saúde com a Google Cloud CLI
Esta página mostra como usar a API Cloud Healthcare e a CLI do Google Cloud para concluir as seguintes tarefas:
- Criar um conjunto de dados da API Cloud Healthcare;
- Criar um dos seguintes armazenamentos de dados no conjunto de dados:
- Armazenamento de imagens e comunicações digitais em medicina (DICOM, na sigla em inglês)
- Armazenamento de recursos de interoperabilidade rápida de saúde (FHIR, na sigla em inglês)
- Armazenamento do Health Level Seven International Version 2 (HL7v2)
- Armazene dados DICOM, FHIR e HL7v2 e acesse os metadados DICOM.
Se você tem interesse apenas em trabalhar com um tipo de armazenamento de dados, pule diretamente para a respectiva seção do guia de início rápido após concluir as etapas em Antes de começar e Criar um conjunto de dados.
Antes de começar
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Healthcare API:
gcloud services enable healthcare.googleapis.com
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Healthcare API:
gcloud services enable healthcare.googleapis.com
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/healthcare.datasetAdmin, roles/healthcare.fhirStoreAdmin, roles/healthcare.dicomStoreAdmin, roles/healthcare.hl7V2StoreAdmin
gcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
- Replace
PROJECT_ID
with your project ID. -
Replace
USER_IDENTIFIER
with the identifier for your user account. For example,user:myemail@example.com
. - Replace
ROLE
with each individual role.
- Replace
crie um conjunto de dados
Conjuntos de dados contêm armazenamentos de dados com dados de saúde. Para usar a API Cloud Healthcare, você precisa criar pelo menos um conjunto de dados.
O exemplo a seguir mostra como criar um conjunto de dados chamado my-dataset
na região us-central1
. Você vai usar o conjunto de dados ao longo deste guia de início rápido para
criar armazenamentos DICOM, FHIR e HL7v2.
gcloud
Crie um conjunto de dados usando o
gcloud healthcare datasets create
kubectl.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Você receberá uma resposta semelhante a esta:
Resposta
Create request issued for: [my-dataset] Created dataset [my-dataset].
Para concluir este guia de início rápido, escolha uma das seguintes seções:
Armazenar e visualizar uma instância DICOM
Neste documento, mostramos como concluir as seguintes tarefas:
- Crie um armazenamento DICOM.
- Importar uma instância DICOM de um bucket público do Cloud Storage para o armazenamento DICOM.
- Visualizar os metadados da instância DICOM.
A API Cloud Healthcare implementa o DICOMweb para armazenar e acessar dados de imagens médicas.
Criar um armazenamento DICOM
Os armazenamentos DICOM existem dentro dos conjuntos de dados e contêm instâncias DICOM. O exemplo a seguir
mostra como criar um armazenamento DICOM chamado my-dicom-store
.
gcloud
Crie
um armazenamento DICOM usando o comando gcloud healthcare dicom-stores create
.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Você receberá uma resposta semelhante a esta:
Resposta
Created dicomStore [my-dicom-store].
Importar uma instância de DICOM
Os dados de DICOM de amostra estão disponíveis no bucket gs://gcs-public-data--healthcare-nih-chest-xray
do Cloud Storage:
gcloud
Importe a instância gs://gcs-public-data--healthcare-nih-chest-xray/dicom/00000001_000.dcm
usando o comando
gcloud healthcare dicom-stores import
.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Nesta saída:
PROJECT_ID
,us-central1
,my-dataset
,my-dicom-store
: os valores que você forneceu ao executar o comando.OPERATION_ID
: um identificador para a operação de longa duração fornecida pela API Cloud Healthcare quando você importa uma instância DICOM. As operações de longa duração são retornadas quando as chamadas de método podem demorar muito para serem concluídas. A importação de uma instância DICOM geralmente é uma operação rápida, portanto, a saída é retornada quase imediatamente.
Resposta
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
Ver metadados da instância DICOM
A CLI gcloud não oferece suporte a transações DICOMweb, como visualização ou recuperação de instâncias. Em vez disso, você pode usar a ferramenta de linha de comando DICOMweb do Google, que é executado em Python. Para informações sobre como configurar o Python no Google Cloud, consulte Como configurar um ambiente de desenvolvimento em Python.
Conclua as etapas a seguir para visualizar os metadados da instância DICOM usando o Ferramenta de linha de comando DICOMweb:
Instale a ferramenta de linha de comando DICOMweb usando Pip:
pip install https://github.com/GoogleCloudPlatform/healthcare-api-dicomweb-cli/archive/v1.0.zip
Atualize a variável
PATH
para incluir o local de instalaçãodcmweb
:export PATH="$HOME/bin:$PATH"
Veja os metadados da instância DICOM:
dcmweb \ https://healthcare.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/datasets/my-dataset/dicomStores/my-dicom-store/dicomWeb \ search instances
Substitua
PROJECT_ID
pelo ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar.A saída é esta: Consulte Atributos do módulo comum SOP nos campos da saída.
[ { "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" } } ]
Depois de importar a instância DICOM para a API Cloud Healthcare e conferir os metadados dela, continue em Limpar para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página.
Para mais informações sobre as próximas etapas, por exemplo, como pesquisar ou recuperar imagens DICOM usando o padrão DICOMweb na API Cloud Healthcare, consulte A seguir.
Armazenar recursos FHIR
Neste documento, mostramos como concluir as seguintes tarefas:
- Crie um armazenamento de FHIR.
- Importe recursos FHIR de um bucket público do Cloud Storage para o armazenamento de FHIR.
Criar um armazenamento de FHIR
Os armazenamentos FHIR existem dentro dos conjuntos de dados e contêm recursos FHIR. O seguinte
mostra como criar um repositório FHIR chamado my-fhir-store
que usa
FHIR versão R4.
gcloud
Crie
uma loja FHIR usando o comando gcloud healthcare fhir-stores create
.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Você receberá uma resposta semelhante a esta:
Resposta
Created fhirStore [my-fhir-store].
Importar recursos de FHIR
Os dados FHIR de amostra estão disponíveis no bucket gs://gcp-public-data--synthea-fhir-data-10-patients
do Cloud Storage:
gcloud
Importe os recursos FHIR em gs://gcp-public-data--synthea-fhir-data-10-patients
usando a interface gcloud healthcare fhir-stores import
kubectl.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Nesta saída:
PROJECT_ID
,us-central1
,my-dataset
,my-fhir-store
: os valores que você forneceu ao executar o comando.OPERATION_ID
: um identificador para a operação de longa duração fornecida pela API Cloud Healthcare ao importar um recurso FHIR. Operações de longa duração são retornadas quando as chamadas de método podem levar muito tempo para serem concluídas. A importação dos recursos FHIR leva cerca de um a dois minutos.R4
: a versão do armazenamento FHIR
Resposta
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
Depois de importar os recursos FHIR para a API Cloud Healthcare, continue em Limpar para evitar cobranças recorrentes na sua conta do Google Cloud pelos recursos usados nesta página.
Para saber mais sobre as próximas etapas, por exemplo, como visualizar e pesquisar recursos FHIR, consulte A seguir.
Armazenar uma mensagem HL7v2
Neste documento, mostramos como concluir as seguintes tarefas:
- Criar uma loja HL7v2.
- Importe uma mensagem HL7v2 de um bucket público do Cloud Storage para a loja HL7v2.
A implementação do HL7v2 na API Cloud Healthcare está alinhada com o padrão HL7v2.
Criar um armazenamento de HL7v2
Os armazenamentos HL7v2 existem nos conjuntos de dados e contêm mensagens HL7v2. O exemplo
a seguir mostra como criar um armazenamento HL7v2 chamado my-hl7v2-store
.
gcloud
Crie um armazenamento HL7v2 usando o comando gcloud healthcare hl7v2-stores create
.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Você receberá uma resposta semelhante a esta:
Resposta
Created hl7v2Store [my-hl7v2-store].
Importar mensagens de HL7v2
gcloud
Importe a mensagem HL7v2 gs://cloud-samples-data/healthcare/hl7v2/messages.ndjson
usando o comando gcloud healthcare hl7v2-stores import
.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Nesta saída:
PROJECT_ID
,us-central1
,my-dataset
,my-hl7v2-store
: os valores que você forneceu ao executar o comandoOPERATION_ID
: um identificador para a operação de longa duração fornecida pela API Cloud Healthcare quando você importa uma mensagem HL7v2. Operações de longa duração são retornadas quando as chamadas de método podem levar muito tempo para serem concluídas. A importação de uma mensagem HL7v2 geralmente é uma operação rápida, portanto, a saída é retornada quase imediatamente.
Resposta
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
Depois de importar a mensagem HL7v2 para a API Cloud Healthcare, continue em Limpar para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página.
Para saber mais sobre as próximas etapas, como conferir o conteúdo de uma mensagem HL7v2, consulte A seguir.
Limpar
Para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página, exclua o projeto do Google Cloud com esses recursos.
Se você criou um novo projeto para este guia de início rápido, siga as etapas em Excluir o projeto. Caso contrário, siga as etapas em Excluir o conjunto de dados.
Optional: Revoke credentials from the gcloud CLI.
gcloud auth revoke
Exclua o projeto
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
Excluir o conjunto de dados
Se você não precisar mais do conjunto de dados criado neste guia de início rápido, poderá excluí-lo. Excluir um conjunto de dados exclui permanentemente o conjunto de dados e todos os armazenamentos FHIR, HL7v2 ou DICOM que ele contém.
gcloud
Exclua um conjunto de dados usando o
gcloud healthcare datasets delete
kubectl.
Antes de usar os dados do comando abaixo, faça estas substituições:
PROJECT_ID
: o ID do projeto do Google Cloud que você criou ou selecionou em Antes de começar;
Execute o seguinte comando:
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
Resposta
You are about to delete dataset [my-dataset] Do you want to continue (Y/n)? Y Deleted dataset [my-dataset].
Como foi?
A seguir
Consulte as seções a seguir para informações gerais sobre a API Cloud Healthcare e como realizar as tarefas neste guia de início rápido usando outra interface:
- Leia uma visão geral dos conceitos da API Cloud Healthcare.
- Armazenar dados de saúde com
curl
ou PowerShell - Armazenar dados de saúde com bibliotecas de cliente
- Armazenar dados de saúde com a CLI gcloud
DICOM
- Criar e gerenciar armazenamentos DICOM
- Conectar um PACS à API Cloud Healthcare
- Usar o padrão DICOMweb
- Importar e exportar dados DICOM usando o Cloud Storage
Consulte a instrução de conformidade DICOM para ver informações sobre como a API Cloud Healthcare implementa o padrão DICOMweb.
FHIR
- Criar e gerenciar armazenamentos FHIR
- Criar e gerenciar recursos FHIR
- Importar e exportar dados FHIR usando o Cloud Storage
Consulte a Declaração de conformidade FHIR para ver informações sobre como a API Cloud Healthcare implementa o padrão FHIR.