同じグループに3つのコンシューマがあり、1つのコンシューマの1つのパーティションにオフセットを設定するためにseek()を呼び出します。 Willは、グループ内のすべてのコンシューマのオフセットまたはその特定のパーティションのオフセットのみを設定します。グループ内のコンシューマに対してseekを呼び出すと、グループ全体のオフセットが設定されます
ログに記録されているすべてのレコードを最初からやり直すことができます。しかし、私はただ一つの消費者にシークを呼び出すだけです。
同じグループに3つのコンシューマがあり、1つのコンシューマの1つのパーティションにオフセットを設定するためにseek()を呼び出します。 Willは、グループ内のすべてのコンシューマのオフセットまたはその特定のパーティションのオフセットのみを設定します。グループ内のコンシューマに対してseekを呼び出すと、グループ全体のオフセットが設定されます
ログに記録されているすべてのレコードを最初からやり直すことができます。しかし、私はただ一つの消費者にシークを呼び出すだけです。
同じグループに3つのコンシューマを配置すると、1つのパーティションがこれらのコンシューマのうちの1つにのみ割り当てられるため、シークを呼び出すと、コンシューマが1つしかないため、影響を受けた。
seek()は、そのパーティション内の指定されたオフセットにのみ巻き戻します。 しかし、古い高水準の消費者APIの場合、それを行う方法はありませんでした。 しかし、この方法
public void seek(TopicPartition partition,
long offset);
への呼び出しでは、提供さTopicPartitionのパーティションと話題に相殺するために巻き戻します。
グループの消費をリセットする場合は、各パーティションのオフセットを使用してseekを呼び出してTopicPartitionを呼び出す必要があります。
それとも、offsetsForTimesを使用すると、ここで指定されたグループのパーティションのために呼び出すことができます。 https://jeqo.github.io/post/2017-01-31-kafka-rewind-consumers-offset/
古いハイレベルの消費者を使用している場合は、現在の消費者にオフセットをリセットするためのAPIはありません。唯一の方法は、すべてのコンシューマを停止し、そのコンシューマグループのオフセットをZKで手動でリセットすることです。
しかし、0.11.0リリースでは、トピック、パーティションなどの異なるスコープのグループのオフセットをリセットするツールが追加されました。 詳細は https://cwiki.apache.org/confluence/display/KAFKA/KIP-122%3A+Add+Reset+Consumer+Group+Offsets+toolingです。および https://issues.apache.org/jira/browse/KAFKA-4743