クラス KafkaItemReader<K,V>
java.lang.ObjectSE
org.springframework.batch.item.ItemStreamSupport
org.springframework.batch.item.support.AbstractItemStreamItemReader<V>
org.springframework.batch.item.kafka.KafkaItemReader<K,V>
- 実装されたすべてのインターフェース:
ItemReader<V>
、ItemStream
、ItemStreamReader<V>
Apache Kafka の ItemReader
実装。KafkaConsumer
を使用して、指定されたトピックからデータを読み取ります。同じトピック内の複数のパーティションをこのリーダーに割り当てることができます。
KafkaConsumer
はスレッドセーフではないため、このリーダーはスレッドセーフではありません。
- 導入:
- 4.2
- 作成者:
- Mathieu Ouellet, Mahmoud Ben Hassine
コンストラクターのサマリー
コンストラクター説明KafkaItemReader
(PropertiesSE consumerProperties, StringSE topicName, IntegerSE... partitions) 新しいKafkaItemReader
を作成します。KafkaItemReader
(PropertiesSE consumerProperties, StringSE topicName, ListSE<IntegerSE> partitions) 新しいKafkaItemReader
を作成します。メソッドのサマリー
修飾子と型メソッド説明void
close()
ノーオペレーション。boolean
再起動のために内部状態を保存するかどうかを決定するフラグ。void
open
(ExecutionContext executionContext) ノーオペレーション。read()
入力データの一部を読み取り、次のデータに進みます。void
setPartitionOffsets
(MapSE<org.apache.kafka.common.TopicPartition, LongSE> partitionOffsets) パーティションオフセット用の Setter。void
setPollTimeout
(DurationSE pollTimeout) コンシューマートピックのポーリング期間のタイムアウトを設定します。void
setSaveState
(boolean saveState) ExecutionContext
の内部データを保存するかどうかを決定するフラグを設定します。void
update
(ExecutionContext executionContext) 空のExecutionContext
を返します。クラス org.springframework.batch.item.ItemStreamSupport から継承されたメソッド
getExecutionContextKey, getName, setExecutionContextName, setName
コンストラクターの詳細
KafkaItemReader
public KafkaItemReader(PropertiesSE consumerProperties, StringSE topicName, IntegerSE... partitions) 新しいKafkaItemReader
を作成します。
.consumerProperties
には次のキーが含まれている必要があります: 'bootstrap.servers'、'group.id'、'key.deserializer' および 'value.deserializer'- パラメーター:
consumerProperties
- コンシューマーの特性topicName
- データを読み取るトピックの名前partitions
- データを読み取るパーティションのリスト
KafkaItemReader
public KafkaItemReader(PropertiesSE consumerProperties, StringSE topicName, ListSE<IntegerSE> partitions) 新しいKafkaItemReader
を作成します。
.consumerProperties
には次のキーが含まれている必要があります: 'bootstrap.servers'、'group.id'、'key.deserializer' および 'value.deserializer'- パラメーター:
consumerProperties
- コンシューマーの特性topicName
- データを読み取るトピックの名前partitions
- データを読み取るパーティションのリスト
メソッドの詳細
setPollTimeout
コンシューマートピックのポーリング期間のタイムアウトを設定します。デフォルトは 30 秒です。- パラメーター:
pollTimeout
- コンシューマー投票操作用
setSaveState
public void setSaveState(boolean saveState) ExecutionContext
の内部データを保存するかどうかを決定するフラグを設定します。このストリームから状態を保存したくない場合にのみ、これを false に切り替えて、再起動可能にする必要はありません。リーダーが並行環境で使用されている場合は、常に false に設定します。- パラメーター:
saveState
- フラグ値(デフォルトは true)。
isSaveState
public boolean isSaveState()再起動のために内部状態を保存するかどうかを決定するフラグ。- 戻り値:
- フラグが設定されている場合は true
setPartitionOffsets
public void setPartitionOffsets(MapSE<org.apache.kafka.common.TopicPartition, LongSE> partitionOffsets) パーティションオフセット用の Setter。このマッピングは、各パーティションで読み取りを開始するオフセットをリーダーに通知します。これはオプションであり、デフォルトでは各パーティションのオフセット 0 から始まります。空のマップを渡すと、リーダーは、コンシューマーグループ ID の Kafka に格納されているオフセットから開始します。再起動の場合、実行コンテキストに保存されているオフセットが優先されます。
- パラメーター:
partitionOffsets
- 各パーティションの開始オフセットのマッピング
open
クラスからコピーされた説明:ItemStreamSupport
ノーオペレーション。- 次で指定:
- インターフェース
ItemStream
のopen
- オーバーライド:
- クラス
ItemStreamSupport
のopen
- パラメーター:
executionContext
- 現在のステップのExecutionContext
。再起動時のステップの最後の実行からの executionContext になります。- 関連事項:
read
インターフェースからコピーされた説明:ItemReader
入力データの一部を読み取り、次のデータに進みます。実装は、入力データセットの最後にnull
を返す必要があります。トランザクション設定では、最初の呼び出しがロールバックされたトランザクション内にあった場合、呼び出し元は連続した呼び出し(またはそれ以外)から同じアイテムを 2 回取得する場合があります。- 戻り値:
- T 処理するアイテム、またはデータソースが使い果たされた場合は
null
update
クラスからコピーされた説明:ItemStreamSupport
空のExecutionContext
を返します。- 次で指定:
- インターフェース
ItemStream
のupdate
- オーバーライド:
- クラス
ItemStreamSupport
のupdate
- パラメーター:
executionContext
- 更新される- 関連事項:
close
public void close()クラスからコピーされた説明:ItemStreamSupport
ノーオペレーション。- 次で指定:
- インターフェース
ItemStream
のclose
- オーバーライド:
- クラス
ItemStreamSupport
のclose
- 関連事項: