

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 建立傳輸資料的任務
<a name="create-task-how-to"></a>

*任務*說明 AWS DataSync 資料傳輸的位置和方式。任務包含下列項目：
+ [**來源位置**](working-with-locations.md) – DataSync 從中傳輸資料的儲存系統或服務。
+ [**目的地位置**](working-with-locations.md) – DataSync 將資料傳輸到的儲存系統或服務。
+ [**任務選項**](task-options.md) – 設定，例如要傳輸哪些檔案、如何驗證資料、何時執行任務等。
+ [**任務執行**](run-task.md) – 當您執行任務時，稱為*任務執行*。

## 建立您的任務
<a name="create-task-steps"></a>

當您建立 DataSync 任務時，您可以指定來源和目的地位置。您也可以選擇傳輸哪些檔案、中繼資料的處理方式、設定排程等，來自訂任務。

建立任務之前，請確定您了解 [ DataSync 傳輸的運作方式](how-datasync-transfer-works.md#transferring-files)並檢閱[任務配額](datasync-limits.md#task-hard-limits)。

**重要**  
如果您打算在 Amazon S3 位置之間傳輸資料，請在開始之前檢閱 [ DataSync 如何影響您的 S3 請求費用](create-s3-location.md#create-s3-location-s3-requests)和 [DataSync 定價頁面](https://aws.amazon.com/datasync/pricing/)。

### 使用 DataSync 主控台
<a name="create-task-console"></a>

1. 在 https：//[https://console.aws.amazon.com/datasync/](https://console.aws.amazon.com/datasync/) 開啟 AWS DataSync 主控台。

1. 請確定您位於 AWS 區域 您計劃傳輸資料的其中一個 中。

1. 在左側導覽窗格中，展開**資料傳輸**，然後選擇**任務**，然後選擇**建立任務**。

1. 在**設定來源位置**頁面上，[建立](transferring-data-datasync.md)或選擇來源位置，然後選擇**下一步**。

1. 在**設定目的地位置**頁面上，[建立](transferring-data-datasync.md)或選擇目的地位置，然後選擇**下一步**。

1. （建議） 在**設定設定**頁面上，為您的任務提供您可以記住的名稱。

1. 仍在**設定設定**頁面上時，請選擇您的任務選項或使用預設設定。

   您可能對下列一些選項感興趣：
   + 指定您要使用[的任務模式](choosing-task-mode.md)。
   + 使用[資訊清單](transferring-with-manifest.md)或[篩選條件](filtering.md)指定要傳輸的資料。
   + 設定 如何處理[檔案中繼資料](configure-metadata.md)和[驗證資料完整性](configure-data-verification-options.md)。
   + 使用[任務報告](task-reports.md)或 [Amazon CloudWatch](monitor-datasync.md) 監控您的傳輸。建議您為任務設定某種監控。

   完成後，請選擇 **Next (下一步)**。

1. 檢閱您的任務組態，然後選擇**建立任務**。

您已準備好[開始任務](run-task.md)。

### 使用 AWS CLI
<a name="create-task-cli"></a>

[建立 DataSync 來源和目的地位置](transferring-data-datasync.md)後，您就可以建立任務。

1. 在您的 AWS CLI 設定中，請確定您正在使用您 AWS 區域 計劃傳輸資料的其中一個 。

1. 複製下列`create-task`命令：

   ```
   aws datasync create-task \
     --source-location-arn "arn:aws:datasync:{{us-east-1}}:{{account-id}}:location/{{location-id}}" \
     --destination-location-arn "arn:aws:datasync:{{us-east-1}}:{{account-id}}:location/{{location-id}}" \
     --name "{{task-name}}"
   ```

1. 針對 `--source-location-arn`，指定來源位置的 Amazon Resource Name (ARN)。

1. 針對 `--destination-location-arn`，指定目的地位置的 ARN。

   如果您要跨 AWS 區域 或 帳戶轉移，請確定 ARN 包含其他區域或帳戶 ID。

1. （建議） 針對 `--name`，指定您可以記住的任務名稱。

1. 視需要指定其他任務選項。您可能對下列一些選項感興趣：
   + 使用[資訊清單](transferring-with-manifest.md)或[篩選條件](filtering.md)指定要傳輸的資料。
   + 設定 如何處理[檔案中繼資料](configure-metadata.md)和[驗證資料完整性](configure-data-verification-options.md)。
   + 使用[任務報告](task-reports.md)或 [Amazon CloudWatch](monitor-datasync.md) 監控您的傳輸。建議您為任務設定某種監控。

   如需更多選項，請參閱 [create-task](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/datasync/create-task.html)。以下是指定數個選項的範例`create-task`命令：

   ```
   aws datasync create-task \
     --source-location-arn "arn:aws:datasync:{{us-east-1}}:{{account-id}}:location/{{location-id}}" \
     --destination-location-arn "arn:aws:datasync:{{us-east-1}}:{{account-id}}:location/{{location-id}}" \
     --cloud-watch-log-group-arn "arn:aws:logs:{{region}}:{{account-id}}" \
     --name "{{task-name}}" \
     --options VerifyMode=NONE,OverwriteMode=NEVER,Atime=BEST_EFFORT,Mtime=PRESERVE,Uid=INT_VALUE,Gid=INT_VALUE,PreserveDevices=PRESERVE,PosixPermissions=PRESERVE,PreserveDeletedFiles=PRESERVE,TaskQueueing=ENABLED,LogLevel=TRANSFER
   ```

1. 執行 `create-task` 命令。

   如果命令成功，您會收到回應，顯示您建立之任務的 ARN。例如：

   ```
   { 
       "TaskArn": "arn:aws:datasync:us-east-1:111222333444:task/task-08de6e6697796f026" 
   }
   ```

您已準備好[開始任務](run-task.md)。

## 任務狀態
<a name="understand-task-creation-statuses"></a>

當您建立 DataSync 任務時，您可以檢查其狀態，以查看是否已準備好執行。


| 主控台狀態 | API 狀態 | Description | 
| --- | --- | --- | 
| Available | `AVAILABLE` | 任務已準備好開始傳輸資料。 | 
| 執行中 | `RUNNING` | 任務執行正在進行中。如需詳細資訊，請參閱[任務執行狀態](run-task.md#understand-task-execution-statuses)。 | 
| Unavailable | `UNAVAILABLE` | 任務使用的 DataSync 代理程式已離線。如需詳細資訊，請參閱[如果我的客服人員離線，該怎麼辦？](troubleshooting-datasync-agents.md#troubleshoot-agent-offline) | 
| 佇列 | `QUEUED` | 另一個使用相同 DataSync 代理程式的任務執行正在進行中。如需詳細資訊，請參閱[了解您的任務何時排入佇列](run-task.md#queue-task-execution)。 | 

## 透過多項任務分割大型資料集
<a name="multiple-tasks-large-dataset"></a>

如果您要傳輸大型資料集，例如[遷移](datasync-large-migration.md)數百萬個檔案或物件，建議您使用 DataSync 增強模式進行傳輸，這可以傳輸具有幾乎無限個檔案數量的資料集。對於非常大型的資料集，使用數十億個檔案，您應該考慮使用多個 DataSync 任務分割資料集。將資料分割到多個任務 （以及可能的[客服人員](do-i-need-datasync-agent.md#multiple-agents)，視您的位置而定），有助於縮短 DataSync 準備和傳輸資料所需的時間。

考慮您可以跨數個 DataSync 任務分割大型資料集的一些方式：
+ 建立轉移個別資料夾的任務。例如，您可以在來源儲存`/FolderB`中建立兩個分別以 `/FolderA`和 為目標的任務。
+ 使用[資訊](transferring-with-manifest.md)清單或[篩選條件](filtering.md)建立傳輸檔案、物件和資料夾子集的任務。

請注意，此方法可以增加儲存體的 I/O 操作，並影響您的網路頻寬。如需詳細資訊，請參閱[如何使用 DataSync 橫向擴展架構加速資料傳輸](https://aws.amazon.com/blogs/storage/how-to-accelerate-your-data-transfers-with-aws-datasync-scale-out-architectures/)的部落格。

## 使用多個任務分割傳輸的資料
<a name="multiple-tasks-organize-transfer"></a>

如果您要將不同的資料集傳輸到相同的目的地，您可以建立多個任務，以協助分割您傳輸的資料。

例如，如果您要轉移到名為 的相同 S3 儲存貯體`MyBucket`，您可以在對應到每個任務的儲存貯體中建立不同的字首。此方法可防止檔案名稱與資料集衝突，並可讓您為每個字首設定不同的許可。以下是您可以設定此項目的方式：

1. 在`MyBucket`名為 `task1`、 `task2`和 的目的地中建立三個字首`task3`：
   + `s3://MyBucket/task1`
   + `s3://MyBucket/task2`
   + `s3://MyBucket/task3`

1. 建立三個名為 `task1`、 `task2`和 的 DataSync 任務`task3`，該任務會傳輸至 中的對應字首`MyBucket`。