Los objetos de datos de Firestore en modo Datastore se conocen como entidades. Una entidad posee una o más propiedades con nombre, que pueden tener uno o más valores. No es necesario que las entidades del mismo tipo tengan las mismas propiedades, ni que todos los valores de una entidad para una propiedad determinada sean del mismo tipo de datos. (Si fuera necesario, una aplicación puede establecer y aplicar esas restricciones en su propio modelo de dados).
El modo Datastore es compatible con una variedad de tipos de datos para valores de propiedad. Se incluyen, entre otros:
- Números enteros
- números de punto flotante
- Strings
- Fechas
- Datos binarios
Cada entidad de una base de datos de modo Datastore tiene una clave que la identifica de manera única. La clave consta de los componentes siguientes:
- El espacio de nombres de la entidad, que permite la función multiusuario
- El tipo de la entidad, que la clasifica con el propósito de realizar consultas
- Un identificador de la entidad individual, que puede ser de alguna de las clases siguientes:
- una string de nombre de clave
- un ID numérico de enteros
- Una ruta principal opcional que ubica la entidad dentro de la jerarquía de la base de datos
Una aplicación puede recuperar una entidad individual de la base de datos mediante la clave de la entidad, o bien una o más entidades con una consulta basada en los valores de propiedad o las claves de las entidades.
Firestore en modo Datastore no aplica ninguna restricción en las estructuras de las entidades. Por ejemplo, si una propiedad posee un valor de un tipo en particular, esta tarea le corresponde a la aplicación.
Los fragmentos de esta página se basan en el ejemplo de Introducción a Firestore en modo Datastore.
Trabaja con entidades
Las aplicaciones pueden usar la API de Firestore en modo Datastore para crear, recuperar, actualizar y borrar entidades. Si la aplicación conoce la clave completa de una entidad (o puede obtenerla del tipo, identificador o clave de la superior), puede usar la clave para operar directamente con la entidad. Una aplicación también puede obtener la clave de una entidad como resultado de una consulta. Para obtener más información, lee el tema Consultas.
Crear una entidad
Para crear una nueva entidad, debes inicializarla y establecer sus propiedades:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Puedes guardar la entidad en la base de datos mediante upsert (que reemplazará una entidad ya existente en el modo Datastore) o con insert (que requiere que ya no exista la clave de la entidad).
A continuación, te mostramos cómo realizar una operación upsert en una entidad:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
A continuación, te mostramos cómo realizar una operación insert en una entidad:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Recupera una entidad
Para recuperar una entidad a partir de la base de datos, utiliza su clave para una búsqueda:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Actualiza una entidad
Para aplicar una update a una entidad existente, modifica las propiedades de la entidad recuperada con anterioridad y guárdala con la clave como se indica a continuación:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Los datos proporcionados reemplazan la entidad existente.
El objeto completo se debe enviar a la base de datos.
Si la entidad no existe, la actualización fallará.
Si deseas actualizar o crear una entidad, usa upsert como se describió antes.
Con una transacción,
puedes realizar las operaciones get y update en una sola transacción
atómica.
Borra una entidad
Si tienes la clave correspondiente, puedes delete la entidad:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Operaciones por lotes
Firestore en modo Datastore admite versiones por lotes de las operaciones que le permiten operar en varios objetos en una sola llamada del modo Datastore.
Hacer llamadas por lotes es más rápido que hacer llamadas por separado para cada entidad individual porque estas generan sobrecarga por solo una llamada al servicio. Si se involucran varios grupos de entidad, el trabajo de todos ellos se realiza en paralelo del lado del servidor.
Por ejemplo, puedes upsert varias entidades:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Puedes buscar múltiples entidades:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Puedes borrar varias entidades:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Las operaciones por lotes no afectan los costos de lectura, escritura o eliminación, que se documentan en Precios y cuotas. Se te cobrará por cada clave en una operación por lotes, aunque la clave no exista.
El tamaño de las entidades involucradas en una operación no afecta a los costos de lectura, escritura o eliminación. Sin embargo, el tamaño de las entidades sí modifica tus costos de tamaño de almacenamiento.
Incremento y otras transformaciones de propiedades
Usa transformaciones de propiedades, como increment, para realizar actualizaciones del servidor en una
propiedad. Una transformación de propiedad evita una operación de lectura adicional del cliente
para obtener el valor actual y evita un cálculo del cliente para determinar
el valor nuevo.
El modo Datastore admite las siguientes transformaciones de propiedades:
incrementmaximumminimumappendMissingElementsremoveAllFromArraysetToServerValue(REQUEST_TIME)
En el siguiente ejemplo, se muestra una transformación de propiedad. Esta operación incrementa las propiedades según los valores especificados:
REST
POST https://datastore.googleapis.com/v1/projects/{projectId}:commit
{
"mode": "NON_TRANSACTIONAL",
"mutations": [
{
"propertyMask": {}, // Empty write mask indicates only transforms can change the entity.
"propertyTransforms": [
{
"property": "quantity",
"increment": {
"integerValue": 2
}
},
{
"property": "inStock",
"maximum": {
"integerValue": 100
}
},
]
"upsert": {
"key": {
"path": [
{
"kind": "Items",
"name": "entity_1"
}
]
}
}
}
]
}En el siguiente ejemplo, se establece un valor de propiedad en la hora en que el servidor procesó la solicitud con precisión de milisegundos.
REST
POST https://datastore.googleapis.com/v1/projects/{projectId}:commit
{
"mode": "NON_TRANSACTIONAL",
"mutations": [
{
"propertyMask": {}, // // Empty write mask indicates only transforms can change the entity.
"propertyTransforms": [
{
"property": "timeField",
"setToServerValue": "REQUEST_TIME"
},
]
"upsert": {
"key": {
"path": [
{
"kind": "Kind_1",
"name": "entity_1"
}
]
}
}
}
]
}En el siguiente ejemplo, se agregan elementos de array si faltan.
REST
POST https://datastore.googleapis.com/v1/projects/{projectId}:commit
{
"mode": "NON_TRANSACTIONAL",
"mutations": [
{
"propertyMask": {}, // Empty write mask indicates only transforms can change the entity.
"propertyTransforms": [
{
"property": "arrayField",
"appendMissingElements": {
"values": [
{ "stringValue": "str" }, { "integerValue": 10 }
]
}
},
]
"upsert": {
"key": {
"path": [
{
"kind": "Kind_1",
"name": "entity_1"
}
]
}
}
}
]
}Tipos mixtos con maximum y minimum
Las transformaciones de propiedades maximum y minimum toman un valor de número entero o
un valor doble (número de punto flotante) como entrada. El valor de la
propiedad de destino también puede ser un número entero o un valor de tipo double.
Si la propiedad no es un número entero o doble, o si no existe, la transformación establece la propiedad en el valor y el tipo de entrada dados. Si se aplica una operación maximum
en la que la propiedad y el valor de entrada son de tipos mixtos
(es decir, uno es un número entero y el otro es un número de punto flotante de doble precisión), la propiedad adopta el tipo
del operando más grande. Para minimum, la propiedad toma el tipo del operando más pequeño.
Si los operandos son equivalentes (p.ej., 3 y 3.0), la
propiedad no cambia. 0, 0.0 y -0.0 son todos cero. El maximum o minimum de un valor almacenado de cero y un valor de entrada de cero siempre es el valor almacenado. La maximum o minimum de cualquier
valor numérico y NaN es NaN.
Mutaciones múltiples y PropertyMask
Las transformaciones de propiedades se aplican de forma secuencial después de cualquier mutación adicional en la solicitud. Un PropertyMask
restringe las mutaciones insert, update y upsert a las propiedades especificadas,
pero no restringe
las transformaciones de propiedades.
Por ejemplo, si comienzas con la siguiente entidad:
REST
entity: {
"key" : {
"path": [
{
"kind": "Kind_1",
"name": "entity_1"
}
]
}
"properties" : {
"a": 1,
"b": 2,
"c": 3
}
}La siguiente solicitud actualiza a y b, y, luego, aplica una transformación de propiedad
a la propiedad b:
POST https://datastore.googleapis.com/v1/projects/{projectId}:commit { "mode": "NON_TRANSACTIONAL", "mutations": [ { "propertyMask": {"a", "b"}, // update property a, b "update": { "key": { "path": [ { "kind": "Kind_1", "name": "entity_1" } ] } "properties": { "a" : "new_value", "b" : -2 } }, "propertyTransforms": [ { "property": "b", "increment": { "integerValue": 2 } } ] } ] }
El resultado es el siguiente:
REST
entity: {
"key" : {
"path": [
{
"kind": "Kind_1",
"name": "entity_1"
}
]
}
"properties" : {
"a": "new_value",
"b": 0,
"c": 3
}
}Identificadores y tipos
Cada entidad es de un tipo en particular, que la clasifica para realizar consultas. Por ejemplo, una aplicación de lista de tareas podría representar cada tarea que se debe completar con una entidad del tipo Task.
Todos los nombres de tipo que comienzan con dos guiones bajos (__) están reservados y no se pueden usar.
Asigna identificadores
Además de un tipo, cada entidad posee un identificador, que se le asigna cuando se crea la entidad. Debido a que es parte de la clave de la entidad, el identificador se encuentra asociado de forma permanente a la entidad y no se puede cambiar. Se puede asignar de dos maneras:
Tu aplicación puede especificar su propia string de nombre de clave para la entidad.
Para obtener información sobre el tamaño máximo de la cadena de clave de entidad, consulta Límites.
Puedes hacer que Firestore en modo Datastore asigne un ID numérico entero a la entidad de forma automática.
Para conocer las prácticas recomendadas sobre la asignación de identificadores, consulta la sección Claves en las prácticas recomendadas.
En el siguiente ejemplo, se crea una clave con el tipo Task que usa un nombre de clave, "sampleTask", como identificador:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
El modo Datastore también puede asignar varios ID de forma automática. El modo Datastore genera una secuencia aleatoria de ID sin usar con una distribución aproximadamente uniforme. Cada ID puede tener hasta 16 dígitos decimales.
En el siguiente ejemplo, se crea una clave del tipo Task sin usar un nombre de clave. La clave completa de la entidad (incluso el ID asignado de forma automática) se mostrará cuando una entidad con clave incompleta se guarde en el modo Datastore:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Si quieres mostrar al usuario los ID de la entidad o depender de su pedido, lo mejor que puedes hacer es usar la asignación manual.
Asigna tu propio ID numérico
En lugar de usar cadenas de nombre de clave o generar IDs numéricos de forma automática,
en las aplicaciones avanzadas, tal vez resulte más conveniente asignar IDs numéricos propios
de forma manual a las entidades creadas. Sin embargo, ten en cuenta que nada impide que una base de datos en modo Datastore asigne uno de tus ID numéricos manuales a otra entidad. La única forma de impedir tal conflicto es si tu aplicación que obtiene un bloque de varios ID con el método allocateIds().
El generador automático de ID del modo Datastore llevará un registro de los ID asignados con estos métodos y evitará volver a usarlos para otra entidad; de esta manera, podrás usarlos sin que se generen conflictos. No puedes elegir manualmente
qué valores devuelve el método allocateIds(). El modo Datastore asigna los valores que muestra allocateIds().
Rutas de principales
Las entidades en una base de datos en modo Datastore conforman un espacio con estructura jerárquica, similar a la estructura de directorios de un sistema de archivos. Cuando creas una entidad, tienes la opción de designar otra entidad como principal, en cuyo caso la nueva entidad es secundaria respecto de la entidad principal (ten en cuenta que, a diferencia de lo que ocurre en un sistema de archivos, no es necesario que efectivamente exista una entidad principal). Las entidades para las que no existe entidad superior se denominan entidades raíz. La asociación entre una entidad secundaria y la entidad superior es permanente, y no puede cambiarse una vez creada la entidad. El modo Datastore nunca asignará el mismo ID numérico a dos entidades asociadas a la misma entidad principal ni a dos entidades raíz (no asociadas a una entidad principal).
Una entidad puede tener varios niveles de ancestros y descendientes. El elemento superior de una entidad, el elemento superior de un elemento superior, etc., son los principales de la entidad. El elemento secundario de una entidad, el elemento secundario de un elemento secundario, etc., son los subordinados de una entidad. La secuencia de entidades que comienza con una entidad raíz y continúa de superior a subordinada, lo que lleva a una entidad determinada, constituye la ruta principal de esa entidad. La clave completa que identifica la entidad consta de una secuencia de pares de identificadores de tipo que especifican su ruta principal y terminan con los de la entidad en sí:
[User:alice, TaskList:default, Task:sampleTask]
En el caso de una entidad raíz, la ruta de principales está vacía, y la clave consta solo del tipo y el identificador de la entidad:
[User:alice]
Niveles de superiores
Usa niveles de superiores para organizar tus datos. Por ejemplo, si tu aplicación organiza entidades Task por entidades TaskList, usa un nivel de superior:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Si tu aplicación organiza primero entidades Task según entidades User y, luego, según entidades TaskList, usa varios niveles de superior:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Como se muestra en el ejemplo anterior, cuando creas una entidad con un elemento superior, especificas la ruta de acceso principal completa del elemento superior.
Una aplicación que mantiene perfiles de usuario puede requerir solo un nivel de superior para los datos del perfil de usuario. Por ejemplo, usa sola ruta de principales de User de un solo nivel para entidades Profile:
[User:alice, Profile:public]
Una aplicación de planificación de conferencias puede requerir varios niveles de superiores, como una ruta principal Building/Floor de nivel múltiple para entidades Room:
[Building:C, Floor:1, Room:123]
Grupos de entidad
Un grupo de entidades consta de una entidad raíz y todos sus descendientes. Las aplicaciones suelen usar grupos de entidades para organizar datos muy relacionados entre sí. Por ejemplo, una aplicación puede utilizar un grupo de entidades para almacenar datos de un producto o un perfil de usuario.
Tipos de valores y propiedades
Los valores de datos asociados a una entidad constan de una o más propiedades. Cada propiedad tiene un nombre y uno o más valores.
Una propiedad puede tener valores de más de un tipo y dos entidades pueden tener valores de diferente tipo para la misma propiedad. Una propiedad puede o no estar indexada (las consultas que ordenan o filtran en una propiedad p ignorarán las entidades en las que p no esté indexada).
Algunos ejemplos de propiedades son:
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Propiedades de arreglo
Una propiedad con más de un valor se denomina arreglo de propiedades. En este ejemplo, hay dos arreglos de propiedades. El primero se llama tags, con los valores fun y programming. El segundo se llama collaborators, con los valores alice y bob.
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para C#.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Go.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Java.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Node.js.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para PHP.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Python.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Ruby
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Cloud Datastore, consulta las bibliotecas cliente de Cloud Datastore. Si deseas obtener más información, consulta la documentación de referencia de la API de Cloud Datastore para Ruby.
Para autenticarte en Cloud Datastore, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Las propiedades de array pueden ser útiles, por ejemplo, cuando se realizan consultas con filtros de igualdad: una entidad satisface la consulta si alguno de sus valores para una propiedad coincide con el valor especificado en el filtro. Para obtener más detalles sobre arreglos de propiedades y los problemas que debes tener en cuenta, visita el tema Consultas.
Tipos de valores admitidos
Las propiedades se almacenan como un mapa string/value que contiene los nombres y valores de las propiedades de la entidad. Se admiten los siguientes tipos para los valores:
Número entero de 32 bits.
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__int__con un número enterointegerValue
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__int__con uninteger_value
- nombre del campo:
- Orden de clasificación: numérico
Número entero de 64 bits
- API de REST
- nombre del campo:
integerValue - tipo: número o string. Usa strings para números enteros que no se pueden representar de forma exacta como números.
- nombre del campo:
- API de RPC
- nombre del campo:
integer_value - tipo:
int64
- nombre del campo:
- Orden de clasificación: numérico
Arreglo
API de REST
- nombre del campo:
arrayValue - tipo: un objeto
ArrayValueque contiene un arreglo de objetos de valor JSON - Se puede asignar una propiedad de array con el campo
arrayValue, que es de tipo ArrayValue, y configurar su campovaluescomo un array de valores. Para que una propiedad no se indexe, establece el campoexcludeFromIndexesdel objeto de valor de la propiedad entrue.
- nombre del campo:
API de RPC
- nombre del campo:
array_value - tipo: un mensaje
ArrayValueque contiene uno o más mensajesValue - Una propiedad de arreglo se puede asignar mediante el campo
array_value, que es del tipo ArrayValue, y mediante la propagación del campovaluescon múltiples objetosValue. Para que una propiedad no esté indexada, configura el campoexclude_from_indexesdeValuecomotrue.
- nombre del campo:
Orden de clasificación: ninguno
Notas: No puede contener otro valor de arreglo. La instancia de valor no debe establecer
meaningoexclude_from_indexes.
Booleano
- API de REST
- nombre del campo:
booleanValue - tipo:
trueofalse
- nombre del campo:
- API de RPC
- nombre del campo:
boolean_value - tipo:
bool
- nombre del campo:
- Orden de clasificación:
false<true
Marca de tiempo de BSON
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una propiedad
__request_timestamp__con propiedades de números enterossecondsyincrement
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque representa una marca de tiempo de BSON que contienesecondsyincrement
- nombre del campo:
- Orden de clasificación: cronológico
- Notas: Es un valor de marca de tiempo de 64 bits que comprende segundos Unix y un contador de incremento.
Bytes (Blob)
- API de REST
- nombre del campo:
blobValue - tipo: string. Debe tener codificación base64.
- nombre del campo:
- API de RPC
- nombre del campo:
blob_value - tipo:
bytes
- nombre del campo:
- Orden de clasificación: orden de byte
- Notas: Hasta 1,500 bytes si la propiedad está indexada, o de lo contrario, hasta 1,048,487 bytes (1 MiB - 89 bytes).
Bytes con subtipo
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__binary__conblobValuecodificado en Base64 (el byte de subtipo se antepone a los datos)
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__binary__conblob_value(byte de subtipo antepuesto a los datos)
- nombre del campo:
- Orden de clasificación: orden de bytes (subtipo y, luego, valor)
- Notas: Secuencia de bytes binarios con un indicador de subtipo de BSON.
Fecha y hora (marca de tiempo)
- API de REST
- nombre del campo:
timestampValue - tipo: string (RFC 3339 con formato, con milisegundos, por ejemplo
2013-05-14T00:01:00.234Z)
- nombre del campo:
- API de RPC
- nombre del campo:
timestamp_value - tipo:
Timestamp
- nombre del campo:
- Orden de clasificación: cronológico
- Notas:
- Cuando se almacena en modo Datastore, la precisión máxima es de microsegundos; cualquier precisión adicional se redondea hacia abajo.
- Cuando se muestra como parte de una consulta de proyección, el modo Datastore convierte los valores de marcas de tiempo en valores de números enteros de microsegundo.
Decimal128
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__decimal128__con unstringValue
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__decimal128__con unstring_value
- nombre del campo:
- Orden de clasificación: numérico
- Notas: Número de punto flotante decimal de 128 bits para aritmética de alta precisión.
Double (número de punto flotante)
- API de REST
- nombre del campo:
doubleValue - tipo: número
- nombre del campo:
- API de RPC
- nombre del campo:
double_value - tipo:
double
- nombre del campo:
- Orden de clasificación: numérico
- Notas: Precisión doble de 64 bits, IEEE 754.
Entidad incorporada
- API de REST
- nombre del campo:
entityValue - tipo: una entidad JSON
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - tipo: un mensaje
Entity
- nombre del campo:
- Orden de clasificación: ninguno
- Notas: Cuando esté indexado, puedes hacer consultas en subpropiedades. Si excluyes este valor del índice, también se excluyen todas las subpropiedades del mismo.
Punto geográfico
- API de REST
- nombre del campo:
geoPointValue - tipo: un par latitud-longitud JSON
- nombre del campo:
- API de RPC
- nombre del campo:
geo_point_value - tipo: un mensaje
LatLng
- nombre del campo:
- Orden de clasificación: por latitud y, luego, por longitud
Clave
- API de REST
- nombre del campo:
keyValue - tipo: una clave de modo Datastore en JSON
- nombre del campo:
- API de RPC
- nombre del campo:
key_value - tipo: un mensaje
Key
- nombre del campo:
- Orden de clasificación: por elementos de ruta de acceso (tipo, identificador, tipo, etc.)
MaxKey
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__max__con unnullValue
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__max__con unnull_value
- nombre del campo:
MinKey
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__min__con unnullValue
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__min__con unnull_value
- nombre del campo:
Nulo
- API de REST
- nombre del campo:
nullValue - tipo: nulo
- nombre del campo:
- API de RPC
- nombre del campo:
null_value - tipo:
NullValue
- nombre del campo:
- Orden de clasificación: ninguno
ObjectId
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene una sola propiedad
__oid__con unstringValue(cadena hexadecimal en minúsculas)
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque contiene una sola propiedad__oid__con unstring_value
- nombre del campo:
- Orden de clasificación: Por secuencia de 12 bytes
Expresión regular
- API de REST
- nombre del campo:
entityValue - type: un mapa de entidades JSON que contiene
__regex__con propiedades parapatternyoptions
- nombre del campo:
- API de RPC
- nombre del campo:
entity_value - type: un mensaje
Entityque representa una expresión regular con las propiedadespatternyoptions
- nombre del campo:
- Orden: por patrón y, luego, por opciones
String de texto
- API de REST
- nombre del campo:
stringValue - tipo: string
- nombre del campo:
- API de RPC
- nombre del campo:
string_value - tipo:
string
- nombre del campo:
- Orden de clasificación: orden de byte con codificación UTF-8
- Notas: Hasta 1,500 bytes si la propiedad está indexada, o de lo contrario, hasta 1,048,487 bytes (1 MiB - 89 bytes).
Orden de los tipos de valor
Cuando una consulta incluye una propiedad con valores de varios tipos, un modo Datastore usa un orden determinista basado en las representaciones internas. La lista siguiente muestra el orden:
- Valores nulos
- MinKey
- Números enteros de 32 bits
- Números enteros de 64 bits y marcas de tiempo
- Valores booleanos
- Cadenas de bytes y cadenas Unicode
- Bytes con subtipos
- Dobles (NaN se ordena al final)
- Puntos geográficos
- Claves del modo Datastore
- ObjectId
- Marca de tiempo de BSON
- Expresión regular
- Decimal128 (NaN se ordena al final)
- MaxKey