

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

# 資料表和集合設定規則與操作
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings"></a>

使用資料表設定指定您想套用到所選取資料表或檢視特定操作的任何設定。資料表設定規則為選用項目，取決於您的端點和遷移需求。

MongoDB 和 Amazon DocumentDB 資料庫不使用資料表和檢視，而是將資料記錄儲存為文件，並集中在*集合*內。任何 MongoDB 或 Amazon DocumentDB 端點的單一資料庫是依資料庫名稱識別的一組特定集合。

從 MongoDB 或 Amazon DocumentDB 來源遷移時，您使用的平行載入設定略有不同。在這種情況下，針對平行載入設定的自動分段或範圍分割類型，請考慮所選集合，而不是資料表和檢視表。

**Topics**
+ [資料表設定中的萬用字元受到限制](#CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.Wildcards)
+ [在選取的資料表、檢視和集合使用平行載入](#CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.ParallelLoad)
+ [指定所選資料表或檢視的 LOB 設定](#CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.LOB)
+ [資料表設定範例](#CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.Examples)

針對使用資料表設定規則類型的資料表映射規則，可套用下列參數。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.html)

## 資料表設定中的萬用字元受到限制
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.Wildcards"></a>

來源資料庫不支援在 `"table-settings"` 規則中使用百分比萬用字元 (`"%"`)，如下所示。

```
{
    "rule-type": "table-settings",
    "rule-id": "8",
    "rule-name": "8",
    "object-locator": {
        "schema-name": "ipipeline-prod",            
        "table-name": "%"
    },
    "parallel-load": {
        "type": "partitions-auto",
        "number-of-partitions": 16,
        "collection-count-from-metadata": "true",
        "max-records-skip-per-page": 1000000,
        "batch-size": 50000
    }
  }
```

如果您在如下所示的`"table-settings"`規則`"%"`中使用 ，則 會 AWS DMS 傳回以下例外狀況。

```
Error in mapping rules. Rule with ruleId = x failed validation. Exact 
schema and table name required when using table settings rule.
```

此外， AWS 建議您不要使用具有 的單一任務載入大量大型集合`parallel-load`。請注意， AWS DMS 會限制資源爭用以及 `MaxFullLoadSubTasks` 任務設定參數值平行載入的區段數目，最大值為 49。

作為替代，請指定來源資料庫的所有大型集合，方法是分別指定 `"schema-name"` 和 `"table-name"`。此外，也請正確縱向擴展您的遷移。例如，在數量充足的複寫執行個體上執行多項任務，以處理資料庫中大量的大型集合。

## 在選取的資料表、檢視和集合使用平行載入
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.ParallelLoad"></a>

若要加速遷移並讓程序更有效率，您可以對所選資料表、檢視和集合使用平行載入。換言之，您可以平行使用多個執行緒來遷移單一區段的資料表、檢視或集合。若要這樣做， 會將完整載入任務 AWS DMS 分割為執行緒，並將每個資料表區段配置給自己的執行緒。

使用此平行載入程序，可以用多重執行緒從來源端點平行卸載多個資料表、檢視和集合。然後讓多重執行緒平行遷移及載入相同的資料表、檢視和集合到目標端點。針對某些資料庫引擎，您可以依分割區或子分割區來區隔資料表和檢視。對於其他資料庫引擎，您可以根據特定參數 AWS DMS 自動分割集合 （自動分割）。或者，您可依指定的資料欄值範圍來區隔任何資料表或檢視。

平行載入支援於以下的來源端點：
+ Oracle
+ Microsoft SQL Server
+ MySQL
+ PostgreSQL
+ IBM Db2 LUW
+ SAP Adaptive Server Enterprise (ASE)
+ MongoDB (僅支援平行完全載入的自動分段和範圍分段選項)
+ Amazon DocumentDB (僅支援平行完全載入的自動分段和範圍分段選項)

對於 MongoDB 和 Amazon DocumentDB 端點， AWS DMS 支援下列資料欄的資料類型，這些資料欄是平行完全載入的範圍分割選項的分割區索引鍵。
+ Double
+ String
+ ObjectId
+ 32 位元整數
+ 64 位元整數

下列目標端點支援與資料表設定規則搭配使用的平行負載：
+ Oracle
+ Microsoft SQL Server
+ MySQL
+ PostgreSQL
+ Amazon S3
+ SAP Adaptive Server Enterprise (ASE)
+ Amazon Redshift
+ MongoDB (僅支援平行完全載入的自動分段和範圍分段選項)
+ Amazon DocumentDB (僅支援平行完全載入的自動分段和範圍分段選項)
+ Db2 LUW

若要指定要平行載入的資料表和檢視數量上限，請使用 `MaxFullLoadSubTasks` 任務設定。

若要為平行載入任務的支援目標指定每個資料表或檢視的執行緒數目上限，請使用資料欄值邊界定義更多區段。

**重要**  
`MaxFullLoadSubTasks` 控制要平行載入的資料表或資料表區段數目。`ParallelLoadThreads` 控制遷移任務用來平行執行載入的執行緒數目。*這些設定會相乘*。因此，在完全載入任務期間所使用的執行緒總數，大約是 `ParallelLoadThreads `值乘以 `MaxFullLoadSubTasks` (`ParallelLoadThreads` **\$1** `MaxFullLoadSubtasks)` 的值.  
如果您建立具有大量「完全載入」子任務和大量平行載入執行緒的任務，則任務可能會耗用太多記憶體而失敗。

若要指定 Amazon DynamoDB、Amazon Kinesis Data Streams、Apache Kafka 或 Amazon Elasticsearch Service 目標的每個資料表執行緒數目上限，請使用 `ParallelLoadThreads` 目標中繼資料任務設定。

若要指定使用 `ParallelLoadThreads` 時平行載入任務的緩衝區大小，請使用 `ParallelLoadBufferSize` 目標中繼資料任務設定。

`ParallelLoadThreads` 和 `ParallelLoadBufferSize` 的可用性和設定取決於目標端點。

如需 `ParallelLoadThreads` 和 `ParallelLoadBufferSize` 設定的詳細資訊，請參閱：[目標中繼資料任務設定](CHAP_Tasks.CustomizingTasks.TaskSettings.TargetMetadata.md)。如需 `MaxFullLoadSubTasks` 設定的詳細資訊，請參閱[完全載入任務設定](CHAP_Tasks.CustomizingTasks.TaskSettings.FullLoad.md)。如需目標端點的特有資訊，請參閱相關主題。

若要使用平行載入，請使用 `parallel-load` 選項建立 `table-settings` 類型的資料表映射規則。在 `table-settings` 規則中，您可以指定要平行載入的單一資料表、檢視或集合的區隔條件。若要這樣做，請將 `parallel-load` 選項的 `type` 參數設定為數個選項之一。

此做法取決於您如何將資料表、檢視或集合分段以進行平行負載：
+ 依分割區 (或區段) – 使用 `partitions-auto` 類型載入所有現有的資料表或檢視分割區 (或區段)。或者也可以使用指定分割區陣列的 `partitions-list` 類型，只載入選擇的分割區。

  僅針對 MongoDB 和 Amazon DocumentDB 端點，依區段載入所有或指定的集合，這些區段也會使用 `partitions-auto`類型和其他選用`table-settings`參數 AWS DMS 自動計算。
+ (僅限 Oracle 端點) 依子分割區 – 使用 `subpartitions-auto` 類型載入所有現有的資料表或檢視子分割區。或者也可以使用所指定 `subpartitions` 陣列的 `partitions-list` 類型，只載入選擇的子分割區。
+ 依您定義的區段 – 使用資料欄值邊界，載入您定義的資料表、檢視或集合區段。若要這樣做，請使用 `ranges` 類型與指定的 `columns` 和 `boundaries` 陣列。
**注意**  
PostgreSQL 僅支援此類型的平行負載。MongoDB 和 Amazon DocumentDB 作為來源端點時，同時支援此範圍分段類型和平行完全載入的自動分段類型 (`partitions-auto`)。

若要識別要平行載入的額外資料表、檢視或集合，請使用 `parallel-load` 選項指定額外的 `table-settings` 物件。

在下列程序中，您可以了解如何為每個平行載入類型設定 JSON 程式碼，從最簡單到最複雜。

**指定所有資料表、檢視或集合分割區，或所有資料表或檢視子分割區**
+ 使用 `partitions-auto` 類型或 `subpartitions-auto` 類型 (但不能同時使用) 指定 `parallel-load`。

  每個資料表、檢視或集合分割區 (或區段) 便會自動分配至自己的執行緒。

  對於部分端點，分割區或子分割區只有已在資料表或檢視中定義時才會參與平行載入。對於 MongoDB 和 Amazon DocumentDB 來源端點，您可以讓 根據選用的其他參數 AWS DMS 自動計算分割區 （或區段）。其中包括 `number-of-partitions`、`collection-count-from-metadata`、`max-records-skip-per-page` 和 `batch-size`。

**指定所選的資料表或檢視分割區、子分割區或兩者同時**

1. 使用 `partitions-list` 類型指定 `parallel-load`。

1. (選用) 指定分割區名稱陣列作為 `partitions` 的值，來包含分割區。

   每個指定的分割區會分配至自己的執行緒。
**重要**  
對於 Oracle 端點，請確定選擇平行載入的分割區和子分割區並未重疊。如果您使用重疊的分割區和子分割區平行載入資料，系統會複製項目，或者因主索引鍵重複違規而失敗。

1. (選用) 僅限 Oracle 端點，可指定子分割區名稱陣列作為 `subpartitions` 的值，以包含子分割區。

   接著每個指定的子分割區將分配至自己的執行緒。
**注意**  
分割區或子分割區只有已在資料表或檢視中定義時才會參與平行載入。

您可將資料表或檢視區段指定為資料欄值範圍。這麼做的時候，請注意以下資料欄特性：
+ 指定索引欄可大幅提升效能。
+ 您可以指定最多 10 個資料欄。
+ 您無法使用資料欄定義具有下列 AWS DMS 資料類型的區段邊界：DOUBLE、FLOAT、BLOB、CLOB 和 NCLOB
+ 不會複寫具有 Null 值的記錄。

**以資料欄值範圍指定資料表、檢視或集合區段**

1. 使用 `ranges` 類型指定 `parallel-load`。

1. 指定資料表資料欄名稱作為 `columns` 的值，來定義資料表或檢視區段之間的邊界。請針對您要定義資料表或檢視區段之間邊界的每個資料欄，執行此操作。

   資料欄的順序很重要。在定義各邊界時，第一個資料欄最重要，最後一個資料欄最不重要，如以下步驟所述。

1. 指定邊界陣列作為 `boundaries` 的值，來定義所有資料表或檢視區段的資料範圍。*邊界陣列*是資料欄值陣列的陣列。要完成此操作，請遵循以下步驟：

   1. 指定資料欄值陣列的每個元素，作為對應至每個資料欄的值。*資料欄值陣列*代表您希望定義之每個資料表或檢視區段的上邊界。依照您在 `columns` 陣列中指定資料欄的相同順序，來指定每個資料欄。

      以來源支援的格式輸入 DATE 資料欄的值。

   1. 指定每個資料欄值陣列作為上邊界，按照每個區段從底部到資料表或檢視的下一個上區段的順序。如果所指定的上邊界上方有任何資料列，這些資料列將填入資料表或檢視的上區段。因此，範圍區段的數量可能比邊界陣列中區段邊界的數量多一。每個這類的範圍區段都會分配至自己的執行緒。

      將複寫所有非 Null 的資料，即使您未定義資料表或檢視中所有資料欄的資料範圍。

   例如，假設您為 COL1、COL2 和 COL3 資料欄定義三個資料欄值陣列，如下所示。    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/dms/latest/userguide/CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.html)

   您已定義三個區段邊界，總數可能為四個區段。

   為了識別每個區段要複製的資料列範圍，複寫執行個體會套用搜尋方式至四個區段中的三個資料欄：搜尋類似如下：  
**區段 1**  
複寫下列為 true 的所有資料列：前兩個欄值小於或等於其對應的**區段 1** 上限邊界值。此外，第三個欄的值小於其**區段 1** 的上限邊界值。  
**區段 2**  
複寫下列為 true 的所有資料列 (**區段 1** 資料列除外)：前兩欄的值小於或等於其對應**區段 2** 的上限邊界值。此外，第三個欄的值小於其**區段 2** 的上限邊界值。  
**區段 3**  
複寫下列為 true 的所有資料列 (**區段 2** 資料列除外)：前兩欄的值小於或等於其對應**區段 3** 的上限邊界值。此外，第三個欄的值小於其**區段 3** 的上限邊界值。  
**區段 3**  
複製所有其餘的資料列 (**區段 1、2 和 3** 的資料列除外)。

   在這種情況下，複寫執行個體將建立 `WHERE` 子句，以載入每個區段，如下所示：  
**區段 1**  
`((COL1 < 10) OR ((COL1 = 10) AND (COL2 < 30)) OR ((COL1 = 10) AND (COL2 = 30) AND (COL3 < 105)))`  
**區段 2**  
`NOT ((COL1 < 10) OR ((COL1 = 10) AND (COL2 < 30)) OR ((COL1 = 10) AND (COL2 = 30) AND (COL3 < 105))) AND ((COL1 < 20) OR ((COL1 = 20) AND (COL2 < 20)) OR ((COL1 = 20) AND (COL2 = 20) AND (COL3 < 120)))`  
**區段 3**  
`NOT ((COL1 < 20) OR ((COL1 = 20) AND (COL2 < 20)) OR ((COL1 = 20) AND (COL2 = 20) AND (COL3 < 120))) AND ((COL1 < 100) OR ((COL1 = 100) AND (COL2 < 12)) OR ((COL1 = 100) AND (COL2 = 12) AND (COL3 < 99)))`  
**區段 3**  
`NOT ((COL1 < 100) OR ((COL1 = 100) AND (COL2 < 12)) OR ((COL1 = 100) AND (COL2 = 12) AND (COL3 < 99)))`

## 指定所選資料表或檢視的 LOB 設定
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.LOB"></a>

您可以透過使用一或多個 `table-settings` 物件的 `lob-settings` 選項建立 `table-settings` 類型的資料表映射規則，來設定一或多個資料表的任務 LOB 設定。

支援對下列來源端點指定所選資料表或檢視的 LOB 設定：
+ Oracle
+ Microsoft SQL Server
+ MySQL
+ PostgreSQL
+ IBM Db2，視 `mode` 和 `bulk-max-size` 設定而定，如下所述
+ SAP Adaptive Server Enterprise (ASE)，視 `mode` 和 `bulk-max-size` 設定而定，如下所述

支援對下列目標端點指定所選資料表或檢視的 LOB 設定：
+ Oracle
+ Microsoft SQL Server
+ MySQL
+ PostgreSQL
+ SAP ASE，視 `mode` 和 `bulk-max-size` 設定而定，如下所述

**注意**  
只有包含主索引鍵的資料表和檢視才能使用 LOB 資料類型。

若要使用所選資料表或檢視的 LOB 設定，您可以使用 `lob-settings` 選項建立 `table-settings` 類型的資料表映射規則。這麼做會指定由 `object-locator` 選項所識別資料表或檢視的 LOB 處理方式。在 `table-settings` 規則中，您可以用下列參數指定 `lob-settings` 物件：
+ `mode` – 指定處理所選資料表或檢視的 LOB 遷移機制，如下所示：
  + `limited` – 此預設的有限 LOB 模式是速度最快且最有效率的模式。此模式只適用於當您所有的 LOB 皆為小型 (大小為 100 MB 以內) 或目標端點不支援不限 LOB 大小。此外，如果您使用 `limited`，所有 LOB 都需要落在您設定的 `bulk-max-size` 大小內。

    在完全載入任務的這個模式下，複寫執行個體將遷移內嵌於主要資料表或檢視儲存中其他資料欄資料類型的所有 LOB。不過，執行個體會將任何大於 `bulk-max-size` 值的已遷移 LOB 截斷為指定的大小。針對變更資料擷取 (CDC) 載入任務，執行個體會使用來源資料表查詢來遷移所有 LOB，如同在標準的完整 LOB 模式下 (請參閱以下內容)。
**注意**  
您只能遷移完全載入任務的檢視。
  + `unlimited` – 完整 LOB 模式的遷移機制取決於您在 `bulk-max-size` 設定的值，如下所示：
    + **標準完整 LOB 模式** – `bulk-max-size` 設定為零時，複寫執行個體會使用標準完整 LOB 模式遷移所有 LOB。此模式需要在來源資料表或檢視中查詢，以遷移每個 LOB，無論大小。此方法通常會導致遷移速度變得比有限 LOB 模式更慢。此模式只能在所有或多數 LOB 為大型 (1 GB 或更大) 時使用。
    + **組合完整 LOB 模式** – 當您將 `bulk-max-size` 設為非零值時，這個完整 LOB 模式將組合使用有限 LOB 模式和標準完整 LOB 模式。也就是說，對於完全載入任務，如果 LOB 大小在您的 `bulk-max-size` 值以下，執行個體將遷移 LOB 內嵌，如同在有限 LOB 模式下。如果 LOB 大小大於這個值，執行個體將使用來源資料表或檢視查詢遷移 LOB，如同在標準完整 LOB 模式下。針對變更資料擷取 (CDC) 載入任務，執行個體會使用來源資料表查詢來遷移所有 LOB，如同在標準的完整 LOB 模式下 (請參閱以下內容)。此行為不考慮 LOB 大小。
**注意**  
您只能遷移完全載入任務的檢視。

      此模式的遷移速度介於比較快的有限 LOB 模式和比較慢的標準完整 LOB 模式之間。此模式只適合在您同時擁有小型和大型 LOB 且多數 LOB 為小型時使用。

      此組合完整 LOB 模式僅適用於以下端點：
      + 做為來源的 IBM Db2 
      + 做為來源或目標的 SAP ASE

    無論您為 `unlimited` 模式指定何種機制，執行個體都會完整遷移所有的 LOB，不會截斷。
  + `none` – 複寫執行個體將使用任務 LOB 設定遷移所選資料表或檢視中的 LOB。使用此選項，可協助比較有無針對所選資料表或檢視使用 LOB 設定的遷移結果。

  如果指定的資料表或檢視有 LOB 包含在複寫內時，只有在使用 `limited` LOB 模式時，才能將 `BatchApplyEnabled` 任務設定設為 `true`。

  在某些情況下，您可能會將 `BatchApplyEnabled` 設定為 `true`，並將 `BatchApplyPreserveTransaction` 設定為 `false`。在這些情況下，執行個體會在資料表或檢視有 LOB 且來源和目標端點為 Oracle 時，將 `BatchApplyPreserveTransaction` 設定為 `true`。
+ `bulk-max-size` – 將此值設為零值或非零值 (以 KB 為單位)，視先前項目中所述的 `mode` 而定。在 `limited` 模式下，您必須為此參數設定非零的值。

  執行個體會將 LOB 轉換為二進位格式。因此，若要指定您需要複寫的最大的 LOB，請將其大小乘上三倍。例如，若您最大型的 LOB 是 2 MB，請將 `bulk-max-size` 設定為 6000 (6 MB)。

## 資料表設定範例
<a name="CHAP_Tasks.CustomizingTasks.TableMapping.SelectionTransformation.Tablesettings.Examples"></a>

以下是示範如何使用資料表設定的一些範例。

**Example 載入依分割區分段的資料表**  
以下範例依所有分割區平行載入，可更有效地載入來源中的 `SALES` 資料表。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "partitions-auto"
            }
        }
     ]
}
```

**Example 載入依子分割區分段的資料表**  
以下範例依所有子分割區平行載入，可更有效地載入 Oracle 來源中的 `SALES` 資料表。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "subpartitions-auto"
            }
        }
     ]
}
```

