AWS DMS タスクのソースデータベースの LOB サポートの設定 - AWS Database Migration Service

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS DMS タスクのソースデータベースの LOB サポートの設定

ラージバイナリオブジェクト (LOB) をシステム間で移行することは難しい場合があります。AWS DMS には、LOB の列のチューニングに役立つ多くのオプションが用意されています。どのデータ型がいつ AWS DMS によって LOB と見なされるかについては、「AWS DMS」のドキュメントをご参照ください。

データベース間でデータを移行するとき、特に異機種間で移行するときは、LOB の保存方法の見直しが必要になる場合があります。その場合、LOB データを移行する必要はありません。

LOB を含める場合は、他の LOB 設定を決定できます。

  • LOB モードにより、LOB の処理方法が決定されます。

    • [Full LOB mode](完全 LOB モード) - Full LOB mode (完全 LOB モード) では、AWS DMS によってソースからターゲットに、サイズにかかわらずすべての LOB が移行されます。この設定では、AWS DMS の最大許容 LOB サイズに関する情報は不要です。したがって、LOB は一度に 1 つずつ移行されます。Full LOB mode は非常に低速になることがあります。

    • [Limited LOB mode] (制限付き LOB モード) - 制限付き LOB モードでは、DMS の最大許容 LOB サイズを設定します。このオプションでは、DMS によってメモリが事前に割り当てられ、LOB データを一括でロードできるようになります。最大許容 LOB サイズを超える LOB は切り捨てられ、警告がログファイルに発行されます。制限付き LOB モードでは、完全 LOB モードよりも大幅にパフォーマンスが向上します。可能な限り Limited LOB mode を使用することをお勧めします。最大推奨値は 102400 KB (100 MB) です。

      注記

      [Max LOB size (K) ](最大 LOB サイズ(K)) オプションを 63 KB より大きい値で使用すると、制限付き LOB モードで実行されるように設定された全ロードのパフォーマンスが低下します。全ロード中、DMS は [Max LOB size (k)](最大 LOB サイズ (k)) 値にコミットレートを掛けてメモリを割り当てて、この積に LOB 列数を乗算します。DMS がそのメモリを事前割り当てできない場合、DMS は SWAP メモリの消費をスタートし、全ロードのパフォーマンスが低下します。したがって、制限された LOB モードを使用するときにパフォーマンスの問題が発生する場合は、許容レベルのパフォーマンスを達成するまでコミットレートを下げることを検討してください。テーブルの LOB ディストリビューションを理解したら、サポートされているエンドポイントでインライン LOB モードを使用することを検討することもできます。

      制限された LOBValidationPartialLobSize サイズを検証するには、LobMaxSize (K) と同じ値に設定する必要があります。

    • [Inline LOB mode](インライン LOB モード) — インライン LOB モードでは、DMS がインラインで転送する最大 LOB サイズを設定します。指定されたサイズより小さい LOB はインラインで転送されます。指定されたサイズよりも大きい LOB は、フル LOB モードを使用してレプリケーションされます。このオプションを選択すると、ほとんどの LOB が小さい場合に、小さい LOB と大規模な LOB 両方のレプリケーションができます。DMS は S3 や Redshift のようなフル LOB モードをサポートしないエンドポイントでは、インライン LOB モードをサポートしていません。

    注記

    Oracle では、LOB は可能な限り VARCHAR データ型として扱われます。この方法では、AWS DMS によって LOB がデータベースから一括でフェッチされるため、他の方法よりも大幅に高速になります。Oracle での VARCHAR の最大サイズは 32 K です。そのため、Oracle がソースデータベースである場合は、最大許容 LOB サイズを 32 K 未満に設定するのが最適です。

  • 制限付き LOB モードで実行されるようにタスクを設定している場合、[Max LOB size (K) (最大 LOB サイズ (K))] オプションによって AWS DMS の最大許容 LOB サイズが決まります。この値よりも大きい LOB はこの値まで切り捨てられます。

  • 完全 LOB モードを使用するようにタスクを設定している場合、AWS DMS によって LOB は 1 つずつ取得されます。[LOB chunk size (K) (LOB チャンクサイズ (K))] オプションにより、各ピースのサイズが決定されます。このオプションを設定するときは、ネットワーク設定の最大許容パケットサイズに特に注意してください。LOB チャンクサイズが最大許容パケットサイズを超えた場合は、切断エラーが表示されることがあります。LobChunkSizeの推奨値は 64 キロバイトです。64 KBLobChunkSize を超える値を増やすと、タスクが失敗する可能性があります。

  • インライン LOB モードで実行するようにタスクを設定している場合、InlineLobMaxSize 設定により、どの LOB DMS がインラインで転送されるかが決まります。

タスク設定でこれらのオプションを指定する方法の詳細については、「ターゲットメタデータのタスク設定」をご参照ください。