Cuando creas una base de datos nueva de Cloud Firestore, puedes configurar la instancia de base de datos para ejecutar en modo Datastore que hace que la base de datos sea retrocompatible con Cloud Datastore. En esta página encontrarás ayuda para comprender la diferencia entre los dos modos de bases de datos de Cloud Firestore: modo nativo y modo Datastore.
Cloud Firestore en modo nativo
Cloud Firestore es la siguiente versión principal de Cloud Datastore y representa un cambio en el desarrollo de la marca de este producto. Cloud Firestore es una base de datos NoSQL de documentos que toma lo mejor de Cloud Datastore y Firebase Realtime Database, para brindar ajuste de escala automático y alto rendimiento, y facilitar el desarrollo de las aplicaciones.
Estas son algunas de las características nuevas de Cloud Firestore:
- Una nueva capa de almacenamiento de coherencia sólida
- Un modelo de recopilación y datos de documentos
- Actualizaciones en tiempo real
- Bibliotecas cliente para dispositivos móviles y la Web
Cloud Firestore es compatible con versiones anteriores de Cloud Datastore, pero el nuevo modelo de datos, las actualizaciones en tiempo real y las características de bibliotecas cliente para dispositivos móviles y web no lo son. Para acceder a todas las funciones nuevas de Cloud Firestore, debes usar Cloud Firestore en modo nativo.
Cloud Firestore en modo Datastore
Cloud Firestore en modo Datastore usa el comportamiento de sistema de Cloud Datastore, pero accede a la capa de almacenamiento de Cloud Firestore, lo que quita las siguientes limitaciones de Cloud Datastore:
- Coherencia eventual: Todas las consultas de Cloud Datastore se vuelven muy coherentes.
- Las transacciones ya no están limitadas a 25 grupos de entidades.
- Las operaciones de escritura en un grupo de entidad ya no están limitadas a 1 por segundo.
El modo Datastore inhabilita las características de Cloud Firestore que no son compatibles con Cloud Datastore:
- El proyecto aceptará las solicitudes a la API de Cloud Datastore y rechazará las solicitudes a la API de Cloud Firestore.
- El proyecto usará los índices de Cloud Datastore en lugar de los índices de Cloud Firestore.
- Puedes usar las bibliotecas cliente de Cloud Datastore con este proyecto, pero no las bibliotecas cliente de Cloud Firestore.
- Las capacidades en tiempo real de Cloud Firestore no estarán disponibles.
- En GCP Console, la base de datos usará el visualizador de Cloud Datastore.
Actualización automática al modo Datastore
Las bases de datos existentes de Cloud Datastore se actualizarán de manera automática a Cloud Firestore en modo Datastore. Los nuevos proyectos que requieren una base de datos de Cloud Datastore deberían usar Cloud Firestore en modo Datastore.
Precios y ubicaciones
Las bases de datos en modo nativo y modo Datastore utilizan la misma estructura de precios y están disponibles en las mismas ubicaciones. Los precios y las ubicaciones se describen en detalle en las siguientes páginas:
Cloud Firestore en modo nativo
Cloud Firestore en modo Datastore
Eligir un modo de base de datos
Cuando elijas entre los modos de base de datos, te recomendamos lo siguiente:
Utiliza Cloud Firestore en modo Datastore para nuevos proyectos de servidor.
Cloud Firestore en modo Datastore te permite usar las arquitecturas de servidor establecidas de Cloud Datastore sin las limitaciones fundamentales de Cloud Datastore. El modo Datastore puede escalar automáticamente a millones de escrituras por segundo.
Utiliza Cloud Firestore en modo nativo para aplicaciones web y móviles nuevas.
Cloud Firestore ofrece bibliotecas cliente para dispositivos móviles y la Web con características en tiempo real y sin conexión. El modo nativo puede escalar automáticamente a millones de clientes simultáneos.
Comparación de características
En la siguiente tabla se compara el comportamiento del sistema de los modos de la base de datos:
Cloud Firestore Modo nativo |
Cloud Firestore Modo Datastore |
|
---|---|---|
Modelo de datos | Base de datos de documentos organizadas en documentos y colecciones | Entidades organizadas en categorías y grupos de entidad |
Capa de almacenamiento | Nueva capa de almacenamiento con coherencia sólida permanente | Nueva capa de almacenamiento con coherencia sólida permanente. |
Consultas y transacciones |
|
|
Compatible con la API de v1 de Cloud Datastore | No, se rechazan las solicitudes. | Sí |
Compatible con la API de Cloud Firestore v1 | Sí | No, se rechazan las solicitudes. |
Actualizaciones en tiempo real |
Mientras detecta un documento o conjunto de documentos, a tus clientes se les notifica sobre cualquier cambio en los datos y se les envía el nuevo conjunto de datos. |
No compatible |
Persistencia de datos sin conexión | Las bibliotecas cliente para dispositivos móviles y web son compatibles con la persistencia de datos sin conexión. | No compatible |
Bibliotecas cliente |
Bibliotecas cliente de Cloud Firestore:
|
Bibliotecas cliente de Cloud Datastore:
|
Seguridad |
|
Cloud Identity and Access Management (IAM) administra el acceso a la base de datos. |
Rendimiento | Escala automáticamente a millones de clientes simultáneos. Tiene una cantidad máxima de escrituras por segundo de 10,000. | Escala automáticamente a millones de escrituras por segundo. |
ANS | ANS de Cloud Firestore. | ANS de Cloud Firestore. |
Ubicaciones |
|
|
Precios | Misma estructura de precios | |
Console | Visualizador de Firebase console y GCP Console Firestore | Visualizador de GCP Console Datastore |
Espacios de nombres | No compatible | Compatible con espacios de nombres |
Integración con la biblioteca cliente de App Engine | No compatible con los entornos de ejecución de Python 2.7 y PHP 5.5 del entorno estándar de App Engine Compatible con los entornos de ejecución de Python 3.7, PHP 7.2, Java 8, Go, y Node.js del entorno de App Engine Standard Compatible con todos los entornos de ejecución del entorno de App Engine Flexible |
Compatible con todos los entornos de ejecución |