**Example 載入依分割區清單分段的資料表**  
以下範例依特定分割區清單平行載入，以載入來源中的 `SALES` 資料表。在這種情況下，指定分割區將按英文字母部分開頭的值命名，例如 `ABCD`、`EFGH` 等。  

```
{
    "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "partitions-list",
                "partitions": [
                    "ABCD",
                    "EFGH",
                    "IJKL",
                    "MNOP",
                    "QRST",
                    "UVWXYZ"
                ]
            }
        }
    ]
}
```

**Example 載入依所選分割區和子分割區清單分段的 Oracle 資料表**  
以下範例依所選分割區和子分割區清單平行載入，以載入 Oracle 來源中的 `SALES` 資料表。在這種情況下，指定分割區將按英文字母部分開頭的值命名，例如 `ABCD`、`EFGH` 等。指定的分割區將按數字開頭的值來命名，例如 `01234` 和 `56789`。  

```
{
    "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "partitions-list",
                "partitions": [
                    "ABCD",
                    "EFGH",
                    "IJKL",
                    "MNOP",
                    "QRST",
                    "UVWXYZ"
                ],
                "subpartitions": [
                    "01234",
                    "56789"
                ]
            }
        }
    ]
}
```

**Example 載入依資料行值範圍分段的資料表**  
以下範例依 `SALES_NO` 和 `REGION` 資料欄值範圍指定之區段平行載入，以載入來源中的 `SALES` 資料表。  

