Esportazione di dati dal tuo archivio HealthLake dati con operazioni FHIR REST API - AWS HealthLake

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Esportazione di dati dal tuo archivio HealthLake dati con operazioni FHIR REST API

Al termineImpostazione delle autorizzazioni per i lavori di esportazione, è possibile esportare i dati dall'archivio HealthLake dati con FHIR REST API operazioni. Per effettuare una richiesta di esportazione utilizzando il FHIR RESTAPI, è necessario disporre di un IAM utente, gruppo o ruolo con le autorizzazioni richieste, specificarlo $export come parte della POST richiesta e includere i parametri della richiesta nel corpo della richiesta. In base alle FHIR specifiche, il FHIR server deve supportare GET le richieste e può supportarlePOST. Per supportare parametri aggiuntivi, è necessario un body per avviare l'esportazione, quindi HealthLake supporta POST le richieste.

Importante

HealthLake gli archivi di dati creati prima del 1° giugno 2023 supportano solo le richieste di lavori di esportazione FHIR REST API basate sull'esportazione per le esportazioni a livello di sistema.

HealthLake gli archivi di dati creati prima del 1° giugno 2023 non supportano l'acquisizione dello stato di un'esportazione utilizzando una GET richiesta sull'endpoint di un data store.

Tutte le richieste di esportazione effettuate utilizzando il FHIR REST API vengono restituite in ndjson formato ed esportate in un bucket Amazon S3. Ogni oggetto S3 conterrà un solo tipo di risorsa. FHIR

È possibile mettere in coda le richieste di esportazione in base alle quote dell' AWS account. Per ulteriori informazioni sui Service Quotas associati a HealthLake, vedere. AWS HealthLake endpoint e quote

HealthLake supporta i seguenti tre tipi di richieste endpoint di esportazione in blocco.

Tipo Descrizioni Sintassi

Esportazione del sistema

Esporta tutti i dati dal HealthLake FHIR server.

POST https://healthlake.your-region.amazonaws.com/datastore/your-datastore-id/r4/$export

Tutti i pazienti

Esporta tutti i dati relativi a tutti i pazienti, compresi i tipi di risorse associati al tipo di risorsa Paziente.

POST https://healthlake.your-region.amazonaws.com/datastore/your-datastore-id/r4/Patient/$export

Gruppo di pazienti

Esporta tutti i dati relativi a un gruppo di pazienti specificato con un ID di gruppo.

POST https://healthlake.your-region.amazonaws.com/datastore/your-datastore-id/r4/Group/ID/$export

Prima di iniziare

Soddisfa i seguenti requisiti per effettuare una richiesta di esportazione utilizzando il FHIR REST API modulo HealthLake.

  • È necessario aver impostato un utente, un gruppo o un ruolo con le autorizzazioni necessarie per effettuare la richiesta di esportazione. Per ulteriori informazioni, consulta Autorizzazione di una richiesta export.

  • Devi aver creato un ruolo di servizio che garantisca HealthLake l'accesso al bucket Amazon S3 in cui desideri esportare i tuoi dati. Il ruolo di servizio deve inoltre essere specificato HealthLake come principale del servizio. Per ulteriori informazioni sulla configurazione delle autorizzazioni, vedereImpostazione delle autorizzazioni per i lavori di esportazione.

Autorizzazione di una richiesta export

Per effettuare correttamente una richiesta di esportazione utilizzando il FHIR RESTAPI, autorizza il tuo utente, gruppo o ruolo utilizzando uno dei due IAM o OAuth2 .0. È inoltre necessario avere un ruolo di servizio.

Autorizzazione di una richiesta utilizzando IAM

Quando si effettua una $export richiesta, l'utente, il gruppo o il ruolo devono StartFHIRExportJobWithPost includere CancelFHIRExportJobWithDelete IAM azioni e azioni nella politica. DescribeFHIRExportJobWithGet

Importante

HealthLake SDKle richieste di esportazione che utilizzano StartFHIRExportJob API l'operazione e le richieste di FHIR REST API esportazione che utilizzano StartFHIRExportJobWithPost API l'operazione hanno IAM azioni separate. Per ogni IAM azione, SDK esporta con StartFHIRExportJob ed FHIR REST API esporta conStartFHIRExportJobWithPost, le autorizzazioni di consentimento/rifiuto possono essere gestite separatamente. Se vuoi che entrambe le SDK FHIR REST API esportazioni siano limitate, assicurati di negare le autorizzazioni per ogni azione. IAM

Autorizzazione di una richiesta utilizzando SMART on FHIR (2.0) OAuth

Quando si effettua una $export richiesta SMART su un HealthLake data store FHIR abilitato, è necessario che vengano assegnati gli ambiti appropriati. Per ulteriori informazioni sugli ambiti supportati, consulta. HealthLake ambiti specifici FHIR delle risorse dell'archivio dati

Effettuare una richiesta export

Questa sezione descrive i passaggi necessari da eseguire quando si effettua una richiesta di esportazione utilizzando il FHIR RESTAPI.

Per evitare addebiti accidentali sul tuo AWS account, ti consigliamo di testare le tue richieste effettuando una POST richiesta senza fornire la export sintassi.

Per effettuare la richiesta, devi fare quanto segue:

  1. Specificare export nella POST URL richiesta un endpoint supportato.

  2. Specificate i parametri di intestazione richiesti.

  3. Specificate un corpo della richiesta che definisca i parametri richiesti.

Fase 1: Specificare export nella POST URL richiesta un endpoint supportato

