本頁面說明如何建立及啟動移轉工作。
如要確認 Storage 移轉服務是否支援您的來源和目的地 (也稱為接收器),請參閱「支援的來源和接收器」。
代理和代理集區
視來源和目的地而定,您可能需要建立及設定代理程式集區,並在可存取來源或目的地的機器上安裝代理程式。
從 Amazon S3、Microsoft Azure、網址清單或 Cloud Storage 移轉至 Cloud Storage 時,不需要代理程式和代理程式集區。
如果移轉作業的來源和/或目的地是檔案系統,或來源是與 S3 相容的儲存空間,則需要代理程式和代理程式集區。如需操作說明,請參閱「管理代理程式集區」。
事前準備
設定移轉作業前,請確認您已設定存取權:
- 使用者和服務帳戶:
- 來源資料和目的地。
如果您使用 gcloud 指令,請安裝 gcloud CLI。
建立移轉作業
請勿在移轉工作名稱中加入機密資訊,例如個人識別資訊 (PII) 或安全性資料。資源名稱可能會傳播至其他 Google Cloud 資源的名稱,並可能在專案外部向 Google 內部系統公開。
Cloud de Confiance 控制台
前往 Cloud de Confiance 控制台的「Storage 移轉服務」頁面。
按一下「建立移轉工作」。系統會顯示「Create a transfer job」(建立移轉工作) 頁面。
選擇來源:
Cloud Storage
您的使用者帳戶必須具備 storage.buckets.get 權限,才能選取來源和目的地 bucket。或者,您也可以直接輸入 bucket 名稱。詳情請參閱「疑難排解存取權問題」。
在「來源類型」下方,選取「Cloud Storage」。
選取「目的地類型」。
如果目的地是 Cloud Storage,請選取「Scheduling mode」(排程模式)。批次移轉會一次性或定期執行。事件導向移轉作業會持續監控來源,並在資料新增或修改時移轉資料。
如要設定事件導向移轉作業,請按照「事件導向移轉作業」中的操作說明進行。
點選「下一步」。
請執行下列任一操作,選取 bucket 和該 bucket 中的資料夾 (選用):
在「Bucket or folder」(Bucket 或資料夾) 欄位中,輸入現有的 Cloud Storage bucket 名稱和路徑,不含前置字元
gs://。例如:my-test-bucket/path/to/files。如要指定其他專案的 Cloud Storage bucket,請在「Bucket name」(bucket 名稱) 欄位中輸入確切名稱。按一下「Browse」(瀏覽),然後選取 bucket,從專案中選取現有 bucket 清單。
按一下「Browse」(瀏覽),即可選取其他專案中的 bucket,方法是按一下「Project ID」(專案 ID),然後選取新的專案 ID 和 bucket。
如要建立新的 bucket,請按一下
「Create new bucket」(建立新的 bucket)。
如果您指定資料夾內的路徑,請參閱「指定來源和目的地路徑」一節,瞭解重要詳細資料。
如果是以事件為依據的移轉作業,請輸入 Pub/Sub 訂閱項目名稱,格式如下:
projects/PROJECT_NAME/subscriptions/SUBSCRIPTION_ID
- 您也可以選擇依前置字串、上次修改日期或儲存空間級別篩選物件。如果您將資料夾指定為來源位置,前置字元篩選器會與該資料夾相關。舉例來說,如果來源是
my-test-bucket/path/,則file的「包含」篩選器會包含所有開頭為my-test-bucket/path/file的檔案。 點選「下一步」。
Amazon S3
與 S3 相容的儲存空間
Microsoft Azure Blob Storage
在「來源類型」下方,選取「Azure Blob 儲存體或 Data Lake Storage Gen2」。
點選「下一步」。
指定下列屬性:
儲存體帳戶名稱:來源 Microsoft Azure 儲存體帳戶名稱。
儲存體帳戶名稱會顯示在 Microsoft Azure 儲存體入口網站中,依序點選「All services」>「Storage」>「Storage accounts」即可查看。
Container name:Microsoft Azure 儲存體容器名稱。
容器名稱會顯示在 Microsoft Azure 儲存體入口網站的「Storage explorer」>「Blob containers」下方。如要移轉儲存體帳戶中的所有容器,請輸入
*做為值。詳情請參閱「移轉 Azure 儲存體帳戶中的所有容器」。共用存取簽章 (SAS):從儲存的存取權政策建立的 Microsoft Azure Storage SAS 權杖。詳情請參閱「使用共用存取簽章 (SAS) 授予 Azure 儲存體資源的有限存取權」。
SAS 權杖的預設到期時間為 8 小時。建立 SAS 權杖時,請務必設定合理的到期時間,以便順利完成移轉作業。
- 您也可以選擇依前置字串、上次修改日期或儲存空間級別篩選物件。如果您將資料夾指定為來源位置,前置字元篩選器會與該資料夾相關。舉例來說,如果來源是
my-test-bucket/path/,則file的「包含」篩選器會包含所有開頭為my-test-bucket/path/file的檔案。 點選「下一步」。
檔案系統
在「Source type」(來源類型) 下方,選取「POSIX file system」(POSIX 檔案系統)。
選取「目的地類型」,然後點選「下一步」。
選取現有的代理程式集區,或選取「Create agent pool」(建立代理程式集區),然後按照操作說明建立新的集區。
指定檔案系統目錄的完整路徑。如果您指定根目錄以外的路徑,請參閱「指定來源和目的地路徑」一節,瞭解重要詳細資料。
點選「下一步」。
HDFS
網址清單
選擇目的地:
Cloud Storage
在「Bucket or folder」(Bucket 或資料夾) 欄位中,輸入目的地 bucket 和資料夾名稱 (選用),或按一下「Browse」(瀏覽),從目前專案的現有 bucket 清單中選取 bucket。如要建立新的 bucket,請按一下
「Create new bucket」(建立新的 bucket)。如果您在 bucket 中指定路徑,請參閱「指定來源和目的地路徑」一文,瞭解重要詳細資料。
點選「下一步」。
選擇排程選項:
從「Run once」(執行一次) 下拉式選單中,選取下列其中一個選項:
「Run once」(執行一次):執行單一移轉作業,從您選取的時間開始。
每天執行:每天從您選取的時間開始執行移轉作業。
您可以視需要輸入結束日期,或將結束日期留空,讓移轉作業持續執行。
每週執行:從您選取的時間開始,每週執行一次移轉作業。
「Run with custom frequency」(按照自訂頻率執行):按照您選取的頻率執行移轉作業。您可以選擇以「小時」、「天」或「週」為單位,定期重複轉移作業。
您可以視需要輸入結束日期,或將結束日期留空,讓移轉作業持續執行。
在「Starting now」下拉式選單中,選取下列其中一個選項:
「Starting now」(立即開始):點選「Create」(建立) 後,就會開始轉移。
Starting on (開始時間):在您選取的日期和時間開始移轉。按一下「Calendar」(日曆),即可顯示日曆並選取開始日期。
點選「下一步」。
選擇轉移工作的設定。部分選項僅適用於特定來源/接收器組合。
在「Description」(說明) 欄位中,輸入移轉作業的說明。建議您輸入有意義且不重複的說明,以便區分工作。
在「Metadata options」(中繼資料選項) 下方,選擇使用預設選項,或按一下「View and select options」(查看並選取選項),為所有支援的中繼資料指定值。詳情請參閱「中繼資料保留」。
在「覆寫時機」下方,選取下列其中一個選項:
如果不同:如果同名的來源檔案有不同的 Etag 或核對和值,則覆寫目的地檔案。
一律覆寫:來源檔案與目的地檔案的名稱相同時,一律覆寫目的地檔案,即便檔案內容完全相同。
在「刪除時間」下方,選取下列其中一個選項:
一律不:一律不刪除來源或目的地的檔案。
轉移檔案後,請從來源刪除檔案:檔案轉移至目的地後,從來源刪除檔案。如果來源檔案未轉移 (例如目的地已存在該檔案),則不會刪除來源檔案。
Delete files from destination if they're not also at source:如果目的地 Cloud Storage bucket 中的檔案未同時存在於來源,則從 Cloud Storage bucket 中刪除這些檔案。
這個選項可確保目的地 Cloud Storage bucket 與來源完全相符。
如要在 Cloud Storage bucket 之間轉移,請選擇是否要轉移代管資料夾。
啟用或停用 Storage 移轉服務的記錄功能。
在「Notification options」(通知選項) 下方,視需要選取 Pub/Sub 主題和要通知的事件。詳情請參閱「Pub/Sub 通知」。
如要將服務代理權限委派給使用者自行管理的服務帳戶,請選取該選項,並以
SERVICE_ACCOUNT_NAME@PROJECT_ID.s3ns.iam.gserviceaccount.com格式輸入服務帳戶電子郵件地址。點選「建立」。
檔案系統
選取現有的代理程式集區,或選取「Create agent pool」(建立代理程式集區),然後按照操作說明建立新的集區。
指定完整的目的地目錄路徑。如果您指定根目錄以外的路徑,請參閱「指定來源和目的地路徑」一節,瞭解重要詳細資料。如果指定的路徑不存在,移轉代理程式會在移轉過程中,嘗試在目的地檔案系統建立目錄結構。代理程式必須在上層目錄中具備必要的寫入權限。
點選「下一步」。
選擇排程選項:
從「Run once」(執行一次) 下拉式選單中,選取下列其中一個選項:
「Run once」(執行一次):執行單一移轉作業,從您選取的時間開始。
每天執行:每天從您選取的時間開始執行移轉作業。
您可以視需要輸入結束日期,或將結束日期留空,讓移轉作業持續執行。
每週執行:從您選取的時間開始,每週執行一次移轉作業。
「Run with custom frequency」(按照自訂頻率執行):按照您選取的頻率執行移轉作業。您可以選擇以「小時」、「天」或「週」為單位,定期重複轉移作業。
您可以視需要輸入結束日期,或將結束日期留空,讓移轉作業持續執行。
在「Starting now」下拉式選單中,選取下列其中一個選項:
「Starting now」(立即開始):點選「Create」(建立) 後,就會開始轉移。
Starting on (開始時間):在您選取的日期和時間開始移轉。按一下「Calendar」(日曆),即可顯示日曆並選取開始日期。
點選「下一步」。
指定是否要使用資訊清單檔案。
選取是否要保留中繼資料、何時覆寫,以及何時刪除來源或目的地的檔案。
選取記錄選項。
在「Notification options」(通知選項) 下方,視需要選取 Pub/Sub 主題和要通知的事件。詳情請參閱「Pub/Sub 通知」。
如要將服務代理權限委派給使用者自行管理的服務帳戶,請選取該選項,並以
SERVICE_ACCOUNT_NAME@PROJECT_ID.s3ns.iam.gserviceaccount.com格式輸入服務帳戶電子郵件地址。如要建立移轉工作,請按一下「Create」(建立)。
gcloud CLI
如要建立新的移轉工作,請使用 gcloud transfer jobs create 指令。建立新工作會啟動指定的移轉作業,除非指定排程或 --do-not-run。
gcloud transfer jobs create \
SOURCE DESTINATION
更改下列內容:
SOURCE是這項移轉作業的資料來源。每個來源的格式如下:
- Cloud Storage:
gs://BUCKET_NAME。 如要從特定資料夾轉移,請指定gs://BUCKET_NAME/FOLDER_PATH/,包括結尾斜線。 - Amazon S3:
s3://BUCKET_NAME/FOLDER_PATH - 與 S3 相容的儲存空間:
s3://BUCKET_NAME。值區名稱與端點有關。舉例來說,如果資料位於https://us-east-1.example.com/folder1/bucket_a,請輸入s3://folder1/bucket_a。 - Microsoft Azure Storage:
https://myaccount.blob.core.windows.net/CONTAINER_NAME - 網址清單:
https://PATH_TO_URL_LIST或http://PATH_TO_URL_LIST - POSIX 檔案系統:
posix:///PATH。這必須是代理主機根目錄的絕對路徑。 - HDFS:
hdfs:///PATH
如果您指定路徑或資料夾值,請參閱「指定來源和目的地路徑」一節,瞭解重要詳細資料。
- Cloud Storage:
DESTINATION 為以下其中一個項目:
- Cloud Storage:
gs://BUCKET_NAME。如要轉移至特定目錄,請指定gs://BUCKET_NAME/FOLDER_PATH/,包括結尾斜線。 - POSIX 檔案系統:
posix:///PATH。這必須是代理主機根目錄的絕對路徑。如果指定的路徑不存在,移轉代理程式會在移轉過程中,嘗試在目的地檔案系統建立目錄結構。代理程式必須在上層目錄中具備必要的寫入權限。
如果您指定路徑或資料夾值,請參閱「指定來源和目的地路徑」一節,瞭解重要詳細資料。
- Cloud Storage:
如果轉移作業需要轉移代理程式,可用的選項如下:
--source-agent-pool指定這項移轉作業要使用的來源代理集區。從檔案系統轉移時,必須提供這項資訊。--destination-agent-pool指定要用於這項移轉作業的目的地代理程式集區。轉移至檔案系統時必須提供。--intermediate-storage-path是 Cloud Storage bucket 的路徑,格式為gs://my-intermediary-bucket。在兩個檔案系統之間移轉時,必須提供這個參數。如要瞭解如何建立中繼 bucket,請參閱「建立 Cloud Storage bucket 做為中繼」。
其他選項包括:
--source-creds-file會指定本機檔案的相對路徑,該檔案包含轉移來源的 AWS 或 Azure 憑證。如要瞭解憑證檔案格式,請參閱 TransferSpec 參考資料。--do-not-run可防止 Storage 移轉服務在提交指令後執行工作。如要執行工作,請更新工作來新增排程,或使用jobs run手動啟動。--manifest-file指定 Cloud Storage 中 CSV 檔案的路徑,該檔案包含要從來源轉移的檔案清單。如要瞭解資訊清單檔案格式,請參閱「使用資訊清單移轉特定檔案或物件」。工作資訊:您可以指定
--name、--description和--source-creds-file。請注意,跨 bucket 複製工作不支援--name。排程:指定
--schedule-starts、--schedule-repeats-every和--schedule-repeats-until,或--do-not-run。物件條件:使用條件決定要移轉的物件。包括
--include-prefixes和--exclude-prefixes,以及--include-modified-[before | after]-[absolute | relative]中的時間條件。如果您在來源中指定資料夾,前置字串篩選器會與該資料夾相關。詳情請參閱「依前置字串篩選來源物件」。涉及檔案系統的移轉作業不支援物件條件。
移轉選項:指定是否要覆寫目的地檔案 (
--overwrite-when=different或always),以及是否要在移轉期間或之後刪除特定檔案 (--delete-from=destination-if-unique或source-after-transfer);指定要保留的中繼資料值 (--preserve-metadata);以及視需要為移轉的物件設定儲存空間級別 (--custom-storage-class)。通知:使用
--notification-pubsub-topic、--notification-event-types和--notification-payload-format設定移轉作業的 Pub/Sub 通知。Cloud Logging:使用
--log-actions和--log-action-states,為無代理程式移轉作業或從與 S3 相容來源移轉的作業啟用 Cloud Logging。詳情請參閱「Storage 移轉服務的 Cloud Logging」。
從與 S3 相容的來源移轉時,也會使用下列選項:
--source-endpoint(必要) 指定儲存系統的端點。例如,s3.example.com。請向供應商確認正確格式。請勿指定通訊協定 (http://或https://)。--source-signing-region指定經簽署的要求的區域。如果儲存空間供應商未要求輸入簽署區域,請略過這個旗標。--source-auth-method指定要使用的驗證方式。有效值為AWS_SIGNATURE_V2或AWS_SIGNATURE_V4。詳情請參閱 Amazon 的 SigV4 和 SigV2 說明文件。--source-request-model會指定要使用的位址樣式。有效值為PATH_STYLE或VIRTUAL_HOSTED_STYLE。路徑樣式使用https://s3.example.com/BUCKET_NAME/KEY_NAME格式。虛擬託管型使用的格式為 `https://BUCKET_NAME.s3.example.com/KEY_NAME。--source-network-protocol指定代理程式應在這項工作中使用的網路通訊協定。有效值為HTTP或HTTPS。--source-list-api指定 S3 Listing API 的版本,以便從值區傳回物件。有效值為LIST_OBJECTS或LIST_OBJECTS_V2。詳情請參閱 Amazon 的 ListObjectsV2 和 ListObjects 說明文件。
如要查看所有選項,請執行 gcloud transfer jobs create --help 或參閱 gcloud 參考文件。
範例
從 Amazon S3 遷移至 Cloud Storage
請參閱「從 Amazon S3 移轉至 Cloud Storage」。
從與 S3 相容的儲存空間遷移至 Cloud Storage
請參閱「從與 S3 相容的儲存空間移轉至 Cloud Storage」。
檔案系統至 Cloud Storage
請參閱「從檔案系統移轉至 Cloud Storage」。
Cloud Storage 至檔案系統
如要從 Cloud Storage bucket 移轉至檔案系統,請指定下列項目。
gcloud transfer jobs create \
gs://my-storage-bucket posix:///tmp/destination \
--destination-agent-pool=my-destination-agent-pool
檔案系統到檔案系統
如要在兩個檔案系統之間移轉資料,您必須指定來源代理程式集區、目的地代理程式集區,以及資料通過的中繼 Cloud Storage bucket。
如要進一步瞭解中繼 bucket,請參閱「建立 Cloud Storage bucket 做為中介」。
接著,在呼叫 transfer jobs create 時指定這 3 項資源:
gcloud transfer jobs create \
posix:///tmp/source/on/systemA posix:///tmp/destination/on/systemB \
--source-agent-pool=source_agent_pool \
--destination-agent-pool=destination_agent_pool \
--intermediate-storage-path=gs://my-intermediary-bucket
REST
下列範例說明如何透過 REST API 使用 Storage 移轉服務。
使用 Storage 移轉服務 API 設定或編輯移轉工作時,時間必須採用世界標準時間。如要進一步瞭解如何指定移轉工作的排程,請參閱「排程」。
在不同的 Cloud Storage 值區之間執行移轉
在此範例中,可瞭解到如何在不同的 Cloud Storage 值區之間移動檔案。例如,您可以將資料移至其他位置的值區。
使用 transferJobs create 的要求:
POST https://storagetransfer.googleapis.com/v1/transferJobs { "description": "YOUR DESCRIPTION", "status": "ENABLED", "projectId": "PROJECT_ID", "schedule": { "scheduleStartDate": { "day": 1, "month": 1, "year": 2015 }, "startTimeOfDay": { "hours": 1, "minutes": 1 } }, "transferSpec": { "gcsDataSource": { "bucketName": "GCS_SOURCE_NAME" }, "gcsDataSink": { "bucketName": "GCS_SINK_NAME" }, "transferOptions": { "deleteObjectsFromSourceAfterTransfer": true } } }
200 OK { "transferJob": [ { "creationTime": "2015-01-01T01:01:00.000000000Z", "description": "YOUR DESCRIPTION", "name": "transferJobs/JOB_ID", "status": "ENABLED", "lastModificationTime": "2015-01-01T01:01:00.000000000Z", "projectId": "PROJECT_ID", "schedule": { "scheduleStartDate": { "day": 1, "month": 1, "year": 2015 }, "startTimeOfDay": { "hours": 1, "minutes": 1 } }, "transferSpec": { "gcsDataSource": { "bucketName": "GCS_SOURCE_NAME", }, "gcsDataSink": { "bucketName": "GCS_NEARLINE_SINK_NAME" }, "objectConditions": { "minTimeElapsedSinceLastModification": "2592000.000s" }, "transferOptions": { "deleteObjectsFromSourceAfterTransfer": true } } } ] }
將資料從 Amazon S3 移轉至 Cloud Storage
請參閱「從 Amazon S3 移轉至 Cloud Storage」。
在 Microsoft Azure Blob Storage 和 Cloud Storage 之間移轉
在這個範例中,您將瞭解如何使用 Microsoft Azure Storage 共用存取簽章 (SAS) 權杖,將檔案從 Microsoft Azure Storage 移至 Cloud Storage bucket。
如要進一步瞭解 Microsoft Azure Storage SAS,請參閱「使用共用存取簽章 (SAS) 授予 Azure 儲存體資源有限存取權」。
開始之前,請參閱「設定 Microsoft Azure 儲存體的存取權」和「定價」,瞭解將資料從 Microsoft Azure 儲存體移至 Cloud Storage 的影響。
使用 transferJobs create 的要求:
POST https://storagetransfer.googleapis.com/v1/transferJobs { "description": "YOUR DESCRIPTION", "status": "ENABLED", "projectId": "PROJECT_ID", "schedule": { "scheduleStartDate": { "day": 14, "month": 2, "year": 2020 }, "scheduleEndDate": { "day": 14 "month": 2, "year": 2020 }, "startTimeOfDay": { "hours": 1, "minutes": 1 } }, "transferSpec": { "azureBlobStorageDataSource": { "storageAccount": "AZURE_SOURCE_NAME", "azureCredentials": { "sasToken": "AZURE_SAS_TOKEN", }, "container": "AZURE_CONTAINER", }, "gcsDataSink": { "bucketName": "GCS_SINK_NAME" } } }
200 OK { "transferJob": [ { "creationTime": "2020-02-14T01:01:00.000000000Z", "description": "YOUR DESCRIPTION", "name": "transferJobs/JOB_ID", "status": "ENABLED", "lastModificationTime": "2020-02-14T01:01:00.000000000Z", "projectId": "PROJECT_ID", "schedule": { "scheduleStartDate": { "day": 14 "month": 2, "year": 2020 }, "scheduleEndDate": { "day": 14, "month": 2, "year": 2020 }, "startTimeOfDay": { "hours": 1, "minutes": 1 } }, "transferSpec": { "azureBlobStorageDataSource": { "storageAccount": "AZURE_SOURCE_NAME", "azureCredentials": { "sasToken": "AZURE_SAS_TOKEN", }, "container": "AZURE_CONTAINER", }, "objectConditions": {}, "transferOptions": {} } } ] }
從檔案系統轉移
請參閱「從檔案系統移轉至 Cloud Storage」。
用戶端程式庫
下列範例說明如何透過 Go、Java、Node.js 和 Python,以程式輔助方式使用 Storage 移轉服務。
以程式輔助方式設定或編輯移轉工作時,時間必須採用世界標準時間。如要進一步瞭解如何指定移轉工作的排程,請參閱「排程」。
如要進一步瞭解 Storage 移轉服務用戶端程式庫,請參閱「開始使用 Storage 移轉服務用戶端程式庫」。
在不同的 Cloud Storage 值區之間執行移轉
在此範例中,可瞭解到如何在不同的 Cloud Storage 值區之間移動檔案。例如,您可以將資料移至其他位置的值區。
將資料從 Amazon S3 移轉至 Cloud Storage
請參閱「從 Amazon S3 移轉至 Cloud Storage」。
在 Microsoft Azure Blob Storage 和 Cloud Storage 之間移轉
在這個範例中,您將瞭解如何使用 Microsoft Azure Storage 共用存取簽章 (SAS) 權杖,將檔案從 Microsoft Azure Storage 移至 Cloud Storage bucket。
如要進一步瞭解 Microsoft Azure Storage SAS,請參閱「使用共用存取簽章 (SAS) 授予 Azure Storage 資源有限存取權」。
開始之前,請參閱「設定 Microsoft Azure 儲存體的存取權」和「定價」,瞭解將資料從 Microsoft Azure 儲存體移至 Cloud Storage 的影響。
Go
如要瞭解如何安裝及使用 Storage 移轉服務的用戶端程式庫,請參閱「Storage 移轉服務用戶端程式庫」。詳情請參閱 Storage 移轉服務 Go API 參考文件。
如要向 Storage 移轉服務進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Java
如要瞭解如何安裝及使用 Storage 移轉服務的用戶端程式庫,請參閱「Storage 移轉服務用戶端程式庫」。詳情請參閱 Storage 移轉服務 Java API 參考文件。
如要向 Storage 移轉服務進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Node.js
如要瞭解如何安裝及使用 Storage 移轉服務的用戶端程式庫,請參閱「Storage 移轉服務用戶端程式庫」。詳情請參閱 Storage 移轉服務 Node.js API 參考文件。
如要向 Storage 移轉服務進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
Python
如要瞭解如何安裝及使用 Storage 移轉服務的用戶端程式庫,請參閱「Storage 移轉服務用戶端程式庫」。詳情請參閱 Storage 移轉服務 Python API 參考文件。
如要向 Storage 移轉服務進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
執行程式碼範例前,請將 GOOGLE_CLOUD_UNIVERSE_DOMAIN 環境變數設為 s3nsapis.fr。
從檔案系統轉移
請參閱「從檔案系統移轉至 Cloud Storage」。
指定來源和目的地路徑
來源和目的地路徑可讓您移轉特定前置字串下的資料,並控管資料在目的地中的位置。
- 來源路徑:做為移轉作業的根目錄。只有這個路徑下的物件會轉移,且來源路徑會從物件名稱的開頭移除,然後才複製到目的地。
- 目的地路徑:做為前置字串,會加到目的地所有物件名稱的前面。如果是檔案系統移轉作業,請指定要將物件移轉至哪個資料夾。
您可以為所有資料來源指定來源路徑。
範例
僅指定目的地路徑
假設您在名為 bucketA 的 Cloud Storage bucket 根目錄中有 object.txt。
如果轉移至 bucketB,並設定名為 alpha/ 的目的地路徑,檔案就會複製到 bucketB/alpha/object.txt。
同時指定來源和目的地路徑
假設您要在兩個 Cloud Storage bucket 之間移轉資料:
- 來源 bucket:
bucketA,路徑為alpha/ - 目的地 bucket:
bucketB,路徑:bravo/
gs://bucketA/alpha/object 的物件會轉移至 gs://bucketB/bravo/object。
系統會從物件名稱中移除來源路徑 alpha/,只留下 object,並在前面加上目的地路徑 bravo/。
指定來源路徑
如要在建立移轉工作時指定來源路徑,請按照下列步驟操作:
- 在 Cloud de Confiance 控制台的「Bucket or folder」(Bucket 或資料夾) 欄位中輸入路徑。
- 使用 gcloud CLI 時,請在來源 URI 中指定路徑。例如:
gs://SOURCE_BUCKET/SOURCE_PATH/。 - 使用 REST API 或用戶端程式庫,在資料來源規格中新增
path欄位。例如TransferSpec規格中的gcsDataSource欄位。檔案系統移轉作業會使用rootDirectory,而非path。
指定目的地路徑
如要在建立移轉工作時指定目的地路徑,請按照下列步驟操作:
- 在 Cloud de Confiance 控制台的「Bucket or folder」(Bucket 或資料夾) 欄位中輸入路徑。
- 使用 gcloud CLI 時,請在目的地 URI 中指定路徑。例如:
gs://DESTINATION_BUCKET/DESTINATION_PATH/。 - 使用 REST API 或用戶端程式庫,在資料來源規格中新增
path欄位。例如TransferSpec規格中的gcsDataSource或gcsDataSink欄位。檔案系統移轉作業會使用rootDirectory,而非path。