REST Resource: projects.databases

Recurso: Database

Una base de datos de Cloud Firestore.

Representación JSON
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "locationId": string,
  "type": enum (DatabaseType),
  "concurrencyMode": enum (ConcurrencyMode),
  "versionRetentionPeriod": string,
  "earliestVersionTime": string,
  "pointInTimeRecoveryEnablement": enum (PointInTimeRecoveryEnablement),
  "appEngineIntegrationMode": enum (AppEngineIntegrationMode),
  "keyPrefix": string,
  "deleteProtectionState": enum (DeleteProtectionState),
  "cmekConfig": {
    object (CmekConfig)
  },
  "etag": string
}
Campos
name

string

El nombre del recurso de la base de datos. Formato: projects/{project}/databases/{database}

uid

string

Solo salida. El UUID4 que generó el sistema para esta base de datos.

createTime

string (Timestamp format)

Solo salida. La marca de tiempo en la que se creó esta base de datos. Las bases de datos creadas antes de 2016 no propagan createTime.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Solo salida. La marca de tiempo en la que se actualizó esta base de datos más recientemente. Ten en cuenta que esto solo incluye actualizaciones del recurso de la base de datos, y no los datos que esta contiene.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

locationId

string

La ubicación de la base de datos. Las ubicaciones disponibles se enumeran en https://cloud.google.com/firestore/docs/locations.

type

enum (DatabaseType)

Es el tipo de base de datos. Consulta https://cloud.google.com/datastore/docs/firestore-or-datastore para obtener información sobre cómo elegir.

concurrencyMode

enum (ConcurrencyMode)

El modo de control de simultaneidad que se usará para esta base de datos.

versionRetentionPeriod

string (Duration format)

Solo salida. El período durante el cual las versiones anteriores de los datos se retienen en la base de datos.

Cualquier read o query puede especificar un readTime dentro de esta ventana y leerá el estado de la base de datos en ese momento.

Si se habilita la función de PITR, el período de retención es de 7 días. De lo contrario, el período de retención será de 1 hora.

Una duración en segundos con hasta nueve dígitos decimales que terminen en "s". Ejemplo: "3.5s".

earliestVersionTime

string (Timestamp format)

Solo salida. La primera marca de tiempo en la que se pueden leer versiones anteriores de los datos de la base de datos. Consulta [versionRetainPeriod] más arriba; este campo se propaga con now - versionRetentionPeriod.

Este valor se actualiza continuamente y se vuelve obsoleto en el momento en que se consulta. Si usas este valor para recuperar datos, asegúrate de tener en cuenta el tiempo que transcurre desde el momento en que se consulta el valor hasta el momento en que inicias la recuperación.

Una marca de tiempo en formato RFC3339 UTC “Zulú”, con resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: "2014-10-02T15:01:23Z" y "2014-10-02T15:01:23.045123456Z".

pointInTimeRecoveryEnablement

enum (PointInTimeRecoveryEnablement)

Indica si se debe habilitar la función de PITR en esta base de datos.

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

El modo de integración de App Engine que se usará para esta base de datos.

keyPrefix

string

Solo salida. Es el keyPrefix de esta base de datos. Este keyPrefix se usa, junto con el ID del proyecto ("~") para crear el ID de aplicación que se muestra desde las API de Cloud Datastore en los entornos de ejecución de primera generación de Google App Engine.

Este valor puede estar vacío, en cuyo caso el ID de aplicación que se debe usar para las claves con codificación URL es projectId (p. ej., foo en lugar de v~foo).

deleteProtectionState

enum (DeleteProtectionState)

Estado de la protección contra la eliminación de la base de datos.

cmekConfig

object (CmekConfig)

Opcional. La presencia indica que las CMEK están habilitadas para esta base de datos.

etag

string

El servidor calcula esta suma de verificación según el valor de otros campos, y puede enviarse en las solicitudes de actualización y eliminación para garantizar que el cliente tenga un valor actualizado antes de continuar.

DatabaseType

Es el tipo de base de datos. Consulta https://cloud.google.com/datastore/docs/firestore-or-datastore para obtener información sobre cómo elegir.

Solo se permiten cambios de modo si la base de datos está vacía.

