DM のConfiguration / コンフィグレーションを最適化する

このドキュメントでは、データ移行タスクの構成を最適化して、データ移行のパフォーマンスを向上させる方法を紹介します。

完全なデータのエクスポート

mydumpersはフル データ エクスポートに関連する設定項目です。このセクションでは、パフォーマンス関連のオプションを構成する方法について説明します。

rows

rowsオプションを設定すると、マルチスレッドを使用して単一のテーブルから同時にデータをエクスポートできます。値rowsは、エクスポートされた各チャンクに含まれる行の最大数です。このオプションを有効にすると、MySQL 単一テーブルのデータが同時にエクスポートされるときに、DM は分割ベンチマークとして列を選択します。この列は、主キー列、一意のインデックス列、および通常のインデックス列 (優先順位の高いものから低いものへ) のいずれかになります。この列が整数型であることを確認してください (たとえば、 INTMEDIUMINTBIGINT )。

rowsの値は 10000 に設定できます。この値は、テーブル内の行の総数とデータベースのパフォーマンスに応じて変更できます。さらに、同時スレッド数を制御するには、 threadsを設定する必要があります。デフォルトでは、値threadsは 4 です。この値は必要に応じて調整できます。

chunk-filesize

フル バックアップ中、DM はchunk-filesizeオプションの値に従って、各テーブルのデータを複数のチャンクに分割します。各チャンクは、約chunk-filesizeのサイズのファイルに保存されます。このように、データは複数のファイルに分割され、DM Load ユニットの並列処理を使用してインポート速度を向上させることができます。このオプションのデフォルト値は 64 (MB) です。通常、このオプションを設定する必要はありません。設定する場合は、完全なデータのサイズに応じてこのオプションの値を調整してください。

ノート:

  • 移行タスクの作成後に値mydumpersを更新することはできません。タスクを作成する前に、各オプションの値を確認してください。値を更新する必要がある場合は、dmctl を使用してタスクを停止し、構成ファイルを更新して、タスクを再作成します。
  • mydumpers .簡単にするために、 threadsmydumper-thread構成アイテムに置き換えることができます。
  • rowsが設定されている場合、DM はchunk-filesizeの値を無視します。

完全なデータのインポート

loadersはフル データ インポートに関連する設定項目です。このセクションでは、パフォーマンス関連のオプションを構成する方法について説明します。

pool-size

pool-sizeオプションは、DM Load ユニット内のスレッド数を決定します。デフォルト値は 16 です。通常、このオプションを設定する必要はありません。設定する場合は、完全なデータのサイズとデータベースのパフォーマンスに応じて、このオプションの値を調整してください。

ノート:

  • 移行タスクの作成後に値loadersを更新することはできません。タスクを作成する前に、各オプションの値を確認してください。値を更新する必要がある場合は、dmctl を使用してタスクを停止し、構成ファイルを更新して、タスクを再作成します。
  • loaders .簡単にするために、 pool-sizeloader-thread構成アイテムに置き換えることができます。

増分データ複製

syncersは増分データ レプリケーションに関連する構成項目です。このセクションでは、パフォーマンス関連のオプションを構成する方法について説明します。

worker-count

worker-countは、DM Sync ユニットでの DML の同時レプリケーションのスレッド数を決定します。デフォルト値は 16 です。データ複製を高速化するには、このオプションの値を適切に増やします。

batch

batchは、DM 同期ユニット中にデータがダウンストリーム データベースにレプリケートされるときに、各トランザクションに含まれる DML の数を決定します。デフォルト値は 100 です。通常、このオプションの値を変更する必要はありません。

ノート:

  • レプリケーション タスクの作成後に値syncersを更新することはできません。タスクを作成する前に、各オプションの値を確認してください。値を更新する必要がある場合は、dmctl を使用してタスクを停止し、構成ファイルを更新して、タスクを再作成します。
  • syncers .簡単にするために、 worker-countsyncer-thread構成アイテムに置き換えることができます。
  • 実際のシナリオに応じて、 worker-countbatchの値を変更できます。たとえば、DM とダウンストリーム データベース間のネットワーク遅延が大きい場合は、 worker-countの値を増やしてbatchの値を適切に減らすことができます。
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.