與銷售或支援聯絡人合作設定資料移轉 2.0 版存取權時,對方會提供 bucket 名稱。你必須提供Google 群組給銷售聯絡人,以便控管 Google Cloud Storage 中資料檔案的存取權。
使用 gsutil 存取資料
gsutil 工具是以 Python 編寫的指令列應用程式,可讓您存取資料,完全不必編寫程式碼。舉例來說,您可以使用 gsutil 做為指令碼或批次檔的一部分,而不需建立自訂應用程式。
如要開始使用 gsutil,請參閱 gsutil 說明文件。第一次使用這項工具時,系統會提示您輸入憑證,並儲存憑證以供日後使用。
gsutil 範例
您可以使用 gsutil 列出所有檔案,如下所示:
gsutil ls gs://[bucket_name]/[object name/file name]
gsutil 使用的語法與 UNIX 大致相同,包括萬用字元星號 (*),因此您可以列出所有 NetworkImpression 檔案:
gsutil ls gs://[bucket_name]/dcm_account6837_impression_*
下載檔案也很簡單:
gsutil cp gs://[bucket_name]/dcm_account6837_impression_2015120100.log.gz
您可以透過 Unix Shell 指令碼,將分散在各處的 DT Google 值區中的檔案複製到自己的 Google API GCS 值區,方法有兩種:
在 gsutil 中,如果您使用 Unix 系統,請每天為所有 bucket 執行下列指令:
$ day=$(date --date="1 days ago" +"%m-%d-%Y") $ gsutil -m cp gs://{<dcmhashid_A>,<dcmhashid_B>,etc.}/*$day*.log.gz gs://<client_bucket>/
或者,您也可以使用 Bash 檔案,但這種做法稍微複雜:
#!/bin/bash set -x buckets={dfa_-hasid_A dfa_-hashid_B,...} #include all hash ids day=$(date --date="1 days ago" +"%m-%d-%Y") for b in ${buckets[@]}; do / gsutil -m cp gs://$b/*$day*.log.gz gs://
/ / done
以程式輔助方式存取資料
Google Cloud Storage 提供多種程式設計語言的 API 和範例,方便您以程式輔助方式存取資料。以下是資料移轉 2.0 版的專屬步驟,您必須完成這些步驟,才能建構可運作的整合功能。
取得服務帳戶
如要開始使用 Data Transfer v2.0,請使用設定工具;這項工具會逐步引導您在 Google API 控制台中建立專案,並啟用 API。
如要設定新的服務帳戶,請按照下列步驟操作:
- 依序按一下 [Create credentials] (建立憑證) > [Service account key] (服務帳戶金鑰)。
- 選擇要將服務帳戶的公開/私密金鑰下載為標準 P12 檔案,還是可由 Google API 用戶端程式庫載入的 JSON 檔案。
接著,系統就會為您產生新的公開/私密金鑰,並下載至您的電腦中;這是金鑰的唯一副本,您必須負責妥善保管。
請務必保持這個視窗開啟,下一個步驟會用到服務帳戶電子郵件地址。
將服務帳戶新增至群組
- 前往 Google 群組
- 按一下「我的群組」,然後選取用於管理 DT 2.0 版 Cloud Storage Bucket 存取權的群組
- 按一下「管理」
- 請勿點選「邀請成員」!
- 按一下「直接新增成員」
- 將上一個步驟中的服務帳戶電子郵件地址複製到成員方塊
- 選取「不要接收電子郵件」
- 按一下「新增」按鈕
我不小心按到「邀請成員」
範圍
傳遞至 Cloud Storage 的任何範圍都必須為唯讀
舉例來說,使用 Java 用戶端程式庫時,要使用的正確範圍是:
StorageScopes.DEVSTORAGE_READ_ONLY