すべてのプロダクト
Search
ドキュメントセンター

E-MapReduce:パフォーマンス最適化のための共通パラメーター

最終更新日:Jan 11, 2025

このトピックでは、Taildir Source、File Channel、および HDFS Sink コンポーネントのいくつかの共通パラメーターについて説明します。これらのパラメーターを調整して、Flume のパフォーマンスを最適化できます。

Taildir Source

パラメーター説明
filegroupsディレクトリを複数のディレクトリに分割して、Taildir Source の読み取り並列性を高めます。
batchSizeデフォルト値:100。同時に読み取られるデータ行の数。スループットを向上させるには、このパラメーターの値を増やします。

File Channel

パラメーター説明
checkpointIntervalデフォルト値:30。単位:秒。チェックポイント間隔を短縮するには、このパラメーターの値を減らします。
useDualCheckpointsデフォルト値:false。File Channel でチェックポイントのバックアップを有効にするには、このパラメーターを true に設定します。これにより、チャネルの再起動時に、チャネルは最初からイベントを読み取る必要がなくなります。
maxFileSizeデフォルト値:1.6。単位:GB。データファイルの最大サイズ。

ファイルのローリングを高速化するには、このパラメーターの値を減らします。これにより、より多くのディスク容量が解放されます。

capacityデフォルト値:1000000。File Channel が保持できるイベントの最大数。

スループットを向上させるには、このパラメーターの値を増やします。また、このパラメーターの値に単一イベントのサイズを掛けて、ディスク使用量を推定することもできます。

transactionCapacityデフォルト値:10000。File Channel の単一トランザクションにおけるイベントの最大数。

HDFS Sink

パラメーター説明
hdfs.batchSizeデフォルト値:100。ファイルが HDFS にロールされる前にファイルに書き込まれるイベントの数。
スループットを向上させるには、このパラメーターの値を増やします。
説明 このパラメーターは、Taildir Source の batchSize パラメーターと同じ値に設定することをお勧めします。2 つのパラメーターの値が、File Channel の transactionCapacity パラメーターの値を超えないようにしてください。
hdfs.threadsPoolSizeデフォルト値:10。HDFS I/O スレッドの数。ノード構成に基づいてこのパラメーターを調整できます。
hdfs.useLocalTimeStampデフォルト値:false。ローカルタイムスタンプを使用するかどうかを指定します。

イベントのヘッダーにタイムスタンプを追加するには、このパラメーターを true に設定します。

hdfs.rollIntervalデフォルト値:30。単位:秒。一時ファイルが最終ファイルにロールされる間隔。

このパラメーターを 0 に設定すると、HDFS Sink は間隔に基づいてファイルをロールしません。

hdfs.rollSizeデフォルト値:1024。単位:バイト。ファイルのサイズがこのパラメーターの値に達すると、HDFS Sink はファイルを最終ファイルにロールします。

このパラメーターを 0 に設定すると、HDFS Sink はファイルサイズに基づいてファイルをロールしません。

hdfs.rollCountデフォルト値:10。ファイルに書き込まれるイベントの数がこのパラメーターの値に達すると、HDFS Sink はファイルを最終ファイルにロールします。

このパラメーターを 0 に設定すると、HDFS Sink はイベント数に基づいてファイルをロールしません。

hdfs.minBlockReplicasHDFS ファイルブロックごとのレプリカの最小数。デフォルト値は、HDFS レプリケーション係数です。

ほとんどの場合、HDFS Sink は、このパラメーターが 1 に設定されている場合にのみファイルを適切にロールできます。