Header Ads Widget

Ticker

6/recent/ticker-posts

Tecnología destacada: Presentación de RapidQL

 

¿Qué pasaría si pudiera aprovechar el poder de las consultas sin realizar múltiples viajes de ida y vuelta? Alex Walling y la gente de RapidAPI han respondido exactamente eso. El equipo de desarrollo ha producido una nueva y poderosa adición a la línea de lenguajes de consulta, denominada RapidQL .

RapidQL tiene como objetivo "reducir el código adhesivo y mejorar el rendimiento escribiendo una sola consulta para obtener y transformar datos en un formato con el que su aplicación pueda trabajar". ¿Cómo se logra esto exactamente? Nos sumergiremos en los detalles técnicos y descubriremos la historia detrás del desarrollo de RapidQL.

Jugar "Fetch" se ha vuelto mucho más divertido

RapidQL sobresale en desbloquear el poder de múltiples API simultáneamente. El lenguaje incorpora anidamiento para procesar múltiples entradas con una sola solicitud. Esto facilita la extracción de datos de diferentes fuentes simultáneamente. Además, los datos devueltos se pueden utilizar simultáneamente para realizar consultas posteriores.

 

Usar RapidQL para obtener un usuario de una base de datos y luego realizar la verificación por correo electrónico y teléfono. Imagen cortesía de RapidAPI .

 

Los desarrolladores pueden ensamblar comandos complejos sin mucho trabajo pesado. En el pasado, se tardaba mucho más en crear operaciones similares. Los desarrolladores hicieron algunas concesiones clave:

  • El código aumentó de tamaño ya que las consultas tomaron muchas más líneas para escribir
  • La eficiencia se vio afectada en cierta medida por este aumento de la carga de trabajo
  • El rendimiento vaciló cuando se agregaron numerosos viajes de ida y vuelta para llamar a conjuntos de datos equivalentes

RapidQL permite a los programadores evitar estos errores. A medida que las aplicaciones y sus dependencias se vuelven cada vez más complejas, ha surgido una clara necesidad de simplificación. Esta es una solución capaz.

Identificación de casos de uso

El potencial de RapidQL es enorme. Se integra a la perfección con el mercado de la compañía de más de 10,000 API públicas . RapidQL en sí es un proyecto de código abierto, lo que lo convierte en una combinación perfecta.

Alex Walling, director de relaciones con desarrolladores de RapidAPI, lo resumió muy bien:

“Nuestro objetivo como empresa es ayudar a los desarrolladores a crear aplicaciones más rápido aprovechando las API. Creemos que esta herramienta ayudará a los desarrolladores a aprovechar más API, más fácilmente, y complementará su uso del mercado RapidAPI ".

RapidQL puede manejar un conjunto diverso de aplicaciones. Sin embargo, realmente brilla en tres áreas: mejora de datos, bases de datos y fusiones de datos de API, y consulta de microservicios. El lenguaje funciona muy bien con archivos CSV grandes y los enriquece de forma granular mediante API. Estas API se pueden utilizar para obtener datos de la tabla y recopilar estados específicos del usuario (piense en los pedidos de FedEx). Una consulta puede hacer esto. RapidQL también puede hacer referencia a colecciones de API, subconjuntos de API específicas y cualquier análisis relevante.

 

Una instantánea del mercado RapidAPI. Imagen cortesía de RapidAPI .

 

Si su aplicación se basa en bases de datos como MySQL, PostgreSQL y MongoDB, ¡no temas! El soporte está en funcionamiento. Simplemente agregue los detalles de conexión de su base de datos a su inicialización de RapidQL. Las consultas RapidQL pueden utilizar recuentos y promedios, entre otros cálculos. Estos se aplican a la siguiente consulta.

Los desarrolladores pueden usar RapidQL para crear aplicaciones simples o complejas. La propuesta de valor empresarial es sólida, al igual que las ventajas técnicas. Examinemos este último un poco más de cerca.

Fundamentos técnicos

RapidQL se crea con JavaScript, y se basa principalmente en la biblioteca PEG.js para la generación de analizadores. Básicamente, esto ayuda a describir las diversas entradas utilizadas en sus consultas. PEG ayuda a convertir las consultas RapidQL en un árbol de ejecución. RapidQL en sí usa la gramática escrita por sus creadores, desafiando el enfoque esquemático visto en primos como GraphQL. Este fue uno de los obstáculos técnicos más difíciles de superar en el desarrollo de RapidQL, pero los resultados han sido impresionantes.

