Exportación HealthLake de datos con FHIR $export - AWS HealthLake

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Exportación HealthLake de datos con FHIR $export

Puede exportar datos de forma masiva desde su almacén de HealthLake datos mediante la operación $export de FHIR. HealthLake admite el $export uso POST y las solicitudes del FHIR. GET Para realizar una solicitud de exportaciónPOST, debe tener un usuario, grupo o rol de IAM con los permisos necesarios, especificarlo $export como parte de la solicitud e incluir los parámetros deseados en el cuerpo de la solicitud.

nota

Todas las solicitudes de HealthLake exportación realizadas mediante FHIR $export se devuelven en ndjson formato y se exportan a un bucket de Amazon S3, donde cada objeto de Amazon S3 contiene solo un tipo de recurso FHIR.

Puede poner en cola las solicitudes de exportación según las cuotas de servicio de la AWS cuenta. Para obtener más información, consulte Service Quotas.

HealthLake admite los siguientes tres tipos de solicitudes de punto final de exportación masiva.

HealthLake $exporttipos masivos
Tipo de exportación Descripción Sintaxis

Sistema

Exporte todos los datos del servidor del HealthLake FHIR.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export

Todos los pacientes

Exporte todos los datos relacionados con todos los pacientes, incluidos los tipos de recursos asociados al tipo de recurso del paciente.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export

Grupo de pacientes

Exporte todos los datos relacionados con un grupo de pacientes especificado con un identificador de grupo.

POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export

Antes de empezar

Cumpla los siguientes requisitos para realizar una solicitud de exportación mediante la API REST del FHIR para HealthLake.

  • Debe haber configurado un usuario, grupo o rol que tenga los permisos necesarios para realizar la solicitud de exportación. Para obtener más información, consulte Autorizar una solicitud $export.

  • Debe haber creado un rol de servicio que conceda HealthLake acceso al bucket de Amazon S3 al que quiere que se exporten sus datos. El rol de servicio también debe especificarse HealthLake como principal de servicio. Para obtener más información sobre la configuración de permisos, consulteConfigurar los permisos para los trabajos de exportación.

Autorizar una solicitud $export

Para realizar correctamente una solicitud de exportación mediante la API REST de FHIR, autorice a su usuario, grupo o rol mediante IAM o .0. OAuth2 También debe tener un rol de servicio.

Autorizar una solicitud mediante IAM

Al realizar una $export solicitud, el usuario, el grupo o el rol deben incluir las acciones de IAM en la política. Para obtener más información, consulte Configurar los permisos para los trabajos de exportación.

Autorizar una solicitud mediante SMART en el FHIR (2.0) OAuth

Al realizar una $export solicitud en un almacén de HealthLake datos compatible con SMART on FHIR, debe tener asignados los ámbitos adecuados. Para obtener más información, consulte Los alcances de los recursos de SMART on FHIR son: HealthLake.

nota

El FHIR $export y GET las solicitudes requieren el mismo método de autenticación o el mismo token de soporte (en el caso de SMART en el FHIR) para solicitar la exportación y la recuperación de archivos. Los archivos exportados mediante el FHIR $export con GET están disponibles para su descarga durante 48 horas.

¿Hacer una solicitud $export

En esta sección se describen los pasos necesarios que debe seguir al realizar una solicitud de exportación mediante la API REST del FHIR.

Para evitar cargos accidentales en tu AWS cuenta, te recomendamos probar tus solicitudes realizando una POST solicitud sin proporcionar la $export sintaxis.

Para realizar la solicitud, debes hacer lo siguiente:

  1. Especifique $export en la URL de la POST solicitud un punto final compatible.

  2. Especifique los parámetros de cabecera necesarios.

  3. Especifique el cuerpo de la solicitud que defina los parámetros necesarios.

Paso 1: especifique $export en la URL de la POST solicitud un punto final compatible.

HealthLake admite tres tipos de solicitudes de punto final de exportación masiva. Para realizar una solicitud de exportación masiva, debe realizar una solicitud POST basada en uno de los tres puntos de enlace compatibles. Los siguientes ejemplos muestran dónde especificar $export en la URL de la solicitud.

  • POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/$export

  • POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Patient/$export

  • POST https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/Group/id/$export

Puede utilizar los siguientes parámetros de búsqueda admitidos en la cadena de POST solicitud.

Parámetros de búsqueda compatibles

HealthLake admite los siguientes modificadores de búsqueda en las solicitudes de exportación masiva.

Los siguientes ejemplos incluyen caracteres especiales que deben codificarse antes de enviar la solicitud.

Nombre ¿Obligatorio? Descripción Ejemplo
_outputFormat No El formato para generar los archivos de datos masivos solicitados. Los valores aceptados sonapplication/fhir+ndjson,application/ndjson,ndjson.
_type No Cadena de tipos de recursos FHIR delimitados por comas que desea incluir en su trabajo de exportación. Recomendamos incluirlo _type porque esto puede tener repercusiones en los costes cuando se exportan todos los recursos. &_type=MedicationStatement, Observation
_since No Tipos de recursos modificados en o después de la marca de fecha y hora. Si un tipo de recurso no tiene una hora de última actualización, se incluirá en la respuesta. &_since=2024-05-09T00%3A00%3A00Z

Paso 2: especifique los parámetros de cabecera necesarios

