Masterclass de GraphQL Medley para construir aplicaciones nativas de la nube con una base de datos SQL distribuida de código abierto

Rate this content
Bookmark

YugateDB es una popular base de datos SQL distribuida de código abierto diseñada y construida específicamente para aplicaciones nativas de la nube. YugateDB permite a los desarrolladores escalar fácilmente las cargas de trabajo de RDBMS para aplicaciones a escala de internet, al mismo tiempo que maneja nativamente las interrupciones de la infraestructura en la nube y admite implementaciones en múltiples regiones y centros de datos. En este masterclass, los participantes obtendrán experiencia práctica implementando aplicaciones GraphQL utilizando tres de los motores GraphQL más populares: Hasura, Prisma y Spring GraphQL, conectados a la base de datos YugateDB.

Este masterclass proporcionará guías de inicio rápido para desarrolladores GraphQL que deseen comenzar con YugateDB. El masterclass incluirá pasos para crear una instancia de base de datos YugateDB, configurar la base de datos para el motor GraphQL correspondiente y las mejores prácticas para escribir las consultas GraphQL para YugateDB. A través de esta sesión del masterclass, los desarrolladores conocerán todos los conceptos principales para comenzar con YugateDB y GraphQL y resolver casos de uso empresariales utilizando YugateDB.

FAQ

SQL distribuido en Yugabyte se refiere a una base de datos que une las características de SQL tradicional, como transacciones ACID y consultas SQL consistentes, con las ventajas de los sistemas NoSQL, como la escalabilidad horizontal y la alta disponibilidad.

Para optimizar el rendimiento de las consultas de GraphQL con SQL distribuido, se pueden utilizar estrategias como agregar índices para acelerar las búsquedas, optimizar el orden de las uniones en las consultas y asegurarse de que las operaciones sean eficientes en términos de uso de recursos como CPU y memoria.

Yugabyte DB combina las características sólidas de SQL de bases como Postgres con la escalabilidad horizontal y la alta disponibilidad de los sistemas NoSQL. Es ideal para aplicaciones nativas de la nube que requieren tanto integridad de datos como capacidad de manejar grandes volúmenes de operaciones.

Yugabyte DB es adecuada para aplicaciones nativas de la nube que necesitan escalar de manera efectiva mientras mantienen características de SQL robustas, seguridad y cumplimiento de transacciones ACID, especialmente útil en escenarios de alto crecimiento y alta demanda como servicios financieros, retail y medios de comunicación.

Yugabyte DB asegura la resiliencia y disponibilidad mediante su capacidad para ejecutar en múltiples nodos y regiones, proporcionando sincronización de datos y tolerancia a fallos. Esto permite que las aplicaciones sigan funcionando sin interrupciones incluso en caso de fallo de un nodo o una región.

Nikhil Chandrappa
Nikhil Chandrappa
Eric Pratt
Eric Pratt
Marko Rajcevic
Marko Rajcevic
Taylor Mull
Taylor Mull
155 min
06 Dec, 2021

Comments

Sign in or register to post your comment.

Video Summary and Transcription

El masterclass de GraphQL Medley cubre SQL distribuido, YugateDB y servidores GraphQL populares. YugateDB une la brecha entre los sistemas SQL y NoSQL, ofreciendo características SQL sólidas y escalabilidad horizontal. Se integra perfectamente con GraphQL y admite implementaciones regionales y multi-nube. El masterclass explora la creación de instancias de Hasura y YugateDB, la configuración del clúster y la base de datos, la aplicación de migraciones y el trabajo con Hasura, Prisma y Apollo. También cubre la escalabilidad de las cargas de trabajo de GraphQL con YugateDB, la optimización de consultas y el rendimiento.

1. Introducción al Masterclass y Agenda

Short description:

¡Bienvenidos al Masterclass de GraphQL Medley! Cubriremos SQL Distribuido, Yugabyte y Servidores GraphQL Populares. Soy Eric Pratt, un ingeniero de soluciones senior en Yugibyte. Conmigo están Nikhil, un ingeniero en el equipo de ecosistema, y Marco Rejcic, un ingeniero de soluciones en Ubite. Daremos una visión general de las bases de datos de SQL distribuido y GraphQL, y luego nos sumergiremos en sesiones prácticas. Únanse a nosotros para una aplicación de encuestas en tiempo real, una aplicación de publicaciones sociales y una aplicación de exploración espacial. Si hay tiempo, discutiremos cómo optimizar el rendimiento de las consultas de GraphQL con SQL distribuido.