¿Por qué utilizar JavaScript como columna vertebral? Según Walling, la simultaneidad es indispensable. El uso de JavaScript permite a los desarrolladores ejecutar múltiples operaciones superpuestas fuera de secuencia, sin afectar el resultado final. Esto tiene beneficios similares al uso de async en programación. Lo que nos lleva a nuestro siguiente tema: promesas.

RapidQL usa Promise.all para ejecutar numerosas cadenas de consulta juntas. Estas promesas solo pueden tener éxito o fracasar una vez . Las devoluciones de llamada de horneado al idioma facilitan la supervisión del estado. Los desarrolladores pueden realizar devoluciones de llamada correctas con bastante facilidad. Esto es importante cuando se trata de datos, especialmente porque las consultas de RapidQL se basan en resultados. Esto permite lo siguiente:

  • Mejoras en el rendimiento con relativamente poco esfuerzo
  • Basado en red, no basado en CPU, trabajo pesado

En comparación, optar por lenguajes como Python o Java presentaría más problemas. Es más fácil realizar solicitudes de API y ejecutar todos los elementos secundarios del árbol simultáneamente con la implementación de Rapid. Todas las consideraciones contextuales en las consultas son manejadas por Object.assign y optimizadas a través de objetos Proxy () . Esto es crucial para consultas anidadas más grandes.

Manejo de API externas

La profundidad del árbol de consultas tiene el mayor impacto en el rendimiento. RapidAPI nos dice que tres consultas anidadas tendrán el mismo rendimiento cuando se ejecuten sobre uno o cien usuarios. La forma en que se configuran las API y las bases de datos influirá en la ejecución hasta cierto punto. Afortunadamente, RapidQL es flexible si una "API es RESTful y devuelve datos JSON". Walling también compartió que llegará el soporte para conversiones automáticas de XML a JSON.

Introducción a RapidQL

Es bastante fácil saltar al desarrollo de RapidQL. La instalación es muy sencilla y se inicia a través de npm install rapidql . Luego, los desarrolladores pueden probar sus importaciones de RapidQL utilizando el probador de analizador en línea PEG.js (¡gracias, Alex!).

También hemos abordado la integración del lenguaje con el mercado RapidAPI. Esa biblioteca muestra claramente la estructura y los puntos finales de las API públicas compatibles. Puede convertir rápidamente cualquier fragmento en su contraparte RapidQL a través de un menú desplegable. Copie esto rápidamente en cualquier administrador de código para comenzar a experimentar. Jugar con sus consultas le permite consolidar las respuestas de la API.

 

Una vista previa de un fragmento de RapidQL convertido en Marketplace. Imagen cortesía de RapidAPI .

 

El equipo de RapidQL nos presentó un gran ejemplo. Supongamos que desea tomar una dirección IP y señalar su ubicación. Puede integrar una API de geolocalización para revelar esta ubicación y luego usar una API meteorológica para obtener las condiciones actuales de esa ciudad. Esta es una forma de diseñar una consulta de varios pasos. Podemos utilizar muchas otras combinaciones de API para lograr resultados similares. RapidQL garantiza que solo extraemos lo que se necesita para nuestras aplicaciones específicas.

Pensamientos finales

RapidQL es un enfoque fresco y eficaz para abordar algunas de nuestras solicitudes más exigentes. La tecnología combina a la perfección las bases de datos y las API. Quizás lo más emocionante es que hay mucho más por venir para RapidQL: la hoja de ruta promete traer muchas mejoras nuevas, especialmente a medida que los usuarios sigan poniéndose al día. ¡Estamos encantados de monitorear su progreso!

¿Quiere participar en el desarrollo de RapidQL? El proyecto es 100% de código abierto y el equipo invita a las contribuciones de cualquier persona interesada. Puede consultar la documentación de RapidQL aquí y familiarizarse con el lenguaje. Se publica un tablero de proyecto en GitHub y la empresa está ansiosa por incorporar aún más integraciones. ¡Feliz programación!

Publicar un comentario

0 Comentarios