以前にKafkaに出くわしたことはありますが、最近、Kafka がおそらくCQRS、eventstoreとして (の基礎として) 使用される可能性があることに気付きました。
Kafka がサポートする主なポイントの 1 つ:
- イベントのキャプチャ/保存、もちろんすべて HA。
- Pub/Sub アーキテクチャ
- 新しいサブスクライバーが事後にシステムに登録できるようにするイベントログを再生する機能。
確かに、私は CQRS/イベント ソーシングに 100% 精通しているわけではありませんが、これはイベントストアのあるべき姿にかなり近いようです。面白いのは、Kafka がイベントストアとして使用されていることについてあまり見つけられないので、おそらく何かが足りないということです。
では、優れたイベントストアであるために Kafka に欠けているものはありますか? それはうまくいくでしょうか?それを使用して生産?洞察、リンクなどに興味があります。
基本的に、システムの状態は、通常行われているシステムの現在の状態/スナップショットを保存するだけでなく、システムがこれまでに受信したトランザクション/イベントに基づいて保存されます。(会計における総勘定元帳と考えてください。すべてのトランザクションが最終的に最終的な状態になります) これにより、あらゆる種類の優れたことが可能になりますが、提供されたリンクを読んでください。