REST Resource: projects.databases

資源:Database

Cloud Firestore 資料庫。

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
}
欄位
name

string

資料庫的資源名稱。格式:projects/{project}/databases/{database}

uid

string

僅供輸出。系統為這個資料庫產生的 UUID4。

createTime

string (Timestamp format)

僅供輸出。建立這個資料庫的時間戳記。2016 年以前建立的資料庫不會填入 createTime。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度和最多九個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

updateTime

string (Timestamp format)

僅供輸出。這個資料庫最近更新的時間戳記。請注意,這僅包括資料庫資源的更新,而非資料庫包含的資料。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度和最多九個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

locationId

string

資料庫位置。如要查看可用位置,請前往 https://cloud.google.com/firestore/docs/locations

type

enum (DatabaseType)

資料庫的類型。如要瞭解選擇方式,請參閱 https://cloud.google.com/datastore/docs/firestore-or-datastore

concurrencyMode

enum (ConcurrencyMode)

這個資料庫使用的並行控制模式。

versionRetentionPeriod

string (Duration format)

僅供輸出。過去資料版本保留在資料庫中的期間。

任何 readquery 都可以在此視窗中指定 readTime,並會讀取當時的資料庫狀態。

如果時間點復原功能已啟用,保留期限為 7 天。否則保留期限為 1 小時。

時間長度以秒為單位,最多可有 9 個小數位數,並結尾為「s」。例如:"3.5s"

earliestVersionTime

string (Timestamp format)

僅供輸出。可從資料庫中讀取舊版資料的最早時間戳記。請參閱上方的 [versionholdPeriod];這個欄位填入 now - versionRetentionPeriod

這個值會持續更新,並在查詢時過時。如果您使用這個值復原資料,請務必考量從查詢該值到啟動復原的那一刻起。

採用 RFC3339 世界標準時間「Zulu」格式的時間戳記,採用奈秒解析度和最多九個小數位數。範例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z"

pointInTimeRecoveryEnablement

enum (PointInTimeRecoveryEnablement)

是否要對這個資料庫啟用時間點復原功能。

appEngineIntegrationMode

enum (AppEngineIntegrationMode)

要用於這個資料庫的 App Engine 整合模式。

keyPrefix

string

僅供輸出。這個資料庫的 keyPrefix。這個 keyPrefix 會與專案 ID (「~」) 搭配使用,以建構從 Google App Engine 第一代執行階段中 Cloud Datastore API 傳回的應用程式 ID。

這個值可能空白,在此情況下,網址編碼金鑰要使用的 appid 會是 projectId (例如:foo,而非 v~foo)。

deleteProtectionState

enum (DeleteProtectionState)

資料庫的刪除保護狀態。

cmekConfig

object (CmekConfig)

選用設定。狀態表示這個資料庫已啟用 CMEK。

etag

string

伺服器會根據其他欄位的值計算這個總和檢查碼,而且可能會在更新及刪除要求時傳送,以確保用戶端在繼續操作之前,先掌握最新的值。

DatabaseType

資料庫的類型。如要瞭解選擇方式,請參閱 https://cloud.google.com/datastore/docs/firestore-or-datastore

只有在資料庫中沒有任何內容時,才能變更模式。

列舉
DATABASE_TYPE_UNSPECIFIED 預設值。如果省略資料庫類型,則會使用這個值。
FIRESTORE_NATIVE Firestore 原生模式
DATASTORE_MODE 使用 Datastore 模式的 Firestore。

並行模式

交易的並行控制模式類型。

列舉
CONCURRENCY_MODE_UNSPECIFIED 未使用。
OPTIMISTIC 預設使用最佳化並行控制。這個模式適用於 Cloud Firestore 資料庫。
PESSIMISTIC

預設使用悲觀並行控制。這個模式適用於 Cloud Firestore 資料庫。

這是 Cloud Firestore 的預設設定。

OPTIMISTIC_WITH_ENTITY_GROUPS

根據預設,請搭配實體群組使用樂觀並行控制。

這是 Cloud Datastore 唯一可用的模式。

這個模式也適用於搭配 Datastore 模式的 Cloud Firestore,但不建議採用此模式。

啟用 PointInTimeRecovery

啟用時間點復原功能。

列舉
POINT_IN_TIME_RECOVERY_ENABLEMENT_UNSPECIFIED 未使用。
POINT_IN_TIME_RECOVERY_ENABLED

系統支援在過去 7 天內的所選資料版本讀取資料:

  • 讀取過去 1 小時內的任何時間戳記
  • 超過 1 小時和 7 天內的 1 分鐘快照讀取

versionRetentionPeriodearliestVersionTime 可用來判斷支援的版本。

POINT_IN_TIME_RECOVERY_DISABLED 讀取過去 1 小時內任何版本的資料。

AppEngineIntegrationMode

App Engine 整合模式的類型。

列舉
APP_ENGINE_INTEGRATION_MODE_UNSPECIFIED 未使用。
ENABLED 如果 App Engine 應用程式與這個資料庫位於相同區域,App Engine 的設定就會影響這個資料庫。這包括停用應用程式和資料庫,以及停用資料庫寫入功能。
DISABLED

App Engine 不會影響這個資料庫提供要求的功能。

這是使用 Firestore API 建立的資料庫的預設設定。

DeleteProtectionState

資料庫的刪除保護狀態。

列舉
DELETE_PROTECTION_STATE_UNSPECIFIED 預設值。未指定刪除保護類型
DELETE_PROTECTION_DISABLED 刪除保護功能已停用
DELETE_PROTECTION_ENABLED 已啟用刪除保護功能

CmekConfig

Firestore 資料庫的 CMEK (客戶自行管理的加密金鑰) 設定。如果沒有顯示,資料庫就會受到預設的 Google 加密金鑰的保護。

JSON 表示法
{
  "kmsKeyName": string,
  "activeKeyVersion": [
    string
  ]
}
欄位
kmsKeyName

string

必須提供。只有與這個資料庫位於相同位置的金鑰才能用於加密。

如為 Firestore 的 nam5 多區域,這個值對應 Cloud KMS 多區域我們的服務。如為 Firestore 的 eur3 多區域,這會對應 Cloud KMS 多區域 europe。請參閱 https://cloud.google.com/kms/docs/locations

預期格式為 projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}

activeKeyVersion[]

string

僅供輸出。目前使用中的 KMS 金鑰版本。在金鑰輪替期間,可能有多個使用中的金鑰版本。

預期格式為 projects/{projectId}/locations/{kms_location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}/cryptoKeyVersions/{key_version}

方法

create

建立資料庫。

delete

刪除資料庫。

exportDocuments

這個外掛程式能將 Google Cloud Firestore 中所有或部分文件的副本匯出至其他儲存系統,例如 Google Cloud Storage。

get

取得資料庫相關資訊。

importDocuments

這個外掛程式能將文件匯入 Google Cloud Firestore。

list

列出專案中的所有資料庫。

patch

更新資料庫。

restore

從現有的備份還原,建立新的資料庫。