```
{
    "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "ranges",
                "columns": [
                    "SALES_NO",
                    "REGION"
                ],
                "boundaries": [
                    [
                        "1000",
                        "NORTH"
                    ],
                    [
                        "3000",
                        "WEST"
                    ]
                ]
            }
        }
    ]
}
```
在這種情況下，將使用 `SALES_NO` 和 `REGION` 名稱指定兩個資料欄的區段範圍。兩個邊界以兩組資料欄值 (`["1000","NORTH"]` 和 `["3000","WEST"]`) 指定。  
這兩個邊界將識別下列要平行載入的三個資料表區段：    
區段 1  
`SALES_NO` 小於或等於 1000 且 `REGION` 低於「NORTH」的資料列。也就是，在 EAST 區域最高至 1000 的銷售額。  
區段 2  
**區段 1** 以外、`SALES_NO` 小於或等於 3000 且 `REGION` 低於「WEST」的資料列。也就是，在 NORTH 和 SOUTH 區域超過 1000 最高至 3000 的銷售額。  
區段 3  
**區段 1** 和**區段 2** 以外所有其他的資料列。也就是，在 WEST 區域超過 3,000 的銷售額。

**Example 載入兩個資料表：一個依範圍分段，另一個依分割區分段**  
以下範例會依您所識別的區段邊界，平行載入 `SALES` 資料表。並依所有分割區平行載入 `ORDERS` 資料表，如同先前的範例。  

