Firebase Realtime Database
Almacena y sincroniza datos con nuestra base de datos NoSQL alojada en la nube. Los datos se sincronizan con todos los clientes en tiempo real y se mantienen disponibles cuando la app no tiene conexión.
Funciones clave
Tiempo real | En lugar de solicitudes HTTP típicas, Firebase Realtime Database usa la sincronización de datos (cada vez que cambian los datos, los dispositivos conectados reciben esa actualización en milisegundos). Proporciona experiencias colaborativas y envolventes sin pensar en el código de red. |
Sin conexión | Las apps de Firebase continúan respondiendo, incluso sin conexión, dado que el SDK de Firebase Realtime Database hace que tus datos persistan en el disco. Cuando se restablece la conexión, el dispositivo cliente recibe los cambios que faltaban y los sincroniza con el estado actual del servidor. |
Acceso desde dispositivos cliente | Se puede acceder a Firebase Realtime Database directamente desde un dispositivo móvil o un navegador web; no se necesita un servidor de aplicaciones. La seguridad y la validación de datos están disponibles a través de las reglas de seguridad de Firebase Realtime Database: reglas basadas en expresiones que se ejecutan cuando se leen o se escriben datos. |
Escalamiento en varias bases de datos | Con Firebase Realtime Database y el plan de precios Blaze, puedes satisfacer las necesidades de datos de la app a gran escala: podrás dividir la información en diversas instancias de bases de datos dentro del mismo proyecto de Firebase. Usa Firebase Authentication para optimizar el proceso de autenticación en el proyecto. Podrás autenticar a usuarios en varias instancias de la base de datos. Controla el acceso a la información de cada base de datos. Para ello, usa las reglas de seguridad personalizadas de Firebase Realtime Database en cada una de las instancias de la base de datos. |
¿Cómo funciona?
Con Firebase Realtime Database, puedes compilar aplicaciones ricas y colaborativas, ya que permite el acceso seguro a la base de datos directamente desde el código del cliente. Los datos persisten de forma local. Además, incluso cuando no hay conexión, se siguen activando los eventos en tiempo real, lo que proporciona una experiencia adaptable al usuario final. Cuando el dispositivo vuelve a conectarse, Realtime Database sincroniza los cambios de los datos locales con las actualizaciones remotas que ocurrieron mientras el cliente estuvo sin conexión, lo que combina los conflictos de forma automática.
Realtime Database proporciona un lenguaje flexible de reglas basadas en expresiones, llamado reglas de seguridad de Firebase Realtime Database, para definir cómo se deberían estructurar los datos y en qué momento se pueden leer o escribir. Integrar Firebase Authentication permite que los desarrolladores definan quién tiene acceso a qué datos y cómo acceden a ellos.
Realtime Database es una base de datos NoSQL y, como tal, tiene diferentes optimizaciones y funcionalidades en comparación con una base de datos relacional. La API de Realtime Database está diseñada para permitir solo operaciones que se puedan ejecutar rápidamente. Eso permite crear una excelente experiencia de tiempo real que puede servir a millones de usuarios sin afectar la capacidad de respuesta. Es importante pensar cómo deben acceder a los datos los usuarios y estructurarlos según corresponda.
Ruta de implementación
Integrar los SDK de Firebase Realtime Database | Incluye clientes rápidamente mediante Gradle, CocoaPods o una secuencia de comandos. | |
Crear referencias de Realtime Database | Haz referencia a tus datos JSON, como "users/user:1234/phone_number" para establecer datos o suscribirte a cambios de datos. | |
Configurar datos y detectar cambios | Usa estas referencias para escribir datos o suscribirte a cambios. | |
Habilitar la persistencia sin conexión | Permite que se escriban los datos en el disco local del dispositivo para que estén disponibles sin conexión. | |
Proteger los datos | Usa reglas de seguridad de Firebase Realtime Database para proteger los datos. |
¿Quieres almacenar otros tipos de datos?
- Cloud Firestore es una base de datos flexible y escalable para el desarrollo en servidores, dispositivos móviles y la Web desde Firebase y Google Cloud Platform. Para obtener más información sobre las diferencias entre opciones de bases de datos, consulta Elige una base de datos: Cloud Firestore o Realtime Database.
- Firebase Remote Config almacena pares clave-valor especificados por el desarrollador para cambiar el comportamiento y aspecto de las apps sin que los usuarios tengan que descargar una actualización.
- Firebase Hosting aloja elementos HTML, CSS y JavaScript para el sitio web, así como otros recursos suministrados por el desarrollador, como gráficos, fuentes e íconos.
- Cloud Storage almacena archivos como imágenes, videos y audio, así como otro tipo de contenido generado por el usuario.
Próximos pasos:
- Configura datos y detecta cambios con los SDK de plataformas de Apple, Android, la Web y Admin, o con la API de REST.
- Agrega Firebase Realtime Database a tu app para Apple, Android o la Web.
- Obtén información sobre cómo proteger tus archivos con reglas de seguridad de Firebase Realtime Database.