REST Resource: projects.databases

Zasób: Database

Baza danych Cloud Firestore.

Zapis JSON
{
  "name": string,
  "uid": string,
  "createTime": string,
  "updateTime": string,
  "deleteTime": 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)
  },
  "previousId": string,
  "etag": string
}
Pola
name

string

Nazwa zasobu bazy danych. Format: projects/{project}/databases/{database}

uid

string

Tylko dane wyjściowe. Wygenerowany przez system identyfikator UUID4 tej bazy danych.

createTime

string (Timestamp format)

Tylko dane wyjściowe. Sygnatura czasowa określająca, kiedy ta baza danych została utworzona. Bazy danych utworzone przed 2016 rokiem nie wypełniają wartości createTime.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Tylko dane wyjściowe. Sygnatura czasowa określająca, kiedy ta baza danych została ostatnio zaktualizowana. Pamiętaj, że obejmuje to tylko aktualizacje zasobu bazy danych, a nie danych w niej zawartych.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

deleteTime

string (Timestamp format)

Tylko dane wyjściowe. Sygnatura czasowa usunięcia tej bazy danych. Ustaw tylko wtedy, gdy baza danych została usunięta.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

locationId

string

Lokalizacja bazy danych. Listę dostępnych lokalizacji znajdziesz na stronie https://cloud.google.com/firestore/docs/locations.

type

enum (DatabaseType)

Typ bazy danych. Informacje o tym, jak go wybrać, znajdziesz na stronie https://cloud.google.com/datastore/docs/firestore-or-datastore.

concurrencyMode

enum (ConcurrencyMode)

Tryb kontroli równoczesności, który ma być używany w tej bazie danych.

versionRetentionPeriod

string (Duration format)

Tylko dane wyjściowe. Okres, w którym wcześniejsze wersje danych są przechowywane w bazie danych.

Dowolny read lub query może w tym oknie określić readTime i odczytać stan bazy danych w tym momencie.

Jeśli funkcja odzyskiwania do określonego momentu jest włączona, okres przechowywania wynosi 7 dni. W przeciwnym razie okres przechowywania wynosi 1 godzinę.

Czas trwania w sekundach składający się z maksymalnie 9 cyfr po przecinku i kończący się „s”. Przykład: "3.5s".

earliestVersionTime

string (Timestamp format)

Tylko dane wyjściowe. Najwcześniejsza sygnatura czasowa, w której można odczytać z bazy danych starsze wersje danych. Patrz [versionRetentionPeriod] powyżej. to pole zawiera wartość now - versionRetentionPeriod.

Ta wartość jest stale aktualizowana i w chwili wysyłania zapytania staje się nieaktualna. Jeśli używasz tej wartości do odzyskiwania danych, pamiętaj, aby uwzględnić czas od momentu wysłania zapytania o wartość do momentu rozpoczęcia przywracania.

Sygnatura czasowa w RFC3339 UTC „Zulu” z rozdzielczością nanosekundową i maksymalnie 9 cyframi po przecinku. Przykłady: "2014-10-02T15:01:23Z" i "2014-10-02T15:01:23.045123456Z".

pointInTimeRecoveryEnablement

enum (PointInTimeRecoveryEnablement)

Określa, czy włączyć funkcję odzyskiwania danych w tej bazie danych.

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

Tryb integracji App Engine, który ma być używany w przypadku tej bazy danych.

keyPrefix

string

Tylko dane wyjściowe. Prefiks klucza tej bazy danych. Ten prefiks klucza jest używany w połączeniu z identyfikatorem projektu („~”) do utworzenia identyfikatora aplikacji zwracanego przez interfejsy API Cloud Datastore w środowiskach wykonawczych pierwszej generacji Google App Engine.

Ta wartość może być pusta. W takim przypadku identyfikator aplikacji używany w przypadku kluczy zakodowanych w adresie URL to identyfikator projektu (np. foo zamiast v~foo).

deleteProtectionState

enum (DeleteProtectionState)

Stan ochrony przed usunięciem w bazie danych.

cmekConfig

object (CmekConfig)

Opcjonalnie. Obecność wskazuje, że dla tej bazy danych włączony jest klucz CMEK.

previousId

string

Tylko dane wyjściowe. Poprzedni identyfikator bazy danych zasobu bazy danych. To pole jest wypełniane tylko w przypadku usuniętych baz danych.

etag

string

Ta suma kontrolna jest obliczana przez serwer na podstawie wartości innych pól i może być wysyłana w przypadku żądań aktualizacji lub usunięcia, aby zapewnić klientowi aktualną wartość, zanim przejdziesz dalej.

Typ bazy danych

Typ bazy danych. Informacje o tym, jak go wybrać, znajdziesz na stronie https://cloud.google.com/datastore/docs/firestore-or-datastore.

