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 datos, HealthLake los datos anidados del FHIR de JSON se someten simultáneamente a un proceso de ETL y se almacenan en el formato de tabla abierta Apache Iceberg en Amazon S3. Cada tipo de recurso de FHIR de su almacén de HealthLake datos se convierte en una tabla, donde se puede consultar mediante Amazon Athena. Las tablas se pueden consultar de forma individual o en grupo mediante consultas. SQL-based Debido a la estructura de los almacenes de datos, sus 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 la creación de 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 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 usar la notación de puntos. Este es un ejemplo sencillo en el que se puede acceder a los valores de
givenyfamily.SELECT name[1].given as FirstName, name[1].family as LastName FROM Patient -
Elemento: MaritalStatus La especificación 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 usar la notación de puntos. Como no es una matriz, no se requiere ningún índice de matriz. Este es un ejemplo sencillo en el que se puede acceder al valor de
text.SELECT maritalstatus.text as MaritalStatus FROM Patient
Para obtener más información sobre cómo acceder a JSON y buscarlas, consulte Cómo consultar JSON en la Guía del usuario de Athena.
Las sentencias de consulta del lenguaje de manipulación de datos (DML) de Athena se basan en Trino. Athena no admite 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 HealthLake almacén de datos. Para obtener más información sobre los tipos de datos en Athena, consulte los 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 de 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 mediante Athena.