LoginSignup
1

More than 5 years have passed since last update.

Talend - tMysqlXXXXX のパフォーマンス向上

Posted at

TalendでtMysql系コンポーネントを利用する際(一部は一般的)に
パフォーマンス向上の為に意識しておくべき設定をまとめておきます。

対象読者 or 前提条件 or 環境

  • Talendユーザ
  • Talend Open Source for Big Data 6.5.1

tMysqlConnection

「追加JDBCパラメータ」に、必要に応じてパラメータ設定を行います。

特に、何も考えずに大量データをSELECTすると、全てJVMに乗っかってしまってヒープ不足に陥るので
大量データをSELECTする場合は、以下のように適切なフェッチサイズを設定すると良いです。

&useCursorFetch=true&defaultFetchSize=10000

tMysqlOutput

挿入毎の行数

「詳細設定」の「挿入毎の行数」を少し大きめに設定します。
※ここは「基本設定」の「データ操作」が「挿入」になっていると表示されます。

デフォルトだと「100」と小さめの値になっているので、「10000」ぐらいにするとかなりパフォーマンスが向上します。

挿入または更新、更新または挿入

いわゆるUpsert処理になりますが、おすすめしません。
自分で実装することを考えると分かりますが、UpdateなのかInsertなのかを逐一チェックして処理するので
パフォーマンスがかなり悪いです。

事前に、Updateするレコード、Insertするレコードを振り分けて
tMysqlOutputでは「挿入」だけか「更新」だけにしたほうがパフォーマンスが良いです。

参考

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1