Method: projects.databases.exportDocuments

這個外掛程式能將 Google Cloud Firestore 中全部或部分文件的副本匯出至其他儲存系統,例如 Google Cloud Storage。最近的文件更新可能不會反映在匯出作業中。匯出作業會在背景中執行,並透過建立的 Operation 資源監控及管理進度。執行匯出作業的輸出內容後,才能使用這些輸出內容。如果匯出作業在完成前遭到取消,可能會導致部分資料無法在 Google Cloud Storage 中留存。

如要進一步瞭解匯出行為和輸出格式,請參閱:https://cloud.google.com/firestore/docs/manage-data/export-import

HTTP 要求

POST https://firestore.googleapis.com/v1/{name=projects/*/databases/*}:exportDocuments

這個網址使用 gRPC 轉碼語法。

路徑參數

參數
name

string

執行個體類型,要匯出的資料庫。格式應該為:projects/{projectId}/databases/{databaseId}

要求主體

要求主體包含下列結構的資料:

JSON 表示法
{
  "collectionIds": [
    string
  ],
  "outputUriPrefix": string,
  "namespaceIds": [
    string
  ],
  "snapshotTime": string
}
欄位
collectionIds[]

string

要匯出的集合 ID。未指定代表所有集合。

outputUriPrefix

string

輸出 URI。目前僅支援採用以下格式的 Google Cloud Storage URI:gs://BUCKET_NAME[/NAMESPACE_PATH],其中 BUCKET_NAME 是 Google Cloud Storage 值區的名稱,NAMESPACE_PATH 是選用的 Google Cloud Storage 命名空間路徑。選擇名稱時,請務必參考 Google Cloud Storage 命名規範:https://cloud.google.com/storage/docs/naming。如果 URI 是值區 (不含命名空間路徑),系統會根據開始時間產生前置字串。

namespaceIds[]

string

空白清單代表所有命名空間。對於不使用命名空間的資料庫,建議您採用這種方式。

空字串元素代表預設命名空間。如果資料庫有資料位於非預設命名空間,但不想納入資料,則應使用此選項。這份清單中的每個命名空間均不得重複。

snapshotTime

string (Timestamp format)

與要匯出的資料庫版本相對應的時間戳記。時間戳記必須是過去時間,四捨五入為分鐘,且早於 earliestVersionTime。如有指定,匯出的文件就會在指定時間呈現一致的資料庫檢視畫面。否則無法保證匯出文件的一致性。

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

回應主體

如果成功,回應主體會包含 Operation 的執行個體。

授權範圍

需要下列其中一種 OAuth 範圍:

  • https://www.googleapis.com/auth/datastore
  • https://www.googleapis.com/auth/cloud-platform

詳情請參閱驗證總覽一文。