Qué es Firebase

Firebase es un servicio que originalmente proveía una base de datos en tiempo real, como Parse, pero énfasis en instantaneo. Fue comprado por Google y ahora tiene montón de otras cosas, entre lo más destacable, las notificaciones push (las antiguas GCM ahora son Firebase Cloud Message) y el almacenamiento en la nube de archivos (demasiado simple desde android, son 2 líneas). Google Analytics también tiene algo en Firebase ahora, hay un servicio de testeo, otro de hosting, etc. En general todo tiene una versión gratis, que para cualquier proyecto que esté empezando o todavía no genere dinero, queda como anillo al dedo (excepto el servicio de testeo, ese siempre se paga).

Cómo funciona la base de datos en tiempo real

Funciona genial, me arriesgo a decir que tiene unos 200 milisegundos de diferencia de lo que ocurrió en un usuario y que se refleje el cambio a los clientes que estén escuchando. Digo a propósito "que estén escuchando", porque ese es el funcionamiento, ya sea si el cliente está escribiendo o sólo leyendo, el cambio ocurre en la base de datos y todos los clientes que están "suscritos" o "escuchando" esos cambios reciben la actualización de forma inmediata. Para esto en Android Firebase provee un sdk que es muy simple de usar.

¿Por qué subir un json a Firebase?

La base de datos en tiempo real tiene una estructura no relacional, funciona básicamente con nodos padres e hijos nodos. Si uno quiere rápidamente poblar la base de datos en tiempo real, puede importar un JSON a Firebase. Por ejemplo, si queremos construir un ecommerce, podemos poblar todos nuestros productos a través de un archivo JSON en vez de escribirlos uno a uno en la página web/consola de Firebase.

Me topé con que no hay documentación específica para aquello, y con que la estructura del JSON a veces se puede complicar. Esto me impulsó a hacer este minitutorial para un pokedex. Les dejo el vídeo para que aprendan cómo importarlo y el JSON para que puedan ver la estructura que ocupé.

Herramientas útiles

Siempre tomen en cuenta el ejemplo, la data inicial del archivo con el resultado, pero de todas formas éstas herramientas les podrían ayudar:

  1. Dar formato jsonformatter
  2. Editor de json en línea jsoneditoronline
  3. Generar data random randomdatagenerator

Por último, si te llama la atención Firebase no puedo dejar de mencionar a Firebase-UI es una librería en beta del propio Firebase que permite simplificar increíblemente los procesos de generar listas con data de la base de datos, hacer login con redes sociales y hace poco sacaron lo mismo para el almacenamiento de archivos.

Share Button

Emprendedor que se graduó de sociología en la PUC, aprendió a desarrollar para sacar adelante sus proyectos. Ahora es desarrollador android full time y profesor de Desafío Latam. Fue el desarrollador Android de Proplanner un software para la gestión colaborativa entre profesionales de la construcción para obras de alta envergadura Ganó financiamiento en la incubadora de negocios de Microsoft (Imagine Business Lab) con su proyecto Smartrace acerca de trazabilidad para productos agrícolas.