|
6 min de lectura
|

SQL on FHIR: Cómo Funciona, Beneficios y Casos de Uso

Resumir este artículo con:
ChatGPTPerplexityClaudeGrok

Demuestre la implementación ELT para PostgreSQL usando Aidbox, el ViewDefinition Builder de código abierto y Grafana.

Afrontemos los hechos: FHIR se ha consolidado firmemente con cantidades crecientes de datos de salud en formato FHIR. Pero ¿cuál es la forma más eficiente de obtener información útil a partir de estos datos?

En esta entrada del blog, exploraremos cómo tender un puente entre FHIR y SQL mediante la nueva especificación SQL on FHIR v2, haciendo que los datos FHIR no solo sean interoperables, sino también consultables y analizables.

A medida que lea, descubrirá:

  • ¿Qué es SQL on FHIR?
  • ¿Cómo utilizarlo en la práctica?
  • ¿Cómo evolucionará esta tecnología?

Image 1

¿Por qué SQL on FHIR?

FHIR incluye una API de búsqueda integrada, pero no es suficiente para realizar consultas avanzadas sobre datos FHIR. Carece de funcionalidades esenciales como agregaciones, uniones (joins) y otras herramientas de bases de datos que pudieran ser necesarias.

El principal desafío es que los datos FHIR están anidados, lo que supone una diferencia respecto al enfoque tradicional de bases de datos relacionales planas. Esta diferencia dificulta la ejecución de consultas SQL estándar de forma directa. Podría compararse con intentar encajar una clavija cuadrada en un agujero redondo.

Por supuesto, existen tecnologías de bases de datos avanzadas como JSONB en PostgreSQL o Parquet en Spark SQL que pueden gestionar estructuras de datos anidadas. Sin embargo, tanto los usuarios como las herramientas están acostumbrados a trabajar con tablas planas, que son las tradicionales en SQL.

Para solucionar esto, los desarrolladores pueden necesitar crear vistas aplanadas de los datos o utilizar funcionalidades específicas de las bases de datos que admitan estructuras de datos anidadas.

Ahí es donde entra en juego SQL on FHIR.

Image 2

Uniendo Dos Mundos para Desbloquear los Datos FHIR

La especificación SQL on FHIR propone definir vistas aplanadas de datos FHIR de forma estandarizada para que sean portables entre sistemas. Esto significa que se pueden realizar consultas SQL estándar sobre estas vistas aplanadas con facilidad. En pocas palabras, desbloquea los datos para el ecosistema SQL, de manera similar a una caja de herramientas que funciona tanto para clavijas redondas como cuadradas.

El motor SQL on FHIR en Aidbox se encuentra actualmente en versión preliminar, pero está disponible para pruebas y comentarios. Más información

¿Qué es una vista aplanada?

En el contexto de SQL, una vista aplanada es una tabla que presenta los datos en una estructura simplificada de una sola capa. Los desarrolladores e ingenieros de datos pueden definir vistas aplanadas utilizando un subconjunto de expresiones FHIRPath estandarizadas. Esto permite a los consumidores obtener los datos con los que están más familiarizados.

Utilice nuestro ViewDefinition Builder gratuito en línea para convertir datos FHIR almacenados en representación JSON a un formato tabular y plano para un análisis de datos cómodo. Ir al ViewDefinition Builder

Como mencionamos, los datos anidados FHIR están organizados en una estructura jerárquica, donde fragmentos de información están contenidos dentro de otros fragmentos, creando capas de datos relacionados.

A continuación se muestra cómo se estructura un recurso Patient en FHIR: Image 3 Veamos cómo «traducir» datos FHIR complejos a un formato similar a una tabla. Para ello, necesitamos crear una View Definition aplanada para un recurso Patient. En nuestro caso, la vista contendrá los parámetros id del paciente, fecha de nacimiento, género, raza y nombre.

  • Especifique el tipo de recurso que desea aplanar en la fila «from».
  • Utilice la fila «select» para definir las columnas junto con sus expresiones de extracción FHIRPath asociadas.

Image 4 Como resultado, crearemos la siguiente tabla plana: Image 5 Tomemos otro recurso FHIR: Condition: Image 6 Aplanemos el recurso Condition del mismo modo que hicimos con el recurso Patient. La vista contendrá los parámetros id, id del paciente, código, estado, estado de verificación y fecha de registro: Image 7 Como resultado, obtendremos la siguiente tabla plana: Image 8