HealthLake supporta tre tipi di richieste endpoint di esportazione in blocco. Per effettuare una richiesta di esportazione in blocco, è necessario effettuare una richiesta POST basata su uno dei tre endpoint supportati. Gli esempi seguenti mostrano come specificare export nella richiesta. URL

  • POST https://healthlake.your-region.amazonaws.com/datastore/your-datastore-id/r4/$export

  • POST https://healthlake.your-region.amazonaws.com/datastore/your-datastore-id/r4/Patient/$export

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

In quella stringa di POST richiesta, è possibile utilizzare i seguenti parametri di ricerca supportati.

Parametri di ricerca supportati

HealthLake supporta i seguenti modificatori di ricerca nelle richieste di esportazione in blocco.

Questi esempi includono caratteri speciali che devono essere codificati prima di inviare la richiesta.

Nome Obbligatorio? Descrizione Esempio
_outputFormat No Il formato per i file Bulk Data richiesti da generare. I valori accettati sonoapplication/fhir+ndjson,application/ndjson,ndjson.
_type No Una stringa di tipi di FHIR risorse delimitati da virgole che desideri includere nel processo di esportazione. Ti consigliamo di includerla _type perché ciò può avere un impatto sui costi quando tutte le risorse vengono esportate. &_type=MedicationStatement, Observation
_since No Tipi di risorse modificati in o dopo la data e l'ora. Se un tipo di risorsa non ha l'ora dell'ultimo aggiornamento, verranno inclusi nella risposta. &_since=2024-05-09T00%3A00%3A00Z

Passaggio 2: Specificare i parametri di intestazione richiesti

Per effettuare una richiesta di esportazione utilizzando FHIR RESTAPI, è necessario specificare i due parametri di intestazione seguenti.

  • Tipo di contenuto: application/fhir+json

  • Preferisco: respond-async

Successivamente, è necessario specificare gli elementi richiesti nel corpo della richiesta.

Fase 3: Specificare un corpo della richiesta e definire i parametri richiesti.

La richiesta di esportazione richiede anche un corpo in JSON formato. Il corpo può includere i seguenti parametri.

Chiave Obbligatorio? Descrizione Valore
DataAccessRoleArn Un ruolo ARN di HealthLake servizio. Il ruolo di servizio utilizzato deve essere specificato HealthLake come principale del servizio. arn:aws:iam::444455556666:role/your-healthlake-service-role
JobName No Il nome della richiesta di esportazione. your-export-job-name
S3Uri Parte di una OutputDataConfig chiave. L'S3 URI del bucket di destinazione in cui verranno scaricati i dati esportati. s3://DOC-EXAMPLE-DESTINATION-BUCKET/EXPORT-JOB/
KmsKeyId Parte di una chiave. OutputDataConfig La ARN AWS KMS chiave utilizzata per proteggere il bucket Amazon S3. arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
Esempio — Corpo di una richiesta di esportazione effettuata utilizzando il FHIR REST API

Per effettuare una richiesta di esportazione utilizzando il FHIR RESTAPI, è necessario specificare un corpo, come illustrato di seguito.

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

Quando la richiesta avrà esito positivo, riceverai la seguente risposta.

Intestazione della risposta

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

Corpo di risposta

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

Gestione della richiesta di esportazione

Dopo aver effettuato una richiesta di esportazione corretta, puoi gestirla descrivendo export lo stato di una richiesta di esportazione corrente e export annullando una richiesta di esportazione corrente.

Quando annulli una richiesta di esportazione utilizzando il RESTAPI, ti verrà addebitata solo la parte dei dati che è stata esportata fino al momento in cui hai inviato la richiesta di annullamento.

I seguenti argomenti descrivono come visualizzare lo stato di una richiesta di esportazione corrente o annullarla.

Annullamento di una richiesta di esportazione

Per annullare una richiesta di esportazione, effettua una DELETE richiesta e fornisci l'ID del lavoro nella richiesta. URL

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

Quando la richiesta ha esito positivo, riceverai quanto segue.

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

Quando la tua richiesta non va a buon fine, ricevi quanto segue.

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

Descrizione di una richiesta di esportazione

Per conoscere lo stato di una richiesta di esportazione, effettua una GET richiesta utilizzando export and yourexport-request-job-id.

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

La JSON risposta conterrà un ExportJobProperties oggetto. Può contenere le seguenti coppie chiave:valore.

NomeObbligatorio?DescrizioneValore
DataAccessRoleArnNoUn ARN ruolo di HealthLake servizio. Il ruolo di servizio utilizzato deve essere specificato HealthLake come principale del servizio.arn:aws:iam::444455556666:role/your-healthlake-service-role
SubmitTimeNoData e ora in cui è stato inviato un processo di esportazione.Apr 21, 2023 5:58:02
EndTimeNo

L'ora in cui è stato completato un processo di esportazione.

Apr 21, 2023 6:00:08 PM
JobNameNoIl nome della richiesta di esportazione.your-export-job-name
JobStatusNoI valori validi sono:
SUBMITTED | IN_PROGRESS | COMPLETED_WITH_ERRORS | COMPLETED | FAILED
S3UriParte di un OutputDataConfigoggetto. L'Amazon S3 URI del bucket di destinazione in cui verranno scaricati i dati esportati.s3://DOC-EXAMPLE-DESTINATION-BUCKET/EXPORT-JOB/
KmsKeyIdParte di un oggetto. OutputDataConfig La ARN AWS KMS chiave utilizzata per proteggere il bucket Amazon S3.arn:aws:kms:region-of-bucket:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab
Esempio : Corpo di una richiesta di descrizione dell'esportazione effettuata utilizzando il FHIR REST API

In caso di successo, riceverai la seguente JSON risposta.

{ "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://DOC-EXAMPLE-DESTINATION-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", } }