Para realizar una solicitud de exportación mediante la API REST del FHIR, debe especificar los siguientes parámetros de encabezado.

  • Content-Type: application/fhir+json

  • Prefiero: respond-async

A continuación, debe especificar los elementos necesarios en el cuerpo de la solicitud.

Paso 3: especifique un cuerpo de solicitud que defina los parámetros necesarios.

La solicitud de exportación también requiere un cuerpo en JSON formato. El cuerpo puede incluir los siguientes parámetros.

Clave ¿Obligatorio? Descripción Valor
DataAccessRoleArn Un ARN de un rol de HealthLake servicio. El rol de servicio utilizado debe especificarse HealthLake como principal de servicio. arn:aws:iam::444455556666:role/your-healthlake-service-role
JobName No El nombre de la solicitud de exportación. your-export-job-name
S3Uri Parte de una OutputDataConfig clave. El URI de S3 del depósito de destino donde se descargarán los datos exportados. s3://amzn-s3-demo-bucket/EXPORT-JOB/
KmsKeyId Parte de una OutputDataConfig clave. El ARN de la AWS KMS clave utilizada para proteger el bucket de Amazon S3. arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
ejemplo Cuerpo de una solicitud de exportación realizada mediante la API REST del FHIR

Para realizar una solicitud de exportación mediante la API REST del FHIR, debe especificar un cuerpo, como se muestra a continuación.

{ "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role", "JobName": "your-export-job", "OutputDataConfig": { "S3Configuration": { "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB", "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab" } } }

Cuando la solicitud se realice correctamente, recibirá la siguiente respuesta.

Encabezado de respuesta

content-location: https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id

Cuerpo de respuesta

{ "datastoreId": "your-data-store-id", "jobStatus": "SUBMITTED", "jobId": "your-export-request-job-id" }

Gestionar tu solicitud de exportación

Tras realizar correctamente una solicitud de exportación, puede gestionarla $export para describir el estado de una solicitud de exportación actual y $export cancelar una solicitud de exportación actual.

Cuando cancelas una solicitud de exportación mediante la API REST, solo se te facturará la parte de los datos que se exportaron hasta el momento en que enviaste la solicitud de cancelación.

En los siguientes temas se describe cómo puede obtener el estado de una solicitud de exportación actual o cancelarla.

Cancelar una solicitud de exportación

Para cancelar una solicitud de exportación, realice una DELETE solicitud e introduzca el identificador de trabajo en la URL de la solicitud.

DELETE https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-job-id

Cuando la solicitud se realice correctamente, recibirá lo siguiente.

{ "exportJobProperties": { "jobId": "your-original-export-request-job-id", "jobStatus": "CANCEL_SUBMITTED", "datastoreId": "your-data-store-id" } }

Si su solicitud no se acepta, recibirá lo siguiente.

{ "resourceType": "OperationOutcome", "issue": [ { "severity": "error", "code": "not-supported", "diagnostics": "Interaction not supported." } ] }

Describir una solicitud de exportación

Para conocer el estado de una solicitud de exportación, haga una GET solicitud utilizando export y suexport-request-job-id.

GET https://healthlake.region.amazonaws.com/datastore/datastoreId/r4/export/your-export-request-id

La respuesta de JSON contendrá un ExportJobProperties objeto. Puede contener los siguientes pares clave-valor.

Nombre ¿Obligatorio? Descripción Valor
DataAccessRoleArn No Un ARN de un rol de HealthLake servicio. El rol de servicio utilizado debe especificarse HealthLake como principal de servicio. arn:aws:iam::444455556666:role/your-healthlake-service-role
SubmitTime No Fecha y hora en que se envió un trabajo de exportación. Apr 21, 2023 5:58:02
EndTime No

La hora en que se completó un trabajo de exportación.

Apr 21, 2023 6:00:08 PM
JobName No El nombre de la solicitud de exportación. your-export-job-name
JobStatus No Los valores válidos son:
SUBMITTED | IN_PROGRESS | COMPLETED_WITH_ERRORS | COMPLETED | FAILED
S3Uri Parte de un OutputDataConfigobjeto. El URI de Amazon S3 del depósito de destino donde se descargarán los datos exportados. s3://amzn-s3-demo-bucket/EXPORT-JOB/
KmsKeyId Parte de un OutputDataConfigobjeto. El ARN de la AWS KMS clave utilizada para proteger el bucket de Amazon S3. arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
ejemplo : Cuerpo de una solicitud de exportación descrita realizada mediante la API REST del FHIR

Si se ejecuta correctamente, obtendrá la siguiente respuesta en JSON.

{ "exportJobProperties": { "jobId": "your-export-request-id", "JobName": "your-export-job", "jobStatus": "SUBMITTED", "submitTime": "Apr 21, 2023 5:58:02 PM", "endTime": "Apr 21, 2023 6:00:08 PM", "datastoreId": "your-data-store-id", "outputDataConfig": { "s3Configuration": { "S3Uri": "s3://amzn-s3-demo-bucket/EXPORT-JOB", "KmsKeyId": "arn:aws:kms:region-of-bucket:444455556666:key/1234abcd-12ab-34cd-56ef-1234567890ab"" } }, "DataAccessRoleArn": "arn:aws:iam::444455556666:role/your-healthlake-service-role", } }