Enums
DATABASE_TYPE_UNSPECIFIED Es el valor predeterminado. Este valor se usa si se omite el tipo de base de datos.
FIRESTORE_NATIVE Modo nativo de Firestore
DATASTORE_MODE Firestore en modo Datastore

Modo de simultaneidad

Es el tipo de modo de control de simultaneidad para transacciones.

Enums
CONCURRENCY_MODE_UNSPECIFIED No se usa.
OPTIMISTIC Usa el control de simultaneidad optimista de forma predeterminada. Este modo está disponible para las bases de datos de Cloud Firestore.
PESSIMISTIC

Usa el control de simultaneidad pesimista de forma predeterminada. Este modo está disponible para las bases de datos de Cloud Firestore.

Esta es la configuración predeterminada de Cloud Firestore.

OPTIMISTIC_WITH_ENTITY_GROUPS

Usa el control de simultaneidad optimista con grupos de entidades de forma predeterminada.

Este es el único modo disponible para Cloud Datastore.

Este modo también está disponible para Cloud Firestore con modo Datastore, pero no se recomienda.

Habilitación de recuperación de un momento determinado

Habilitar la función de recuperación de un momento determinado.

Enums
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED No se usa.
POINT_IN_TIME_RECOVERY_ENABLED

Las lecturas son compatibles con versiones seleccionadas de los datos de los últimos 7 días:

  • Lee en cualquier marca de tiempo de la última hora
  • Lee en resúmenes de 1 minuto después de 1 hora y dentro de los 7 días

versionRetentionPeriod y earliestVersionTime se pueden usar para determinar las versiones compatibles.

POINT_IN_TIME_RECOVERY_DISABLED Las lecturas son compatibles con cualquier versión de los datos de la última hora.

Modo de integración de AppEngine

El tipo de modo de integración de App Engine.

Enums
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED No se usa.
ENABLED Si una aplicación de App Engine existe en la misma región que esta base de datos, la configuración de App Engine afectará esta base de datos. Esto incluye inhabilitar la aplicación y la base de datos, así como inhabilitar las operaciones de escritura en la base de datos.
DISABLED

App Engine no afecta la capacidad de esta base de datos para entregar solicitudes.

Esta es la configuración predeterminada para las bases de datos creadas con la API de Firestore.

DeleteProtectionState

El estado de protección contra eliminaciones de la base de datos.

Enums
DELETE_PROTECTION_STATE_UNSPECIFIED Es el valor predeterminado. No se especificó la opción Borrar el tipo de protección
DELETE_PROTECTION_DISABLED La protección para borrar está inhabilitada
DELETE_PROTECTION_ENABLED La protección para borrar está habilitada

Configuración de cmek

La configuración de CMEK (clave de encriptación administrada por el cliente) para una base de datos de Firestore. Si no está presente, la base de datos está protegida por la clave de encriptación predeterminada de Google.

Representación JSON
{
  "kmsKeyName": string,
  "activeKeyVersion": [
    string
  ]
}
Campos
kmsKeyName

string

Obligatorio. Para la encriptación, solo se permite el uso de claves que se encuentren en la misma ubicación que esta base de datos.

En la multirregión nam5 de Firestore, esto corresponde a la multirregión de Cloud KMS. En la multirregión eur3 de Firestore, esto corresponde a la Europa multirregional de Cloud KMS. Consulta https://cloud.google.com/kms/docs/locations.

El formato esperado es projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.

activeKeyVersion[]

string

Solo salida. Versiones de claves de KMS en uso actualmente. Durante la rotación de claves, puede haber varias versiones de claves en uso.

El formato esperado es projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{key_version}.

Métodos

create

Crear una base de datos.

delete

Borra una base de datos.

exportDocuments

Exporta una copia de todos los documentos o de un subconjunto de ellos de Google Cloud Firestore a otro sistema de almacenamiento, como Google Cloud Storage.

get

Obtiene información sobre una base de datos.

importDocuments

Importa documentos a Google Cloud Firestore.

list

Enumera todas las bases de datos en el proyecto.

patch

Actualiza una base de datos.

restore

Crea una base de datos nueva mediante el restablecimiento de una copia de seguridad existente.