Comience a usar el Servidor FHIR de Aidbox para almacenamiento de datos, integraciones, analítica sanitaria y más, o contrate a nuestro equipo para cubrir sus necesidades de desarrollo de software.

Datos SQL on FHIR estandarizados

Una vez que disponemos de tablas planas, podemos ejecutar consultas complejas que nos permiten unir, filtrar, ordenar y agregar datos de diversas maneras. También puede utilizar subconsultas, funciones de ventana y otras funcionalidades avanzadas para extraer la información exacta que necesita.

Por ejemplo, utilicemos la vista Condition aplanada anteriormente y busquemos todos los pacientes con una condición de prediabetes mediante una consulta SQL sencilla: Image 9 Como resultado, obtendremos la siguiente tabla plana: Image 10 Ahora vamos a utilizar tanto la vista Patient como la vista Condition para obtener más información. Contemos cuántos hombres y mujeres tienen una condición de prediabetes: Image 11 Esto es lo que obtenemos: Image 12 Ahora busquemos la duración de la condición: Image 13 La tabla plana resultante tiene el siguiente aspecto: SQL Flat table with condition duration Ahora busquemos la duración media de la prediabetes para hombres y mujeres: JSON to count average prediabetes duration Como resultado, descubrimos la duración media de la condición para cada género: SQL average condition duration

Resumen

SQL on FHIR es un enfoque potente que combina el poder de SQL y FHIR, permitiéndole trabajar con datos de salud complejos almacenados en recursos FHIR utilizando herramientas y marcos de consulta SQL familiares.

A continuación, un breve resumen de los beneficios:

  • Decisiones Inteligentes: Destaca en la extracción de información significativa de conjuntos de datos FHIR complejos.
  • Terreno Conocido: Si conoce SQL, lo comprenderá fácilmente.
  • Portabilidad: SQL on FHIR utiliza FHIRPath para definir vistas que pueden usarse en distintos sistemas. La comunidad FHIR puede definir vistas planas y consultas que pueden ejecutarse en cualquier ecosistema basado en SQL.

En general, SQL on FHIR tiende un puente entre los datos anidados FHIR y SQL, ofreciendo una forma optimizada de gestionar y utilizar los datos de salud de manera efectiva.

Aviso Legal

Es importante destacar que el uso de SQL on FHIR no reemplaza la necesidad de las APIs FHIR, que son esenciales para el intercambio de datos entre sistemas sanitarios y para la implementación de estándares de interoperabilidad. SQL on FHIR complementa estas capacidades proporcionando una forma de interactuar con los datos sanitarios en formato FHIR de manera más eficaz para fines analíticos, de investigación y de informes. Es como tener una llave universal que puede abrir muchas puertas, facilitando el trabajo con datos FHIR en diferentes tecnologías.

Para explorar cómo puede aplicarse SQL on FHIR en sus proyectos, considere usar la versión gratuita de Aidbox. Ofrece un entorno completo para probar y experimentar con estas capacidades, proporcionando todas las herramientas necesarias sin limitaciones de funcionalidades.

El Futuro Próximo

El borrador de SQL on FHIR se presentará en septiembre de 2023 en el HL7 FHIR Connectathon 34 en Phoenix, Arizona.

SQL on FHIR v2 es una iniciativa abierta que da la bienvenida a la participación de las partes interesadas. Únase al grupo de trabajo de SQL on FHIR, participe en los debates y contribuya al desarrollo de esta solución.

Para conocer el estado actual del estándar — ViewDefinition, SQLView/SQLQuery y la API estándar run/export/materialize — consulte analítica interoperable con SQL on FHIR.

Health Samurai impulsa activamente el Grupo de Trabajo de SQL on FHIR, en el que también están representados Google, CSIRO, Microsoft, Philips, NCQA, CQLab, Center Square Solutions y Vermonster. El grupo de trabajo está centrado en implementaciones tempranas para construir una solución estandarizada sin bloqueo de proveedor.

El motor SQL on FHIR de Health Samurai está disponible para versión preliminar y pruebas. Si tiene alguna pregunta o caso de uso específico en mente, no dude en compartirlo. Reserve una reunión para verlo en acción. Image 17

Compartir este artículo
Comments
Comments
Sign in
Loading comments...
Subscribe to our blog

Get the latest articles on FHIR, interoperability, and healthcare IT.