Bienvenidos a todos. Mi nombre es Eric Pratt. Hoy vamos a repasar nuestro Masterclass de GraphQL. Comenzaremos con SQL Distribuido, Yugabyte y algunos Servidores GraphQL populares. Como dije, mi nombre es Eric Pratt. Soy un ingeniero de soluciones senior aquí en Yugibyte en el equipo de cloud. Anteriormente, fui ingeniero de soporte premium en Datastats. Tengo a otros dos compañeros conmigo y les permitiré que se presenten.

Hola a todos, mi nombre es Nikhil. Soy uno de los ingenieros en el equipo de ecosistema. Construimos integraciones con herramientas populares para desarrolladores como GraphQL, Spring Framework, y otros proyectos nativos de la cloud. Si tienen alguna pregunta sobre las integraciones con SQL distribuido y GraphQL. Pueden contactarnos en nuestro Slack. Eso es lo que hacemos a diario en nuestros esfuerzos de ingeniería. Antes de esto, estuve en Ubuntu. Fui arquitecto senior de datos allí, construyendo soluciones nativas de la cloud. Gracias, Brad.

Hola a todos. Mi nombre es Marco Rejcic. También soy un ingeniero de soluciones aquí en Ubite. Anteriormente, trabajé en ingeniería de soluciones en Oracle, enfocado tanto en tecnologías de la cloud como en tecnologías locales. Estoy emocionado de hablarles hoy. Como mencionó Nikhil, somos muy activos en nuestro canal de Slack de Community. Así que si pueden descargar Ubite localmente o usar la cloud o lo que sea, si tienen alguna pregunta, no duden en encontrarnos allí. Esta es nuestra agenda del masterclass. Les daremos una breve introducción, comenzando con las bases de datos de SQL distribuido y GraphQL. Haremos una breve descripción de nuestra base de datos de código abierto, nuestra oferta de código abierto para Ubite. Y luego haremos algunas sesiones prácticas para implementar esto. Marco y Asura harán una aplicación de encuestas en tiempo real. Yo haré una aplicación de publicaciones sociales con Prisma y Ubite. Y finalmente, Nico hará una aplicación de exploración espacial, que creo que es bastante genial, con la plataforma Apollo y Ubite. Al final de todo eso, si tenemos tiempo, repasaremos cómo optimizar el rendimiento de las consultas de GraphQL con SQL distribuido y algunos consejos y trucos que hemos descubierto mientras trabajamos con clientes durante el último año aproximadamente.

2. Introducción a GraphQL y Lugabyte DB

Short description:

Comenzando con GraphQL, puedes consultar y modificar datos a través de construcciones de GraphQL, evolucionar la API sin versionar y utilizar paginación y filtrado integrados. GraphQL es un lenguaje de consulta robusto para tu API, que admite tanto GraphQL como API REST genéricas. Se proporcionan ejemplos para demostrar la recuperación de datos mediante GraphQL. Exploraremos diferentes frameworks de GraphQL como Casura, Prisma y Apollo en relación con Lugabyte. Lugabyte DB es una base de datos SQL distribuida de código abierto que une el espacio entre los sistemas SQL tradicionales y NoSQL, con el objetivo de ser la base de datos preferida para aplicaciones nativas de la nube. Los fundadores tienen experiencia con Oracle, Cassandra y HPASE en Facebook, donde se encontraron con la necesidad de sistemas NoSQL escalables debido al rápido crecimiento de usuarios.

Comenzando con GraphQL, tenemos tu aplicación, tenemos tu servidor GraphQL, nuestra base de datos. Tenemos capas abstractas que cubren nuestra base de datos para que puedas consultar y modificar datos a través de las construcciones de GraphQL, construir tu esquema y evolucionar los modelos de dominio. Podemos evolucionar la API sin versionar, lo cual creo que es bastante bueno. Y luego tienes paginación y filtrado integrados. Llamémoslo fuentes de datos dispares y finalmente soporte para eventos.