```
{
    "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "SALES"
            },
            "parallel-load": {
                "type": "ranges",
                "columns": [
                    "SALES_NO",
                    "REGION"
                ],
                "boundaries": [
                    [
                        "1000",
                        "NORTH"
                    ],
                    [
                        "3000",
                        "WEST"
                    ]
                ]
            }
        },
        {
            "rule-type": "table-settings",
            "rule-id": "3",
            "rule-name": "3",
            "object-locator": {
                "schema-name": "HR",
                "table-name": "ORDERS"
            },
            "parallel-load": {
                "type": "partitions-auto" 
            }
        }
    ]
}
```

**Example 使用任務 LOB 設定載入含 LOB 的資料表**  
以下範例使用任務 LOB 設定載入來源中的 `ITEMS` 資料表，包含所有 LOB。將忽略 100 MB 的 `bulk-max-size` 設定，並退出快速重設為 `limited` 或 `unlimited` 模式。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "INV",
                "table-name": "ITEMS"
            },
            "lob-settings": {
                "mode": "none",
                "bulk-max-size": "100000"
            }
        }
     ]
}
```

**Example 使用有限 LOB 模式載入含 LOB 的資料表**  
以下範例使用有限 LOB 模式 (預設值) 載入來源中的 `ITEMS` 資料表，包含 LOB，最大非截斷大小為 100 MB。任何大於此大小的 LOB 將截斷為 100 MB。所有 LOB 將內嵌於所有其他資料欄資料類型載入。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "INV",
                "table-name": "ITEMS"
            },
            "lob-settings": {
                "bulk-max-size": "100000"
            }
        }
     ]
}
```

