143.2. オプション
HDFS2 コンポーネントは、以下に示す 2 個のオプションをサポートしています。
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
jAASConfiguration (Common) | 指定された設定を JAAS でのセキュリティーに使用するため。 | 設定 | |
resolveProperty Placeholders (advanced) | 起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean |
HDFS2 エンドポイントは、URI 構文を使用して設定されます。
hdfs2:hostName:port/path
パスおよびクエリーパラメーターを使用します。
143.2.1. パスパラメーター (3 パラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
hostname | 使用するために 必要な HDFS ホスト | String | |
port | 使用する HDFS ポート | 8020 | int |
path | 必須 使用するディレクトリーパス | String |
143.2.2. クエリーパラメーター (38 パラメーター)
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
connectOnStartup (Common) | プロデューサー/コンシューマーの起動時に HDFS ファイルシステムに接続するかどうか。false の場合、接続はオンデマンドで作成されます。HDFS は 45 x 20 秒の再配信をハードコーディングしているため、接続を確立するのに最大 15 分かかる場合があることに注意してください。このオプションを false に設定すると、アプリケーションが起動し、最大 15 分間ブロックされなくなります。 | true | boolean |
fileSystemType (Common) | HDFS を使用せず、代わりにローカルの java.io.File を使用するには、LOCAL に設定します。 | HDFS | HdfsFileSystemType |
fileType (Common) | 使用するファイルの種類。詳細については、さまざまなファイルタイプに関する Hadoop HDFS のドキュメントを参照してください。 | NORMAL_FILE | HdfsFileType |
keyType (Common) | シーケンスまたはマップファイルの場合のキーのタイプ。 | NULL | WritableType |
owner (Common) | コンシューマーがファイルを取得するには、ファイルの所有者がこの所有者と一致する必要があります。それ以外の場合、ファイルはスキップされます。 | String | |
valueType (Common) | シーケンスまたはマップファイルの場合のキーのタイプ | BYTES | WritableType |
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
pattern (consumer) | ディレクトリーのスキャンに使用されるパターン | * | String |
sendEmptyMessageWhenIdle (consumer) | ポーリングコンシューマーがファイルをポーリングしなかった場合、このオプションを有効にして、代わりに空のメッセージ (ボディーなし) を送信できます。 | false | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
pollStrategy (consumer) | プラグ可能な org.apache.camel.PollingConsumerPollingStrategy を使用すると、エクスチェンジが作成され、Camel でルーティングされる前に、通常はポーリング操作中に発生するエラー処理を制御するカスタム実装が提供できます。 | PollingConsumerPoll Strategy | |
append (producer) | 既存のファイルに追加します。すべての HDFS ファイルシステムが追加オプションをサポートしているわけではないことに注意してください。 | false | boolean |
overwrite (producer) | 同名の既存ファイルを上書きするかどうか | true | boolean |
blockSize (advanced) | HDFS ブロックのサイズ | 67108864 | long |
bufferSize (advanced) | HDFS が使用するバッファーサイズ | 4096 | int |
checkIdleInterval (advanced) | アイドルチェッカーバックグラウンドタスクを実行する頻度 (ミリ秒単位)。このオプションは、スプリッタ戦略が IDLE の場合にのみ使用されます。 | 500 | int |
chunkSize (advanced) | 通常のファイルを読み取る場合、これはチャンクに分割され、チャンクごとにメッセージが生成されます。 | 4096 | int |
compressionCodec (advanced) | 使用する圧縮コーデック | DEFAULT | HdfsCompressionCodec |
compressionType (advanced) | 使用する圧縮タイプ (デフォルトでは使用されていません) | NONE | CompressionType |
openedSuffix (advanced) | ファイルが読み取り/書き込み用に開かれると、ファイルはこの接尾辞で名前が変更され、書き込みフェーズ中に読み取られないようにします。 | opened | String |
readSuffix (advanced) | ファイルが読み取られると、この接尾辞を使用して名前が変更され、再度読み取られることがなくなります。 | read | String |
replication (advanced) | HDFS レプリケーション係数 | 3 | short |
splitStrategy (advanced) | 現在のバージョンの Hadoop では、ファイルを追加モードで開くことは信頼性が低いため無効になっています。そのため、現時点では、新しいファイルを作成することしかできません。Camel HDFS エンドポイントは、この問題を次のように解決しようとします。分割戦略オプションが定義されている場合、hdfs パスがディレクトリーとして使用され、設定された UuidGenerator を使用してファイルが作成されます。分割条件が満たされるたびに、新しいファイルが作成されます。splitStrategy オプションは、次の構文の文字列として定義されます。value MESSAGES 新しいファイルが作成され、書き込まれたメッセージの数が value ミリ秒を超えると古いファイルが閉じられます IDLE 新しいファイルが作成され、最後の value ミリ秒内に書き込みが発生しなかった場合に古いファイルが閉じられます | String | |
synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |
backoffErrorThreshold (scheduler) | backoffMultipler が開始する前に発生する必要がある後続のエラーポーリング (エラーによって失敗した) の数。 | int | |
backoffIdleThreshold (scheduler) | backoffMultipler が開始する前に発生する必要がある後続のアイドルポーリングの数。 | int | |
backoffMultiplier (scheduler) | 後続のアイドル状態/エラーが連続して発生した場合に、スケジュールされたポーリングコンシューマーのバックオフを許可します。乗数は、実際に次の試行が行われる前にスキップされるポーリングの数です。このオプションが使用されている場合は、backoffIdleThreshold や backoffErrorThreshold も設定する必要があります。 | int | |
delay (scheduler) | 次のポーリングまでの時間 (ミリ秒単位)。60s (60 秒)、5m30s (5 分 30 秒)、1h (1 時間) などの単位を使用して時間値を指定することもできます。 | 500 | long |
greedy (scheduler) | greedy が有効で、以前の実行が 1 つ以上のメッセージをポーリングした場合、ScheduledPollConsumer は即座に再度実行されます。 | false | boolean |
initialDelay (scheduler) | 最初のポーリングが開始されるまでの時間 (ミリ秒単位)。60s (60 秒)、5m30s (5 分 30 秒)、1h (1 時間) などの単位を使用して時間値を指定することもできます。 | 1000 | long |
runLoggingLevel (scheduler) | コンシューマーはポーリング時に開始/完了のログ行を記録します。このオプションを使用すると、ログレベルを設定できます。 | TRACE | LoggingLevel |
scheduledExecutorService (scheduler) | コンシューマーに使用するカスタム/共有スレッドプールを設定できます。デフォルトでは、各コンシューマーに独自の単一スレッドのスレッドプールがあります。 | ScheduledExecutor Service | |
scheduler (scheduler) | camel-spring または camel-quartz2 コンポーネントから cron スケジューラーを使用します。 | none | ScheduledPollConsumer Scheduler |
schedulerProperties (scheduler) | カスタムスケジューラーまたは Quartz2 や Spring ベースのスケジューラーを使用する場合に、追加のプロパティーを設定します。 | Map | |
startScheduler (scheduler) | スケジューラーを自動起動するかどうか。 | true | boolean |
timeUnit (scheduler) | initialDelay および delay オプションの時間単位。 | MILLISECONDS | TimeUnit |
useFixedDelay (scheduler) | 固定遅延または固定レートを使用するかどうかを制御します。詳細は、JDK の ScheduledExecutorService を参照してください。 | true | boolean |
143.2.3. KeyType と ValueType
- NULL キーまたは値が存在しないことを意味します
- バイトを書き込むための BYTE。Java Byte クラスは BYTE にマップされます。
- 一連のバイトを書き込むための BYTES。Java ByteBuffer クラスをマップします
- Java 整数を書き込むための INT
- Java float を書き込むための FLOAT
- Java long を書き込むための LONG
- Java double を書き込むための DOUBLE
- Java 文字列を書き込むための TEXT
BYTES は他のすべてでも使用されます。たとえば、Camel では、ファイルは InputStream として送信されます。この場合、シーケンスファイルまたはマップファイルにバイトシーケンスとして書き込まれます。