Entonces, GraphQL, es solo un lenguaje de consulta para tu API, construyes tus consultas, puedes obtener exactamente lo que necesitas. Puedes combinar varios recursos en una sola solicitud. Es bastante robusto. Y como dijimos anteriormente, puedes evolucionar tu API sin versionar y admite sistemas basados en eventos. Aquí tenemos un ejemplo de una consulta. Si están familiarizados con GraphQL, esto debería ser bastante familiar. Y luego, ya sabes, tiene tus API REST genéricas. Por lo tanto, tus GET, POST, admite todos esos. Aquí hay algunos ejemplos que tenemos sobre cómo funcionan con una respuesta particular. Y luego, para GraphQL, tenemos nuestras formas de recuperar datos, ¿verdad? Que son nuestras publicaciones. Puedes ver la solicitud allí. Aquí está la consulta que ejecutaríamos en este lado. Entonces, digamos que queremos obtener el nombre del autor y los artículos de una tabla en particular, y luego tenemos esa respuesta aquí que obtendrás. Y a medida que trabajamos en muchos de estos ejemplos, o en muchos de estos talleres diferentes, recorreremos bastantes de estos, por lo que te familiarizarás con ellos para los diferentes GraphQL, Casura, Prisma y luego Apollo. Por lo tanto, podrás ver qué tiene cada uno de ellos y cómo interactúan con Lugabyte. Es bastante genial. Creo que les va a gustar.

Así que voy a cederle la palabra a Marko aquí, ya que repasaremos la base de datos SQL distribuida de código abierto y los fundamentos de Lugabyte. Antes de entrar en la parte divertida de la demostración en vivo, queríamos poner a todos al día sobre lo que estamos haciendo aquí en Lugabyte DB, por qué creemos que esto es importante para las aplicaciones nativas de la nube y qué es realmente Lugabyte DB para aquellos que no están familiarizados. Lugabyte DB es una base de datos SQL distribuida 100% de código abierto. Nuestro objetivo es convertirla en la base de datos preferida para aplicaciones nativas de la nube. Realmente estamos tratando de unir los dos mundos entre SQL tradicional y las fortalezas que esos tipos de sistemas proporcionan con las fortalezas de los sistemas NoSQL típicos. Nuestros fundadores tienen una amplia experiencia tanto con Oracle como con la implementación de Cassandra y HPASE en Facebook a mediados de la década de 2000. Y si conocen algo sobre Facebook en la década de 2000, eso es más o menos cuando tuvieron un crecimiento de usuarios increíble y realmente tuvieron que comenzar a moverse hacia sistemas NoSQL porque los sistemas de bases de datos tradicionales que estaban utilizando simplemente no podían escalar a lo que querían.

Watch more workshops on topic

Construir con SvelteKit y GraphQL
GraphQL Galaxy 2021GraphQL Galaxy 2021
140 min
Construir con SvelteKit y GraphQL
Top Content
Featured WorkshopFree
Scott Spence
Scott Spence
¿Alguna vez has pensado en construir algo que no requiera mucho código de plantilla con un tamaño de paquete pequeño? En esta masterclass, Scott Spence irá desde el hola mundo hasta cubrir el enrutamiento y el uso de endpoints en SvelteKit. Configurarás una API de GraphQL en el backend y luego usarás consultas de GraphQL con SvelteKit para mostrar los datos de la API de GraphQL. Construirás un proyecto rápido y seguro que utiliza las características de SvelteKit, y luego lo desplegarás como un sitio completamente estático. Este curso es para los curiosos de Svelte que no han tenido una experiencia extensa con SvelteKit y quieren una comprensión más profunda de cómo usarlo en aplicaciones prácticas.

