本頁面說明如何設定變更資料擷取 (CDC),將資料從 Spanner 資料庫串流至支援的目的地,例如 BigQuery 或 Cloud Storage。
事前準備
如果 Spanner 執行個體位於 Google Cloud Datastream 執行所在專案以外的專案,您需要為 Datastream 服務代理提供 spanner.databaseReader IAM 角色,並在打算使用 Data Boost 時提供 spanner.databaseReaderWithDataBoost 角色。
如要使用精細存取權控管資料庫角色,請參閱「建立 Spanner 連線設定檔和串流」,瞭解個別權限需求。
可建立 Spanner 資料庫
如要開始從 Spanner 複製變更資料,請先建立 Spanner 執行個體和 Spanner 資料庫。
建立變更串流
Spanner 會使用變更串流追蹤及串流資料變更,例如插入、更新和刪除。如要設定 Spanner 來源,以便在 Datastream 中進行複製,您必須建立及設定 Spanner 變更串流。您需要為變更串流指定 NEW_ROW 值擷取類型。
詳情請參閱「變更串流總覽」。
建立 Spanner 連線設定檔和串流
建立新的 Spanner 連線設定檔時,您需要指定已建立的 Spanner 資料庫。資料庫名稱的格式必須如下:
projects/PROJECT_ID/instances/INSTANCE/databases/DATABASE_ID
建立串流時,您可以選擇提供下列資訊:
- 要納入和排除的物件。
- 補充作業或變更串流查詢的並行讀取次數上限。
- 是否讓 Datastream 在查詢 Spanner 時使用 Data Boost。
Datastream 用於查詢 Spanner 的精細存取權控管資料庫角色。資料庫角色至少需要下列權限:
spanner.sessions.createspanner.sessions.deletespanner.sessions.getspanner.databases.readspanner.databases.selectspanner.databases.partitionQueryspanner.databases.partitionReadspanner.databases.beginReadOnlyTransactionspanner.databases.getDdlspanner.databases.useDataBoost(選擇使用 Spanner Data Boost 時)spanner.databases.useRoleBasedAccess
Datastream 要使用的 Spanner 遠端程序呼叫 (RPC) 優先順序。
後續步驟
- 進一步瞭解以 Spanner 做為來源。