♪♪ Hola a todos. Soy Maxime Beunier. Soy un defensor del desarrollador en MongoDB, con sede en París. Estoy muy feliz de estar hablando hoy en GraphQL Galaxy, y hoy quiero mostrarles cómo construir una API GraphQL sin servidor en menos de siete minutos, así que abróchense los cinturones porque será muy, muy rápido.
Así que al comienzo de la COVID, como todos saben, fue hace aproximadamente dos años, mi idea era comenzar a construir algunos gráficos y algunas API para mostrar los datos y hacer que todos estén al tanto y que los datos estén disponibles para todos, así que terminé construyendo una API REST, una API GraphQL y algunos gráficos de MongoDB Atlas, como pueden ver aquí, y encontrarán los enlaces a todo eso en la última diapositiva de esta presentación.
Así que, me inspiré en la Universidad John Hopkins y sus gráficos, así que ellos proporcionan, en los términos de uso aquí, un repositorio de GitHub. Este repositorio, lo siento, se ve así, es solo un repositorio muy simple con algunos archivos CSV. Como pueden ver en la carpeta de series temporales, ellos proporcionan cinco archivos, el global, que es para todos los países, y algunos específicos para los Estados Unidos con más detalles para los Estados Unidos. Los archivos se ven todos iguales, se ven así, básicamente, saben, estado, provincia, país, región, latitud, longitud, y dos puntos para cada fecha, y si importan esos archivos en MongoDB utilizando, por ejemplo, la herramienta mongoinport que admite CSV, terminarán con un esquema absolutamente terrible, así que no querrán hacer eso.
En su lugar, querrán, por ejemplo, trabajar con fechas como esta en lugar de ser una clave. Querrán que sea un valor y preferiblemente una fecha, y también querrán trabajar con, como, datos geoespaciales, por ejemplo, para la localización, por lo que es más compatible en los gráficos de MongoDB, por ejemplo, y para índices 2D o este tipo de cosas. También hay otro archivo llamado tabla de búsqueda donde tienen más información sobre los países, como, por ejemplo, la población y algunos códigos de país, etc. Así que también quería esto en la mezcla, así que terminé haciendo algunos scripts de Python, que también están disponibles en uno de los enlaces, y al final terminé con algunos documentos como este, donde tienen, como, para cada país, tienen un montón de campos, saben, para describir a qué se relacionan los datos, una fecha y los valores para esa fecha en particular, ¿verdad? Así que al final, tengo esto, saben, un país, un lugar, una fecha para una fecha en particular y, saben, los números para ese día en particular.
Así que construyamos ahora una API GraphQL basada en esto, como pueden ver, terminé con, como, esas cinco colecciones aquí en la parte inferior, y voy a trabajar con la global solo para mostrarles cómo hacerlo. ¡Vamos a hackear! Para hacer esto, me estoy moviendo ahora a MongoDB Atlas, donde pueden alojar sus bases de datos de MongoDB en la nube de su elección, y tengo este clúster en producción aquí llamado COVID-19. Ahora me voy a Realm, que es el lugar donde pueden construir su aplicación, su aplicación sin servidor, que se mantendrá y vivirá sobre su clúster de MongoDB Atlas. Voy a crear una nueva aplicación que estará en producción. Como pueden ver, la voy a llamar Galaxy, por ejemplo. La voy a vincular al clúster real en producción y la voy a desplegar en Irlanda porque quiero que esté en Irlanda porque el clúster también está en Irlanda, así que, como, ambos están en el mismo lugar. Como pueden ver aquí, tienen un montón de opciones, y tengo desencadenantes, también tengo una sincronización, si quieren sincronizar datos en dispositivos móviles, por ejemplo, pero me voy a quedar con GraphQL. Voy a hacer clic aquí en Generar esquema porque GraphQL se basa en esquema, así que necesito generar un esquema que me lleva de vuelta a las reglas. En las reglas, puedo seleccionar mi colección aquí, global. Puedo decir que un usuario puede leer todos los datos porque estoy haciendo una API pública aquí. Configurar. Sí, quiero guardar. Entendido. Voy a generar el esquema. Voy a hacer clic aquí en Generar esquema solo para la colección global y voy a decir Generar esquema. Ahora tengo un esquema que se ha generado. Veo que falta el estado, así que puedo copiar y pegar el país, por ejemplo, y también puedo modificar el esquema como desee.
Comments