クラス KafkaItemReader<K,V>

実装されたすべてのインターフェース:
ItemReader<V>ItemStreamItemStreamReader<V>

public class KafkaItemReader<K,V> extends AbstractItemStreamItemReader<V>

Apache Kafka の ItemReader 実装。KafkaConsumer を使用して、指定されたトピックからデータを読み取ります。同じトピック内の複数のパーティションをこのリーダーに割り当てることができます。

KafkaConsumer はスレッドセーフではないため、このリーダーはスレッドセーフではありません。

導入:
4.2
作成者:
Mathieu Ouellet, Mahmoud Ben Hassine
  • コンストラクターの詳細

    • 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

      public void setPollTimeout(DurationSE pollTimeout)
      コンシューマートピックのポーリング期間のタイムアウトを設定します。デフォルトは 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

      public void open(ExecutionContext executionContext)
      クラスからコピーされた説明: ItemStreamSupport
      ノーオペレーション。
      次で指定:
      インターフェース ItemStreamopen 
      オーバーライド:
      クラス ItemStreamSupportopen 
      パラメーター:
      executionContext - 現在のステップの ExecutionContext。再起動時のステップの最後の実行からの executionContext になります。
      関連事項:
    • read

      @Nullable public V read()
      インターフェースからコピーされた説明: ItemReader
      入力データの一部を読み取り、次のデータに進みます。実装は、入力データセットの最後に null を返す必要があります。トランザクション設定では、最初の呼び出しがロールバックされたトランザクション内にあった場合、呼び出し元は連続した呼び出し(またはそれ以外)から同じアイテムを 2 回取得する場合があります。
      戻り値:
      T 処理するアイテム、またはデータソースが使い果たされた場合は null 
    • update

      public void update(ExecutionContext executionContext)
      クラスからコピーされた説明: ItemStreamSupport
      空の ExecutionContext を返します。
      次で指定:
      インターフェース ItemStreamupdate 
      オーバーライド:
      クラス ItemStreamSupportupdate 
      パラメーター:
      executionContext - 更新される
      関連事項:
    • close

      public void close()
      クラスからコピーされた説明: ItemStreamSupport
      ノーオペレーション。
      次で指定:
      インターフェース ItemStreamclose 
      オーバーライド:
      クラス ItemStreamSupportclose 
      関連事項: