GraphQL es un gran problema: ¿por qué no es el estándar de la industria para consultar bases de datos?

¿No pudiste asistir a Transform 2022? ¡Vea todas las sesiones de la cumbre en nuestra biblioteca a pedido ahora! Mira aquí.

GraphQL se está convirtiendo rápidamente en el lenguaje de consulta de referencia para que las empresas interactúen con sus datos. Aunque la gestión de datos es una de las principales preocupaciones de muchas empresas, muchas personas no entienden realmente qué hace GraphQL o por qué es tan popular.

En promedio, el mundo genera alrededor de 2,5 quintillones de bytes de datos por día. Las empresas necesitan una forma de recopilar estos datos y usarlos de manera efectiva. Se genera una gran cantidad de datos en las aplicaciones (por ejemplo, una aplicación de servicio al cliente para teléfonos inteligentes que le permite a los clientes decirle si están contentos o si tienen problemas y necesitan ayuda para solucionarlos). Las aplicaciones necesitan una forma de pasar información al backend; es decir, herramientas de gestión y almacenamiento de datos. Luego, los datos se pueden analizar para descubrir problemas y desarrollar soluciones. Y por supuesto, es bidireccional. Las aplicaciones no solo envían datos a los backends, sino que las aplicaciones necesitan datos del backend. Por ejemplo, recomendaciones, estado de entrega, saldos de cuentas. Y para eso está GraphQL: obtener datos hacia y desde el backend. Esta es una API más moderna que conecta aplicaciones a backends.

Si bien muchos líderes tecnológicos han oído hablar de GraphQL, probablemente hayan oído mucho más sobre SQL (lenguaje de consulta estructurado). SQL es esencialmente el estándar de la industria para consultar bases de datos, aunque GraphQL está creciendo en popularidad.

¿Cómo se compara GraphQL con SQL? ¿Hay alguna manera de obtener los beneficios de ambos al ejecutar consultas?

GraphQL tiene un formato relativamente simple y legible para el acceso a datos. El formato único permite algo llamado "anidación". Anidar es como hacer una pregunta dentro de otra pregunta para obtener una respuesta más específica. Por ejemplo, en lugar de simplemente solicitar una lista de todos los perros en un refugio en particular, puede solicitar una lista de todos los perros y detalles anidados sobre las razas de esos perros (tomados de otro, o incluso de un tercio). fuente de datos del partido).

La capacidad de GraphQL para anidar consultas permite que un desarrollador front-end recupere información relevante de una API en una sola consulta. Dado que GraphQL es casi un lenguaje de consulta universal, que maneja fácilmente diferentes fuentes de datos, también puede consultar varias API y otras fuentes de datos al mismo tiempo. Por lo tanto, GraphQL es el lenguaje de consulta adecuado para backends heterogéneos, es decir, backends con diferentes tipos de fuentes de datos además de bases de datos.

SQL es extremadamente popular como lenguaje de consulta para bases de datos. Desafortunadamente, no funciona para consultas anidadas sobre datos heterogéneos de la misma manera que lo hace GraphQL. Además, la sintaxis de SQL puede ser complicada. Finalmente, SQL nunca tuvo la intención de ser universal. SQL funciona muy bien para diferentes bases de datos, pero no tanto para las API.

GraphQL frente a SQL en acción

Supongamos que está trabajando para reabastecer el inventario de su empresa y necesita saber el número de seguimiento y la fecha de entrega prevista para dos pedidos diferentes enviados por dos empresas diferentes. GraphQL podría obtener toda esta información en una sola consulta.

GraphQL también le muestra esta información en una estructura jerárquica que facilita ver la relación entre los elementos de datos que ha solicitado. En otras palabras, puede ver que la fecha de entrega de su paquete está relacionada con el número de seguimiento que recibió.

Para SQL, es posible que deba consultar su base de datos para obtener información general sobre los dos comandos diferentes. Luego, es posible que deba revisar esta información para encontrar los nombres de las compañías de envío, seguido de otra solicitud a cada compañía de envío para obtener números de seguimiento. Finalmente, dependiendo del número de seguimiento, puede realizar otra solicitud para obtener las fechas de entrega previstas. Obtener toda esta información requeriría una gran cantidad de código y podría no ser fácil obtener la sintaxis correcta. Personalmente, he trabajado con bases de datos SQL durante décadas, e incluso a menudo tengo que investigar la sintaxis de consultas complejas.

¿Por qué SQL sigue siendo tan popular? ...

GraphQL es un gran problema: ¿por qué no es el estándar de la industria para consultar bases de datos?

¿No pudiste asistir a Transform 2022? ¡Vea todas las sesiones de la cumbre en nuestra biblioteca a pedido ahora! Mira aquí.

GraphQL se está convirtiendo rápidamente en el lenguaje de consulta de referencia para que las empresas interactúen con sus datos. Aunque la gestión de datos es una de las principales preocupaciones de muchas empresas, muchas personas no entienden realmente qué hace GraphQL o por qué es tan popular.

En promedio, el mundo genera alrededor de 2,5 quintillones de bytes de datos por día. Las empresas necesitan una forma de recopilar estos datos y usarlos de manera efectiva. Se genera una gran cantidad de datos en las aplicaciones (por ejemplo, una aplicación de servicio al cliente para teléfonos inteligentes que le permite a los clientes decirle si están contentos o si tienen problemas y necesitan ayuda para solucionarlos). Las aplicaciones necesitan una forma de pasar información al backend; es decir, herramientas de gestión y almacenamiento de datos. Luego, los datos se pueden analizar para descubrir problemas y desarrollar soluciones. Y por supuesto, es bidireccional. Las aplicaciones no solo envían datos a los backends, sino que las aplicaciones necesitan datos del backend. Por ejemplo, recomendaciones, estado de entrega, saldos de cuentas. Y para eso está GraphQL: obtener datos hacia y desde el backend. Esta es una API más moderna que conecta aplicaciones a backends.

Si bien muchos líderes tecnológicos han oído hablar de GraphQL, probablemente hayan oído mucho más sobre SQL (lenguaje de consulta estructurado). SQL es esencialmente el estándar de la industria para consultar bases de datos, aunque GraphQL está creciendo en popularidad.

¿Cómo se compara GraphQL con SQL? ¿Hay alguna manera de obtener los beneficios de ambos al ejecutar consultas?

GraphQL tiene un formato relativamente simple y legible para el acceso a datos. El formato único permite algo llamado "anidación". Anidar es como hacer una pregunta dentro de otra pregunta para obtener una respuesta más específica. Por ejemplo, en lugar de simplemente solicitar una lista de todos los perros en un refugio en particular, puede solicitar una lista de todos los perros y detalles anidados sobre las razas de esos perros (tomados de otro, o incluso de un tercio). fuente de datos del partido).

La capacidad de GraphQL para anidar consultas permite que un desarrollador front-end recupere información relevante de una API en una sola consulta. Dado que GraphQL es casi un lenguaje de consulta universal, que maneja fácilmente diferentes fuentes de datos, también puede consultar varias API y otras fuentes de datos al mismo tiempo. Por lo tanto, GraphQL es el lenguaje de consulta adecuado para backends heterogéneos, es decir, backends con diferentes tipos de fuentes de datos además de bases de datos.

SQL es extremadamente popular como lenguaje de consulta para bases de datos. Desafortunadamente, no funciona para consultas anidadas sobre datos heterogéneos de la misma manera que lo hace GraphQL. Además, la sintaxis de SQL puede ser complicada. Finalmente, SQL nunca tuvo la intención de ser universal. SQL funciona muy bien para diferentes bases de datos, pero no tanto para las API.

GraphQL frente a SQL en acción

Supongamos que está trabajando para reabastecer el inventario de su empresa y necesita saber el número de seguimiento y la fecha de entrega prevista para dos pedidos diferentes enviados por dos empresas diferentes. GraphQL podría obtener toda esta información en una sola consulta.

GraphQL también le muestra esta información en una estructura jerárquica que facilita ver la relación entre los elementos de datos que ha solicitado. En otras palabras, puede ver que la fecha de entrega de su paquete está relacionada con el número de seguimiento que recibió.

Para SQL, es posible que deba consultar su base de datos para obtener información general sobre los dos comandos diferentes. Luego, es posible que deba revisar esta información para encontrar los nombres de las compañías de envío, seguido de otra solicitud a cada compañía de envío para obtener números de seguimiento. Finalmente, dependiendo del número de seguimiento, puede realizar otra solicitud para obtener las fechas de entrega previstas. Obtener toda esta información requeriría una gran cantidad de código y podría no ser fácil obtener la sintaxis correcta. Personalmente, he trabajado con bases de datos SQL durante décadas, e incluso a menudo tengo que investigar la sintaxis de consultas complejas.

¿Por qué SQL sigue siendo tan popular? ...

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow