REST Resource: projects.databases

Zasób: Baza danych

Baza danych Cloud Firestore.

Zapis 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
}
Pola
name

string

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

uid

string

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

createTime

string (Timestamp format)

Tylko dane wyjściowe. Sygnatura czasowa utworzenia tej bazy danych. Bazy danych utworzone przed 2016 rokiem nie wypełniają pola createTime.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC 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 ostatniej aktualizacji tej bazy danych. Pamiętaj, że obejmuje to tylko aktualizacje zasobu bazy danych, a nie zawarte w niej dane.

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC 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 https://cloud.google.com/firestore/docs/locations.

type

enum (DatabaseType)

Typ bazy danych. Informacje o wyborze znajdziesz na stronie https://cloud.google.com/datastore/docs/firestore-or-datastore.

concurrencyMode

enum (ConcurrencyMode)

Tryb kontroli równoczesności 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.

Każdy element read lub query może określać wartość readTime w tym oknie i odczytywać w tym czasie stan bazy danych.

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 z maksymalnie 9 cyframi po przecinku, kończącym się cyframi „s”. Przykład: "3.5s".

earliestVersionTime

string (Timestamp format)

Tylko dane wyjściowe. Najwcześniejsza sygnatura czasowa, po której można odczytać starsze wersje danych z bazy danych. Patrz [versionMetadataPeriod] powyżej. To pole jest wypełnione wartością now - versionRetentionPeriod.

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

Sygnatura czasowa w formacie „Zulu” RFC3339 UTC 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 do określonego momentu w tej bazie danych.

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

Tryb integracji App Engine używany na potrzeby tej bazy danych.

keyPrefix

string

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

Ta wartość może być pusta. W takim przypadku identyfikator appid, którego chcesz użyć na potrzeby kluczy zakodowanych na potrzeby adresu URL, to identyfikator projektu (np. foo, a nie v~foo).

deleteProtectionState

enum (DeleteProtectionState)

Stan ochrony przed usunięciem bazy danych.

cmekConfig

object (CmekConfig)

Opcjonalnie. Obecność oznacza, że klucz CMEK jest włączony w tej bazie 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 i usunięcia w celu sprawdzenia, czy klient ma aktualną wartość, zanim przejdziesz dalej.

Typ bazy danych

Typ bazy danych. Informacje o wyborze 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żywany.
OPTIMISTIC Domyślnie używaj 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 ustawienie domyślne Cloud Firestore.

OPTIMISTIC_WITH_ENTITY_GROUPS

Domyślnie używaj optymistycznej kontroli równoczesności w przypadku grup encji.

To jedyny tryb dostępny w Cloud Datastore.

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

Włączenie usługi PointInTimeRecovery

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

Wartości w polu enum
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED Nieużywany.
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-minutową migawką powyżej 1 godziny i w ciągu 7 dni

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

POINT_IN_TIME_RECOVERY_DISABLED Odczyty są obsługiwane dla każdej wersji danych z ostatniej godziny.

Tryb integracji AppEngine

Typ trybu integracji z App Engine.

Wartości w polu enum
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED Nieużywany.
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 i bazy danych oraz zapisów w tej bazie.
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 tworzonych 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 Cmek

Konfiguracja CMEK (klucza szyfrowania zarządzanego przez klienta) dla bazy danych Firestore. Jeśli go 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 bazy danych nam5 w Firestore odpowiada to działaniu Cloud KMS w wielu regionach. W przypadku wielu regionów eur3 w Firestore odpowiada to Europie z wieloma regionami Cloud KMS. 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 klucza może występować wiele używanych wersji klucza.

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

Metody

create

Utwórz bazę danych.

delete

Usuwa bazę danych.

exportDocuments

Eksportuje kopię wszystkich dokumentów lub ich podzbioru 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 istniejącej kopii zapasowej.