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.
Consulta de HealthLake datos con SQL
Al importar los datos del FHIR al almacén de HealthLake datos, los datos FHIR de JSON anidados se someten simultáneamente a un proceso de ETL y se almacenan en formato de tabla abierta Apache Iceberg en Amazon S3. Cada tipo de recurso FHIR del almacén de HealthLake datos se convierte en una tabla, donde se puede consultar mediante Amazon Athena. Las tablas se pueden consultar individualmente o en grupo mediante consultas basadas en SQL. Debido a la estructura de los almacenes de datos, los datos se importan a Athena como varios tipos de datos diferentes. Para obtener más información sobre la creación de consultas SQL que puedan acceder a estos tipos de datos, consulte Matrices de consultas con tipos complejos y estructuras anidadas en la Guía del usuario de Amazon Athena.
nota
Todos los ejemplos de este tema utilizan datos ficticios creados con Synthea. Para obtener más información sobre cómo crear un banco de datos precargado con datos de Synthea, consulte. Creación de un almacén HealthLake de datos
Para cada elemento de un tipo de recurso, la especificación FHIR define una cardinalidad. La cardinalidad de un elemento define los límites inferior y superior del número de veces que puede aparecer este elemento. Al crear una consulta SQL, debe tener esto en cuenta. Por ejemplo, veamos algunos elementos de Tipo de recurso: paciente
-
Elemento: nombre La especificación del FHIR establece la cardinalidad como.
0..*El elemento se captura como una matriz.
[{ 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 }]En Athena, para ver cómo se ha ingerido un tipo de recurso, búsquelo en Tablas y vistas. Para acceder a los elementos de esta matriz, puede utilizar la notación de puntos. A continuación, se muestra un ejemplo sencillo que permite acceder a los valores de
givenyfamily.SELECT name[1].given as FirstName, name[1].family as LastName FROM Patient -
Elemento: MaritalStatus La especificación del FHIR establece la cardinalidad como.
0..1Este elemento se captura como 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 }En Athena, para ver cómo se ha ingerido un tipo de recurso, búsquelo en Tablas y vistas. Para acceder a los pares clave-valor en el JSON, puede utilizar la notación de puntos. Como no es una matriz, no se requiere ningún índice de matriz. A continuación, se muestra un ejemplo sencillo con el que se accedería al valor de
text.SELECT maritalstatus.text as MaritalStatus FROM Patient
Para obtener más información sobre cómo acceder y buscar en JSON, consulte Consultas de JSON en la Guía del usuario de Athena.
Las declaraciones de consulta del Lenguaje de Manipulación de Datos (DML) de Athena se basan en Trino. Athena no es compatible con todas las funciones de Trino y existen diferencias significativas. Para obtener más información, consulte las consultas, las funciones y los operadores de DML en la Guía del usuario de Amazon Athena.
Además, Athena admite varios tipos de datos que puede encontrar al crear consultas en su banco de HealthLake datos. Para obtener más información sobre los tipos de datos en Athena, consulte Tipos de datos en Amazon Athena en la Guía del usuario de Amazon Athena.
Para obtener más información sobre cómo funcionan las consultas SQL en Athena, consulte la referencia de SQL para Amazon Athena en la Guía del usuario de Amazon Athena.
Cada pestaña muestra ejemplos de cómo buscar en los tipos de recursos especificados y los elementos asociados con Athena.