Zmiany trybu są dozwolone tylko wtedy, gdy baza danych jest pusta.

Wartości w polu enum
DATABASE_TYPE_UNSPECIFIED Wartość domyślna. Ta wartość jest używana, jeśli typ bazy danych zostanie pominięty.
FIRESTORE_NATIVE Tryb natywny Firestore
DATASTORE_MODE Firestore w trybie Datastore.

Tryb równoczesności

Typ trybu kontroli równoczesności transakcji.

Wartości w polu enum
CONCURRENCY_MODE_UNSPECIFIED Nieużywane.
OPTIMISTIC Używaj domyślnie optymistycznej kontroli równoczesności. Ten tryb jest dostępny w bazach danych Cloud Firestore.
PESSIMISTIC

Domyślnie używaj pesymistycznej kontroli równoczesności. Ten tryb jest dostępny w bazach danych Cloud Firestore.

Jest to domyślne ustawienie Cloud Firestore.

OPTIMISTIC_WITH_ENTITY_GROUPS

Domyślnie używaj optymistycznej kontroli równoczesności z grupami encji.

To jedyny tryb dostępny w Cloud Datastore.

Ten tryb jest też dostępny w Cloud Firestore w trybie Datastore, ale nie jest zalecany.

aktywowanie odzyskiwania za pomocą PointInTimeRecovery

Włączenie funkcji odzyskiwania do określonego momentu.

Wartości w polu enum
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED Nieużywane.
POINT_IN_TIME_RECOVERY_ENABLED

Odczyty są obsługiwane w przypadku wybranych wersji danych z ostatnich 7 dni:

  • Odczyt z dowolną sygnaturą czasową w ciągu ostatniej godziny
  • Odczytuje dane z 1-minutowych zrzutów powyżej 1 godziny i w ciągu 7 dni

Do określenia obsługiwanych wersji można użyć pakietów versionRetentionPeriod i earliestVersionTime.

POINT_IN_TIME_RECOVERY_DISABLED Odczyty są obsługiwane w przypadku dowolnej wersji danych z ostatniej godziny.

Tryb integracji z mechanizmem App Engine

Typ trybu integracji App Engine.

Wartości w polu enum
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED Nieużywane.
ENABLED Jeśli aplikacja App Engine znajduje się w tym samym regionie co ta baza danych, konfiguracja App Engine będzie miała wpływ na tę bazę danych. Obejmuje to wyłączenie aplikacji oraz i wyłączeniu zapisywania w tej bazie danych.
DISABLED

App Engine nie ma wpływu na możliwość obsługi żądań przez tę bazę danych.

Jest to domyślne ustawienie dla baz danych utworzonych przy użyciu interfejsu Firestore API.

Usuwanie stanu ochrony

Stan ochrony przed usunięciem bazy danych.

Wartości w polu enum
DELETE_PROTECTION_STATE_UNSPECIFIED Wartość domyślna. Nie określono typu ochrony przed usunięciem
DELETE_PROTECTION_DISABLED Ochrona przed usunięciem jest wyłączona
DELETE_PROTECTION_ENABLED Ochrona przed usunięciem jest włączona

Konfiguracja GCP

Konfiguracja klucza szyfrowania zarządzanego przez klienta (CMEK) dla bazy danych Firestore. Jeśli jej nie ma, baza danych jest zabezpieczona domyślnym kluczem szyfrowania Google.

Zapis JSON
{
  "kmsKeyName": string,
  "activeKeyVersion": [
    string
  ]
}
Pola
kmsKeyName

string

Wymagane. Do szyfrowania można używać tylko kluczy znajdujących się w tej samej lokalizacji co ta baza danych.

W przypadku „wielu regionów” nam5 Firestore odpowiada temu, że Cloud KMS ma wiele regionów. W przypadku wielu regionów eur3 Firestore odpowiada regionowi eur3 w Cloud KMS obejmujący wiele regionów. Więcej informacji znajdziesz na https://cloud.google.com/kms/docs/locations.

Oczekiwany format to projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}.

activeKeyVersion[]

string

Tylko dane wyjściowe. Obecnie używane wersje klucza KMS. Podczas rotacji kluczy może być wiele używanych wersji klucza.

Oczekiwany format to projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{key_version}.

Metody

create

Utworzenie bazy danych.

delete

Usuwa bazę danych.

exportDocuments

Eksportuje kopię wszystkich lub niektórych dokumentów z Google Cloud Firestore do innego systemu pamięci masowej, na przykład Google Cloud Storage.

get

Pobiera informacje o bazie danych.

importDocuments

Importuje dokumenty do Google Cloud Firestore.

list

Wyświetl wszystkie bazy danych w projekcie.

patch

Aktualizuje bazę danych.

restore

Tworzy nową bazę danych przez przywrócenie danych z istniejącej kopii zapasowej.