REST Resource: projects.databases

Recurso: Database

Um banco de dados do Cloud Firestore.

Representação 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

O nome do recurso do banco de dados. Formato: projects/{project}/databases/{database}

uid

string

Apenas saída. O UUID4 gerado pelo sistema para este banco de dados.

createTime

string (Timestamp format)

Apenas saída. O carimbo de data/hora em que este banco de dados foi criado. Os bancos de dados criados antes de 2016 não preenchem createTime.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Apenas saída. O carimbo de data/hora em que este banco de dados foi atualizado mais recentemente. Isso inclui apenas atualizações do recurso do banco de dados, e não dados contidos no banco de dados.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

locationId

string

O local do banco de dados. Os locais disponíveis estão listados em https://cloud.google.com/firestore/docs/locations.

type

enum (DatabaseType)

O tipo do banco de dados. Para saber como escolher, consulte https://cloud.google.com/datastore/docs/firestore-or-datastore.

concurrencyMode

enum (ConcurrencyMode)

O modo de controle de simultaneidade a ser usado neste banco de dados.

versionRetentionPeriod

string (Duration format)

Apenas saída. O período durante o qual as versões anteriores dos dados são mantidas no banco de dados.

Qualquer read ou query pode especificar um readTime nessa janela e ler o estado do banco de dados naquele momento.

Se o recurso PITR estiver ativado, o período de armazenamento será de sete dias. Caso contrário, o período de armazenamento será de uma hora.

Uma duração em segundos com até nove dígitos fracionários, terminando em "s". Exemplo: "3.5s".

earliestVersionTime

string (Timestamp format)

Apenas saída. O carimbo de data/hora mais antigo em que as versões mais antigas dos dados podem ser lidas no banco de dados. Consulte [versionRetençãoPeriod] acima. Esse campo é preenchido com now - versionRetentionPeriod.

Esse valor é atualizado continuamente e fica desatualizado no momento em que é consultado. Se você estiver usando esse valor para recuperar dados, não deixe de considerar o momento entre o momento em que o valor é consultado e o momento em que você inicia a recuperação.

Um carimbo de data/hora no formato UTC "Zulu" RFC3339, com resolução de nanossegundos e até nove dígitos fracionários. Exemplos: "2014-10-02T15:01:23Z" e "2014-10-02T15:01:23.045123456Z".

pointInTimeRecoveryEnablement

enum (PointInTimeRecoveryEnablement)

Define se o recurso PITR será ativado neste banco de dados.

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

O modo de integração do App Engine a ser usado para este banco de dados.

keyPrefix

string

Apenas saída. O keyPrefix desse banco de dados. Esse keyPrefix é usado, em combinação com o ID do projeto ("~") para criar o ID do aplicativo que é retornado das APIs do Cloud Datastore nos ambientes de execução de primeira geração do Google App Engine.

Esse valor pode estar vazio. Nesse caso, o appid a ser usado para chaves codificadas com URL é o projectId (por exemplo, foo em vez de v~foo).

deleteProtectionState

enum (DeleteProtectionState)

Estado da proteção contra exclusão do banco de dados.

cmekConfig

object (CmekConfig)

Opcional. A presença indica que a CMEK está ativada para este banco de dados.

etag

string

Essa soma de verificação é calculada pelo servidor com base no valor de outros campos e pode ser enviada em solicitações de atualização e exclusão para garantir que o cliente tenha um valor atualizado antes de continuar.

DatabaseType

O tipo do banco de dados. Para saber como escolher, consulte https://cloud.google.com/datastore/docs/firestore-or-datastore.

Mudanças de modo só são permitidas se o banco de dados estiver vazio.

Enums
DATABASE_TYPE_UNSPECIFIED O valor padrão. Esse valor será usado se o tipo de banco de dados for omitido.
FIRESTORE_NATIVE Modo nativo do Firestore
DATASTORE_MODE Firestore no modo Datastore.

Modo simultâneo

O tipo de modo de controle de simultaneidade para transações.

Enums
CONCURRENCY_MODE_UNSPECIFIED Não utilizado.
OPTIMISTIC Usa o controle de simultaneidade otimista por padrão. Esse modo está disponível para bancos de dados do Cloud Firestore.
PESSIMISTIC

Usar o controle de simultaneidade pessimista por padrão. Esse modo está disponível para bancos de dados do Cloud Firestore.

Essa é a configuração padrão do Cloud Firestore.

OPTIMISTIC_WITH_ENTITY_GROUPS

Use o controle de simultaneidade otimista com grupos de entidades por padrão.

Esse é o único modo disponível para o Cloud Datastore.

Esse modo também está disponível para o Cloud Firestore com o modo Datastore, mas não é recomendado.

PointInTimeRecoveryEnablement

Ativação do recurso de recuperação pontual.

Enums
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED Não utilizado.
POINT_IN_TIME_RECOVERY_ENABLED

As leituras são aceitas em versões selecionadas dos dados dos últimos sete dias:

  • Faz leituras em qualquer carimbo de data/hora da última hora
  • Faz leituras em snapshots de 1 minuto além de 1 hora e em até 7 dias

versionRetentionPeriod e earliestVersionTime podem ser usados para determinar as versões compatíveis.

POINT_IN_TIME_RECOVERY_DISABLED As leituras são compatíveis com qualquer versão dos dados dentro da última hora.

App IntegrationMode

O tipo de modo de integração do App Engine.

Enums
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED Não utilizado.
ENABLED Se houver um aplicativo do App Engine na mesma região desse banco de dados, a configuração do App Engine vai afetar esse banco de dados. Isso inclui desativar o aplicativo e o banco de dados, bem como desativar gravações no banco de dados.
DISABLED

O App Engine não afeta a capacidade do banco de dados de atender às solicitações.

Essa é a configuração padrão para bancos de dados criados com a API Firestore.

DeleteProtectionState

O estado de proteção contra exclusão do banco de dados.

Enums
DELETE_PROTECTION_STATE_UNSPECIFIED O valor padrão. O tipo de proteção "Excluir" não foi especificado
DELETE_PROTECTION_DISABLED A proteção contra exclusão está desativada
DELETE_PROTECTION_ENABLED A proteção contra exclusão está ativada

Configuração do cliente

A configuração da chave de criptografia gerenciada pelo cliente (CMEK, na sigla em inglês) de um banco de dados do Firestore. Se não estiver presente, o banco de dados será protegido pela chave de criptografia padrão do Google.

Representação JSON
{
  "kmsKeyName": string,
  "activeKeyVersion": [
    string
  ]
}
Campos
kmsKeyName

string

Obrigatório. Apenas chaves no mesmo local desse banco de dados podem ser usadas para criptografia.

Para a multirregião nam5 do Firestore, isso corresponde à multirregião do Cloud KMS. Para a multirregião eur3 do Firestore, isso corresponde à Europa multirregional do Cloud KMS. Consulte https://cloud.google.com/kms/docs/locations.

O formato esperado é projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.

activeKeyVersion[]

string

Apenas saída. Versões de chaves KMS em uso atualmente. Durante a rotação de chaves, pode haver várias versões de chave em uso.

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

Métodos

create

Cria um banco de dados.

delete

Exclui um banco de dados.

exportDocuments

Exporta uma cópia de todos ou um subconjunto de documentos do Google Cloud Firestore para outro sistema de armazenamento, como o Google Cloud Storage.

get

Recebe informações sobre um banco de dados.

importDocuments

Importa documentos para o Google Cloud Firestore.

list

Liste todos os bancos de dados do projeto.

patch

Atualiza um banco de dados.

restore

Cria um novo banco de dados restaurando a partir de um backup atual.