**Example 使用標準完整 LOB 模式載入含 LOB 的資料表**  
以下範例使用標準完整 LOB 模式載入來源中的 `ITEMS` 資料表，包含其所有的 LOB，無截斷。使用來源資料表中每個 LOB 的查詢，分別從其他資料類型載入所有 LOB，無論大小。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "INV",
                "table-name": "ITEMS"
            },
            "lob-settings": {
                "mode": "unlimited",
                "bulk-max-size": "0"
            }
        }
     ]
}
```

**Example 使用組合完整 LOB 模式載入含 LOB 的資料表**  
以下範例使用組合完整 LOB 模式載入來源中的 `ITEMS` 資料表，包含其所有的 LOB，無截斷。將內嵌於其他資料類型載入大小在 100 MB 以內的所有 LOB，如同在有限 LOB 模式下。所有大小超過 100 MB 的 LOB 都會與其他資料類型分開載入。此個別載入會對來源資料表中的每個這類 LOB 使用查詢，如標準完整 LOB 模式所示。  

```
{
   "rules": [{
            "rule-type": "selection",
            "rule-id": "1",
            "rule-name": "1",
            "object-locator": {
                "schema-name": "%",
                "table-name": "%"
            },
            "rule-action": "include"
        },
        {
            "rule-type": "table-settings",
            "rule-id": "2",
            "rule-name": "2",
            "object-locator": {
                "schema-name": "INV",
                "table-name": "ITEMS"
            },
            "lob-settings": {
                "mode": "unlimited",
                "bulk-max-size": "100000"
            }
        }
     ]
}
```