Firestore es una base de datos de documentos NoSQL creada para el escalado automático, el alto rendimiento y la facilidad de desarrollo de aplicaciones. Es la versión más reciente de Datastore e incluye varias mejoras con respecto a Datastore.
Como Firestore en el modo de Datastore se ha optimizado para casos prácticos de servidores y para App Engine, te recomendamos que uses Firestore en el modo de Datastore en las bases de datos que vayan a usar principalmente las aplicaciones de App Engine. Firestore en el modo nativo es más útil en casos prácticos de notificaciones móviles y en tiempo real. Para obtener más información sobre los modos de Firestore, consulta Elegir entre el modo nativo y el modo Datastore.
Usar el modo Datastore con App Engine
Para usar el modo Datastore con App Engine, haz lo siguiente:
Si aún no lo has hecho, crea una base de datos y elige Firestore en modo Datastore.
Puedes usar bases de datos de Datastore con aplicaciones de App Engine. Estas bases de datos se actualizarán automáticamente a Firestore en modo Datastore.
-
para crear, recuperar y gestionar entidades en tu base de datos en modo Datastore.
Si tienes previsto actualizar tu aplicación de Python 2 a Python 3, tienes varias opciones:
Si tu aplicación de Python 2 usa NDB de App Engine para interactuar con Datastore, te recomendamos que migres a NDB de Cloud en lugar de la biblioteca de cliente del modo Datastore, ya que la primera ofrece una experiencia de usuario mucho más similar.
También puedes migrar primero tu aplicación de Python 2 que usa App Engine NDB a Python 3 y después migrar a Cloud NDB. Para saber cómo acceder a App Engine NDB en Python 3, consulta la página Acceder a servicios empaquetados de App Engine para Python 3.
Para obtener más recursos y un ejemplo de migración de una aplicación de Python 2 webapp
que usa App Engine NDB a una aplicación de Python 3 Flask equivalente con App Engine NDB habilitado, consulta la página Servicios empaquetados para Python 3.
Configurar índices
El modo Datastore usa índices para cada consulta que realiza tu aplicación. Los índices se actualizan cada vez que cambia una entidad, por lo que los resultados se pueden devolver rápidamente cuando la aplicación hace una consulta.
El modo Datastore crea automáticamente índices de una sola propiedad para usarlos con tipos de consultas sencillos. Para las consultas complejas que incluyan varias propiedades, tendrás que configurar índices compuestos en el archivo index.yaml
de tu aplicación.
El servidor de desarrollo de App Engine actualizará el archivo index.yaml
con los índices compuestos necesarios para ejecutar las pruebas. Del mismo modo, el emulador del modo Datastore puede generar índices cuando ejecutas pruebas.
También puedes añadir los índices al archivo index.yaml
de tu aplicación manualmente si no ejecutas pruebas locales o si tus pruebas no incluyen consultas complejas.
Definir permisos de bases de datos
De forma predeterminada, tu aplicación tiene todos los permisos necesarios para leer y escribir en las bases de datos de Firestore y del modo Datastore de tuGoogle Cloud proyecto.
Para gestionar estos permisos, cada aplicación de App Engine usa una cuenta de servicio predeterminada que le da acceso completo de lectura y escritura a las bases de datos de Firestore y del modo Datastore del mismo proyecto que la aplicación. Puedes cambiar los permisos de la cuenta de servicio predeterminada, pero es posible que tu aplicación pierda el acceso a menos que le asignes un rol de gestión de identidades y accesos con los permisos necesarios.
Para obtener información sobre cómo permitir que otros usuarios, aplicaciones o proyectos accedan a una base de datos, consulta Acceder a tu base de datos.
Precios, cuotas y límites
El modo Datastore ofrece una cuota gratuita con límites diarios. Las cuentas de pago ofrecen almacenamiento, lectura y escritura ilimitados. Puedes consultar más información en la página Cuotas de Datastore.