Tabla de contenidos:
- Inicio e introducción a Svelte
- Inicializar el proyecto frontend
- Recorrido por el proyecto esqueleto de SvelteKit
- Configurar el proyecto backend
- Consultar datos con GraphQL
- Recuperación de datos en el frontend con GraphQL
- Estilización
- Directivas de Svelte
- Enrutamiento en SvelteKit
- Endpoints en SvelteKit
- Despliegue en Netlify
- Navegación
- Mutaciones en GraphCMS
- Envío de mutaciones GraphQL a través de SvelteKit
- Preguntas y respuestas
Cómo Resolver Problemas del Mundo Real con Remix
Remix Conf Europe 2022Remix Conf Europe 2022
195 min
Cómo Resolver Problemas del Mundo Real con Remix
Featured Workshop
Michael Carter
Michael Carter
- ¿Errores? Cómo renderizar y registrar tus errores del servidor y del clientea - Cuándo devolver errores vs lanzar excepcionesb - Configurar servicios de registro como Sentry, LogRocket y Bugsnag- ¿Formularios? Cómo validar y manejar formularios de varias páginasa - Usar zod para validar los datos del formulario en tu acciónb - Pasar por formularios de varias páginas sin perder datos- ¿Atascado? Cómo solucionar errores o funciones faltantes en Remix para que puedas continuara - Usar patch-package para solucionar rápidamente tu instalación de Remixb - Mostrar herramienta para gestionar múltiples parches y seleccionar solicitudes de extracción abiertas- ¿Usuarios? Cómo manejar aplicaciones de varios inquilinos con Prismaa - Determinar el inquilino por el host o por el usuariob - Base de datos múltiples o base de datos única/múltiples esquemasc - Asegura que los datos del inquilino siempre estén separados de los demás
Seguridad de tipo de extremo a extremo con React, GraphQL y Prisma
React Advanced Conference 2022React Advanced Conference 2022
95 min
Seguridad de tipo de extremo a extremo con React, GraphQL y Prisma
Featured WorkshopFree
Sabin Adams
Sabin Adams
En este masterclass, obtendrás una visión de primera mano de lo que es la seguridad de tipo de extremo a extremo y por qué es importante. Para lograr esto, construirás una API de GraphQL utilizando herramientas modernas y relevantes que serán consumidas por un cliente de React.
Prerrequisitos: - Node.js instalado en tu máquina (12.2.X / 14.X)- Se recomienda (pero no es obligatorio) utilizar VS Code para las tareas prácticas- Un IDE instalado (se recomienda VSCode)- (Bueno tener) *Un conocimiento básico de Node.js, React y TypeScript
GraphQL para Desarrolladores de React
GraphQL Galaxy 2022GraphQL Galaxy 2022
112 min
GraphQL para Desarrolladores de React
Featured Workshop
Roy Derks
Roy Derks
Hay muchas ventajas en utilizar GraphQL como fuente de datos para el desarrollo frontend, en comparación con las API REST. Nosotros, los desarrolladores, por ejemplo, necesitamos escribir mucho código imperativo para recuperar datos y mostrarlos en nuestras aplicaciones y manejar el estado. Con GraphQL, no solo puedes reducir la cantidad de código necesario para la obtención de datos y la gestión del estado, sino que también obtendrás una mayor flexibilidad, mejor rendimiento y, sobre todo, una mejor experiencia de desarrollo. En este masterclass aprenderás cómo GraphQL puede mejorar tu trabajo como desarrollador frontend y cómo manejar GraphQL en tu aplicación frontend de React.
Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
React Summit 2022React Summit 2022
173 min
Construye una aplicación WordPress sin cabeza con Next.js y WPGraphQL
Top Content
WorkshopFree
Kellen Mace
Kellen Mace
En esta masterclass, aprenderás cómo construir una aplicación Next.js que utiliza Apollo Client para obtener datos de un backend de WordPress sin cabeza y usarlo para renderizar las páginas de tu aplicación. Aprenderás cuándo debes considerar una arquitectura de WordPress sin cabeza, cómo convertir un backend de WordPress en un servidor GraphQL, cómo componer consultas usando el IDE GraphiQL, cómo colocar fragmentos GraphQL con tus componentes, y más.
Modelado de Bases de Datos Relacionales para GraphQL
GraphQL Galaxy 2020GraphQL Galaxy 2020
106 min
Modelado de Bases de Datos Relacionales para GraphQL
Top Content
WorkshopFree
Adron Hall
Adron Hall
En esta masterclass profundizaremos en el modelado de datos. Comenzaremos con una discusión sobre varios tipos de bases de datos y cómo se mapean a GraphQL. Una vez que se haya establecido esa base, el enfoque se desplazará a tipos específicos de bases de datos y cómo construir modelos de datos que funcionen mejor para GraphQL en varios escenarios.
Índice de contenidosParte 1 - Hora 1      a. Modelado de Datos de Bases de Datos Relacionales      b. Comparando Bases de Datos Relacionales y NoSQL      c. GraphQL con la Base de Datos en menteParte 2 - Hora 2      a. Diseño de Modelos de Datos Relacionales      b. Relación, Construcción de Tablas Multijoin      c. Complejidades de Consulta de Modelado de Datos Relacionales y GraphQL
Prerrequisitos      a. Herramienta de modelado de datos. El formador utilizará dbdiagram      b. Postgres, aunque no es necesario instalar esto localmente, ya que estaré utilizando una imagen de Dicker de Postgres, de Docker Hub para todos los ejemplos      c. Hasura

