Armazenar dados médicos com a Google Cloud CLI
Nesta página, mostramos como usar a API Cloud Healthcare e a Google Cloud CLI 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 de Health Level Seven International Version 2 (HL7v2)
- Armazenar dados DICOM, FHIR e HL7v2 e ver metadados DICOM.
Se você tiver interesse em trabalhar apenas com um tipo de repositório de dados, pule diretamente para essa 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
- Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
- Instale a CLI do Google Cloud.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Criar ou selecionar um projeto do Google Cloud.
-
Crie um projeto do Google Cloud:
gcloud projects create PROJECT_ID
-
Selecione o projeto do Google Cloud que você criou:
gcloud config set project PROJECT_ID
-
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Ative Cloud Healthcare API:
gcloud services enable healthcare.googleapis.com
-
Atribua os papéis à sua Conta do Google. Execute uma vez o seguinte comando para cada um dos seguintes papéis do IAM:
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
- Substitua
PROJECT_ID
pela ID do seu projeto. - Substitua
EMAIL_ADDRESS
pelo seu endereço de e-mail. - Substitua
ROLE
por cada papel individual.
- Substitua
- Instale a CLI do Google Cloud.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
Criar ou selecionar um projeto do Google Cloud.
-
Crie um projeto do Google Cloud:
gcloud projects create PROJECT_ID
-
Selecione o projeto do Google Cloud que você criou:
gcloud config set project PROJECT_ID
-
-
Verifique se a cobrança está ativada para o seu projeto do Google Cloud.
-
Ative Cloud Healthcare API:
gcloud services enable healthcare.googleapis.com
-
Atribua os papéis à sua Conta do Google. Execute uma vez o seguinte comando para cada um dos seguintes papéis do IAM:
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
- Substitua
PROJECT_ID
pela ID do seu projeto. - Substitua
EMAIL_ADDRESS
pelo seu endereço de e-mail. - Substitua
ROLE
por cada papel individual.
- Substitua
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.
Veja na amostra a seguir como criar um conjunto de dados chamado my-dataset
na região us-central1
. Use o conjunto de dados em todo este guia de início rápido para criar armazenamentos DICOM, armazenamentos FHIR e armazenamentos HL7v2.
gcloud
Crie um conjunto de dados usando o comando gcloud healthcare datasets 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 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.
- Importe 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 padrão DICOMweb para armazenar e acessar dados de diagnóstico médico por imagem.
Criar um armazenamento DICOM
Os armazenamentos DICOM existem nos conjuntos de dados e contêm instâncias DICOM. A amostra 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 da 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 levar muito tempo para serem concluídas. A importação de uma instância de 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 é compatível com transações DICOM, como visualização ou recuperação de instâncias. Em vez disso, use a ferramenta de linha de comando DICOMweb do Google, que é executada com o Python. Para informações sobre como configurar o Python no Google Cloud, consulte Como configurar um ambiente de desenvolvimento do Python.
Conclua as etapas a seguir para visualizar os metadados da instância DICOM usando a 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ção dedcmweb
: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 para ver os campos na 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 visualizar os metadados, continue em Limpeza para evitar cobranças na conta do Google Cloud pelos recursos usados nesta página.
Para 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 de conjuntos de dados e contêm recursos FHIR. O exemplo a seguir mostra como criar um armazenamento de FHIR chamado my-fhir-store
que usa a versão R4 do FHIR.
gcloud
Crie
um armazenamento de 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 o comando
gcloud healthcare fhir-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 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 quando você importa um recurso FHIR. As 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 recursos FHIR leva cerca de um a dois minutos.R4
: a versão do armazenamento de 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 do FHIR para a API Cloud Healthcare, continue em Limpeza para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página.
Para informações sobre as próximas etapas, por exemplo, como ver e pesquisar recursos FHIR, consulte Próximas etapas.
Armazenar uma mensagem HL7v2
Neste documento, mostramos como concluir as seguintes tarefas:
- Criar uma loja HL7v2.
- Importe uma mensagem do HL7v2 de um bucket público do Cloud Storage para o armazenamento de HL7v2.
A implementação do HL7v2 na API Cloud Healthcare está alinhada com o padrão HL7v2.
Criar um armazenamento de HL7v2
Os armazenamentos de HL7v2 existem nos conjuntos de dados e contêm mensagens de HL7v2. A amostra a seguir mostra como criar um armazenamento HL7v2 chamado my-hl7v2-store
.
gcloud
Crie um armazenamento de 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 do 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 comando.OPERATION_ID
: um identificador para a operação de longa duração fornecida pela API Cloud Healthcare quando você importa uma mensagem de HL7v2. As 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 do 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 do HL7v2 para a API Cloud Healthcare, continue em Limpeza para evitar cobranças na sua conta do Google Cloud pelos recursos usados nesta página.
Para informações sobre as próximas etapas, por exemplo, como visualizar o conteúdo de uma mensagem HL7v2, consulte A seguir.
Limpeza
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.
Opcional: revogar credenciais da CLI gcloud.
gcloud auth revoke
Excluir o projeto
Exclua um projeto do Google Cloud:
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 comando gcloud healthcare datasets delete
.
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 executar 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 médicos com
curl
ou PowerShell - Armazenar dados médicos com bibliotecas de cliente
- Armazenar dados médicos 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.