Firebase: cómo Google quiere mejorar las aplicaciones a través de los datos

Firebase: cómo Google quiere mejorar las aplicaciones a través de los datos

Firebase es una plataforma de back-end como servicio, que dispone de una serie de herramientas para el desarrollo de aplicaciones: el almacenamiento y sincronización de datos en la nube, medición del comportamiento del usuario y soluciones para monetizar productos.

BBVAOpen4U
|
08 Nov. 2018

Desde comienzos de octubre de 2015, el buscador puso en el mercado las Accelerated Mobile Pages (Páginas Móviles Aceleradas), su estándar abierto y carga rápida para el consumo de información en la web móvil. También dispone de su proyecto Progressive Web Apps, la mezcla entre webs y apps, Y, nuestro protagonista de hoy, Google Firebase, su plataforma SaS (Software como Servicio) para el almacenamiento y sincronización de datos en la nube para aplicaciones. 

Google basa el posicionamiento de producto de Firebase en cuatro grandes patas de negocio, que pretende que sean un catalizador del alojamiento de apps de terceros:

●   Una serie de características para el desarrollo de aplicaciones móviles: Google ofrece almacenamiento de datos en la nube, procesos de autenticación de usuarios, servicio de base de datos, reporte de errores…

●   Servicio de analítica: Google dispone de Firebase Analytics, una solución de anáítica incluida dentro del servicio gratuito para medir el comportamiento del usuario dentro de los productos desde un mismo panel de métricas.

●   Recursos para el crecimiento: el buscador presta atención a la distribución para el crecimiento de la audiencia. Por ejemplo, a través de notificaciones. Aquí también entraría todo lo relacionado con publicidad dentro de Adwords.

●   Monetización: Firebase está integrada con una herramienta de monetización a través de la inclusión de publicidad en las aplicaciones llamada AdMob.

Cómo desarrollar apps con Firebase

Para desarrollar un proyecto con Google Firebase lo único que es necesario es disponer de una cuenta de correo electrónico Gmail, como casi todos los productos del buscador. Firebase da a los desarrolladores de aplicaciones una plataforma que almacena y sincroniza con cada aplicación la información alojada en una base de datos NoSQL en la nube. Esos datos siempre se sincronizan en tiempo real y siguen estando disponibles cuando la aplicación pierde la conexión a internet.

Esa base de datos NoSQL recibe el nombre de Firebase Realtime Database. En ella se almacenan los datos en formato JSON y se sincronizan con cada uno de los clientes que se encuentran conectados en ese momento. La idea es que, cuando un equipo de desarrollo crea una aplicación con los SDKs de Android, iOS o JavaScript de Firebase, todos esos clientes comparten una misma instancia dentro de esa base de datos NoSQL y las peticiones que hacen los usuarios reciben siempre como respuesta los datos actualizados para su petición en tiempo real. 

Una vez creada una cuenta gratuita en la consola de Firebase, cada nueva app en la consola se identificará con una URL única que servirá tanto para almacenar y sincronizar los datos en la base de datos como autenticar usuarios. Dentro de esa consola, se pueden dar de alta nuevas aplicaciones, pero también administrarlas o borrarlas. Ahí también se pueden hacer cambios en la BD o administrar la autenticación de usuarios en cada uno de los proyectos. Es el centro de operaciones de Firebase.

Autenticación de usuarios con Firebase

Todo el proceso de autenticación de la identidad de los usuarios en Firebase, bajo el servicio Firebase Authentication, se hace bajo estándares del mercado como OAuth 2.0 y OpenID Connect. La idea es que las aplicaciones sean capaces de reconocer la identidad del usuario, guardar sus datos personales y ofrecer la misma experiencia personalizada desde cualquier dispositivo y desde cualquier sistema operativo.

Para iniciar sesión de usuario en una aplicación alojada en la nube como Firebase es necesario facilitar unas credenciales que te identifiquen como ese usuario concreto, a través de un correo electrónico y una contraseña o mediante el uso de un token OAuth de un proveedor de identidades federadas si el login se produce a través de servicios externos populares como Facebook y Twitter o Google Plus.

Almacenamiento y analítica con Firebase

Los otros dos grandes pilares de Firebase son el almacenamiento y el servicio de analítica pensado para las métricas relacionadas con el comportamiento del usuario. El primero de los productos, Firebase Storage, ofrece la posibilidad de hospedar imágenes, audio, vídeo y cualquier otro contenido generado por el propio usuario. Detrás de Firebase Storage está Google Cloud Storage, un servicio mayor que le sirve de respaldo. La idea de este almacenamiento es dar servicio a aquellas aplicaciones que almacenan y proporcionan contenido creado por sus usuarios.

Aunque Firebase Storage está respaldado por detrás por Google Cloud Storage, eso no significa que estemos ante un servicio no escalable, todo lo contrario. Esa escalabilidad, siempre y cuando sea requerida por el cliente, se hace de forma automática. El acceso y la administración de los datos acumulados en Firebase Storage se hace a través de sus SDKs o a través de las APIs de Google Cloud, que gestionan toda esa información en dos formatos habituales: XML y JSON.

Sobre Firebase Analytics hay que decir que es una solución gratuita y casi ilimitada. De hecho, dispone de la capacidad de generar informes de métricas a partir de un total de 500 eventos, un número bastante elevado para un servicio totalmente gratuito. Esos eventos se pueden implementar en cualquier aplicación nativa, sea para el entorno que sea (iOS o Android), a través del SDK del servicio de analítica.

¿Te interesan las APIs financieras? Descubre todas las que te ofrece BBVA

¡Suscríbete!

Recibe nuestro boletín semanal. No te pierdas nuestros trucos, consejos, artículos y los eventos más innovadores.