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à.
Interrogazione HealthLake dei dati con SQL
Quando importi i dati FHIR nell'archivio dati, HealthLake i dati JSON FHIR annidati vengono contemporaneamente sottoposti a un processo ETL e vengono archiviati in formato tabella aperta Apache Iceberg in Amazon S3. Ogni tipo di risorsa FHIR del tuo HealthLake data store viene convertito in una tabella, dove può essere interrogato utilizzando Amazon Athena. Le tabelle possono essere interrogate singolarmente o in gruppo utilizzando query basate su SQL. A causa della struttura degli archivi dati, i dati vengono importati in Athena come diversi tipi di dati. Per ulteriori informazioni sulla creazione di query SQL in grado di accedere a questi tipi di dati, consulta Matrici di query con tipi complessi e strutture annidate nella Amazon Athena User Guide.
Nota
Tutti gli esempi in questo argomento utilizzano dati fittizi creati con Synthea. Per ulteriori informazioni sulla creazione di un data store precaricato con dati Synthea, consulta. Creazione di un archivio HealthLake dati
Per ogni elemento di un tipo di risorsa, la specifica FHIR definisce una cardinalità. La cardinalità di un elemento definisce i limiti inferiore e superiore di quante volte questo elemento può apparire. Quando si costruisce una query SQL, è necessario tenerne conto. Ad esempio, diamo un'occhiata ad alcuni elementi in Tipo di risorsa: Paziente
-
Elemento: Nome La specifica FHIR imposta la cardinalità come.
0..*L'elemento viene acquisito come matrice.
[{ id = null, extension = null, use = official, _use = null, text = null, _text = null, family = Wolf938, _family = null, given = [Noel608], _given = null, prefix = null, _prefix = null, suffix = null, _suffix = null, period = null }]In Athena, per vedere come è stato importato un tipo di risorsa, cercalo in Tabelle e viste. Per accedere agli elementi di questo array, puoi usare la notazione a punti. Ecco un semplice esempio che consentirebbe di accedere ai valori di
givenefamily.SELECT name[1].given as FirstName, name[1].family as LastName FROM Patient -
Elemento: MaritalStatus La specifica FHIR imposta la cardinalità come.
0..1Questo elemento viene acquisito come JSON.
{ id = null, extension = null, coding = [ { id = null, extension = null, system = http: //terminology.hl7.org/CodeSystem/v3-MaritalStatus, _system = null, version = null, _version = null, code = S, _code = null, display = Never Married, _display = null, userSelected = null, _userSelected = null } ], text = Never Married, _text = null }In Athena, per vedere come è stato importato un tipo di risorsa, cercalo in Tabelle e viste. Per accedere alle coppie chiave-valore in JSON, puoi usare la notazione a punti. Poiché non è un array, non è richiesto alcun indice di matrice. Ecco un semplice esempio che consentirebbe di accedere al valore di
text.SELECT maritalstatus.text as MaritalStatus FROM Patient
Per ulteriori informazioni sull'accesso e sulla ricerca in JSON, consulta Querying JSON nella Athena User Guide.
Le istruzioni di interrogazione DML (Athena Data Manipulation Language) sono basate su Trino. Athena non supporta tutte le funzionalità di Trino e presenta differenze significative. Per ulteriori informazioni, consulta le interrogazioni, le funzioni e gli operatori DML nella Guida per l'utente di Amazon Athena.
Inoltre, Athena supporta diversi tipi di dati che potresti incontrare durante la creazione di query sul tuo HealthLake archivio dati. Per ulteriori informazioni sui tipi di dati in Athena, consulta Tipi di dati in Amazon Athena nella Amazon Athena User Guide.
Per ulteriori informazioni su come funzionano le query SQL in Athena, consulta il riferimento SQL per Amazon Athena nella Amazon Athena User Guide.
Ogni scheda mostra esempi di come effettuare ricerche sui tipi di risorse specificati e sugli elementi associati utilizzando Athena.