Check out more articles and videos

We constantly think of articles and videos that might spark Git people interest / skill us up or help building a stellar career

De GraphQL Zero a GraphQL Hero con RedwoodJS
GraphQL Galaxy 2021GraphQL Galaxy 2021
32 min
De GraphQL Zero a GraphQL Hero con RedwoodJS
Top Content
Todos amamos GraphQL, pero puede ser desalentador poner en marcha un servidor y mantener tu código organizado, mantenible y testeable a largo plazo. ¡No más! Ven a ver cómo paso de un directorio vacío a una API GraphQL completamente desarrollada en cuestión de minutos. Además, verás lo fácil que es usar y crear directivas para limpiar aún más tu código. ¡Vas a amar aún más GraphQL una vez que hagas las cosas Redwood Easy!
Estado Local y Caché del Servidor: Encontrando un Equilibrio
Vue.js London Live 2021Vue.js London Live 2021
24 min
Estado Local y Caché del Servidor: Encontrando un Equilibrio
Top Content
¿Cuántas veces has implementado el mismo flujo en tu aplicación: verificar si los datos ya se han obtenido del servidor, si es así - renderizar los datos, si no - obtener estos datos y luego renderizarlos? Creo que lo he hecho más de diez veces yo mismo y he visto la pregunta sobre este flujo más de cincuenta veces. Desafortunadamente, nuestra biblioteca de gestión de estado predeterminada, Vuex, no proporciona ninguna solución para esto.Para la aplicación basada en GraphQL, había una alternativa para usar el cliente Apollo que proporcionaba herramientas para trabajar con la caché. Pero, ¿qué pasa si usas REST? Afortunadamente, ahora tenemos una alternativa de Vue a una biblioteca de react-query que proporciona una buena solución para trabajar con la caché del servidor. En esta charla, explicaré la distinción entre el estado de la aplicación local y la caché del servidor local y haré algo de codificación en vivo para mostrar cómo trabajar con este último.
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
GraphQL Galaxy 2021GraphQL Galaxy 2021
33 min
Baterías Incluidas Reimaginadas - El Resurgimiento de GraphQL Yoga
El Guild ha lanzado recientemente Envelop - un nuevo y moderno Framework de Servidor GraphQL y sistema de plugins. En esta charla compartiré una breve descripción de Envelop y por qué probablemente deberías actualizar tu servidor GraphQL existente a él.
Aplicaciones sólidas de React y GraphQL para personas con prisa
GraphQL Galaxy 2022GraphQL Galaxy 2022
29 min
Aplicaciones sólidas de React y GraphQL para personas con prisa
En esta charla, veremos algunas de las opciones modernas para construir una aplicación full-stack de React y GraphQL con convenciones sólidas y cómo esto puede ser de enorme beneficio para ti y tu equipo. Nos enfocaremos específicamente en RedwoodJS, un framework full stack de React que a menudo se llama 'Ruby on Rails para React'.
Deja paso a los resolvers: un nuevo enfoque para la ejecución de GraphQL
GraphQL Galaxy 2022GraphQL Galaxy 2022
16 min
Deja paso a los resolvers: un nuevo enfoque para la ejecución de GraphQL
Aunque GraphQL es declarativo, los resolvers operan campo por campo, capa por capa, lo que a menudo resulta en un trabajo innecesario para la lógica de tu negocio, incluso cuando se utilizan técnicas como DataLoader. En esta charla, Benjie presentará su visión de una nueva estrategia de ejecución de GraphQL de propósito general cuyo enfoque holístico podría conducir a ganancias significativas en eficiencia y escalabilidad para todas las APIs de GraphQL.