Write to DB の最適化

デフォルトでは、Write to DB ステージは各行をテーブルに挿入した後で確定されます。ただし、パフォーマンスを向上するためには、[一括確定] オプションを有効にします。このオプションが有効になっている場合は、指定された数のレコードを処理した後に確定が行われます。データベースによっては、これによって書き出しパフォーマンスを大幅に向上させることができます。

バッチ サイズの選択時には、以下の点を考慮してください。

  • Write To DB ステージへのデータ到着速度: データの到着速度がデータベースの処理速度よりも遅い場合は、バッチ サイズを変更してもデータフローの全般的なパフォーマンスは改善しません。例えば、データフローで住所検証またはジオコーディングが行われている場合は、バッチ サイズを大きくしても効果が得られないことがあります。
  • ネットワーク トラフィック: 低速のネットワークでは、バッチ サイズを中程度 (1,000 ~ 10,000) まで大きくすると、パフォーマンスが改善します。
  • データベースの負荷や処理速度: データベースの処理能力が高い場合は、バッチ サイズを大きくすると、パフォーマンスが改善します。
  • 複数の実行時インスタンス: Write to DB の複数の実行時インスタンスを使用している場合、バッチ サイズを大きくすると大量のメモリが消費されるので、小または中程度のバッチ サイズ (100 ~ 10,000) を使用してください。
  • データベース ロールバック: いずれかの文が失敗すると、バッチ全体がロールバックされます。バッチ サイズを大きくすると、ロールバックの実行時間が長くなります。