

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

# 使用 JSON 指定資料表選擇及轉換
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation"></a>

您可以建立 JSON 檔案，來指定您希望在遷移期間套用的資料表映射。若您使用主控台建立遷移任務，您可以瀏覽此 JSON 檔案或將 JSON 直接輸入資料表映射方塊。如果您使用 CLI 或 API 來執行遷移，您可以使用 `CreateReplicationTask` 或 `ModifyReplicationTask` API 操作的 `TableMappings` 參數來指定此檔案。

AWS DMS 只能處理大小上限為 2 MB 的資料表映射 JSON 檔案。我們建議您在處理 DMS 任務時，將映射規則 JSON 檔案大小保持在 2 MB 以下。這麼做可防止任務建立或修改期間發生未預期的錯誤。當映射規則檔案超過 2 MB 的限制時，建議您將資料表分割為多個任務以減少映射規則檔案的大小，使其維持在此限制之下。

您可以指定您想要使用的資料表、檢視和結構描述。您也可以執行資料表、檢視和結構描述轉換，並指定 AWS DMS 如何載入個別資料表和檢視的設定。您可以使用以下規則類型，為這些選項建立資料表映射規則：
+ `selection` 規則 – 識別要載入的來源資料表、檢視和結構描述的類型和名稱。如需詳細資訊，請參閱[選取規則與動作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Selections.md)。
+ `transformation` 規則 – 在將特定來源資料表和結構描述載入目標之前，指定對來源資料表和結構描述的特定變更或新增。如需詳細資訊，請參閱[轉換規則與動作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Transformations.md)。

  此外，若要定義全新和現有的欄的內容，您可以在轉換規則內使用表達式。如需詳細資訊，請參閱[使用轉換規則表達式定義資料行內容](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Expressions.md)。
+ `table-settings` 規則 – 指定 DMS 任務如何為個別資料表載入資料。如需詳細資訊，請參閱[資料表和集合設定規則與操作](CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.md)。

**注意**  
對於 Amazon S3 目標，您也可以使用 `post-processing` 規則類型和 `add-tag` 規則動作，以標記映射到所選資料表和結構描述的 S3 物件。如需詳細資訊，請參閱[Amazon S3 物件標記](CHAP_Target.S3.md#CHAP_Target.S3.Tagging)。  
針對下列目標，您可以使用 `object-mapping` 規則類型，指定所選結構描述和資料表的遷移方式和目標位置：  
Amazon DynamoDB – 如需詳細資訊，請參閱：[使用物件映射將資料遷移到 DynamoDB](CHAP_Target.DynamoDB.md#CHAP_Target.DynamoDB.ObjectMapping)。
Amazon Kinesis – 如需詳細資訊，請參閱：[使用物件映射將資料遷移到 Kinesis 資料串流](CHAP_Target.Kinesis.md#CHAP_Target.Kinesis.ObjectMapping)。
Apache Kafka – 如需詳細資訊，請參閱：[使用物件映射將資料遷移到 Kafka 主題](CHAP_Target.Kafka.md#CHAP_Target.Kafka.ObjectMapping)。