最近Kafka熱がまた上昇してきていて、勉強しなおしています。
そこでこんなニュースを見ました。
ふむ・・・・MSKも気になっていて、そもそもExpressブローカーっていうのが何なのかわからなかったので調べてみました。
Expressブローカーとは
MSKには以下のブローカータイプがあるようです。
- 標準のブローカー(Standardブローカー)
- Expressブローカー
Expressブローカーというのは、Amazon MSK独自のもので、OSSのKafkaには存在せず、AWSがOSSのKafkaの運用をより簡単により高性能にするために独自開発したMSKのみに存在するもののようで、パフォーマンスを大幅に向上させるように設計されているようです。
Expressブローカーの特徴としては
- Standardの最大3倍高いスループット
- スケーリング速度はStandardの最大20倍高速
- リカバリ時間はStandardより90%短い
- ストレージの事前プロビジョニング不要、自動でスケールする従量課金制の無制限ストレージ
- スループット要件に基づいてシンプルに決定できる
- Kafkaのベストプラクティスが事前設定済みで、運用が容易
- GravitonベースのM7gインスタンスを利用 (例: express.m7g.large
- 時間単位のインスタンス料金 + ストレージとデータ書き込み量に応じた従量課金
とのこと。
これだけ見ると料金のところは差が出るというのはわかって、そこが折り合いつくのならば絶対こっちのほうがいいでしょうね。
料金はいくらなのか?
公式サイトに出ているので見てみた。
・・・・・ざっと見ても2倍!!
ブローカーインスタンスの料金が約2倍なので、これはだいぶ違いがありますね。
ただ、これで保守する人件費を圧縮できるとなったら選択肢としてはありですね。ここが難しいんですよねー。保守チームみたいなのがいると、そこに見させればいいじゃんっていう意見が必ず出てくるので。たとえそれがお金がかかったとしても。
人が少ないところは適していそう。
どういうケースに適しているのか?
以下を基準に考えられるようです。
Expressブローカーが適しているケース:
Standardブローカーが適しているケース:
- より詳細な設定を柔軟に行いたい場合。
- コストを厳密に管理するため、ストレージ容量を固定でプロビジョニングしたい場合。
- 小規模なテスト環境などで、t3.smallのようなより小さなインスタンスタイプを利用したい場合。
うーむ。t3.small選べると言っても、KRaftモード使いたかったらt3.small選べなかったりするからStandard選ぶ理由も少ない気がする。
まとめ
Amazon MSKオリジナルの機能というのはわかった。調べた限りだとExpressブローカーを使ったほうがいいように見えるけれども、やっぱり料金ですね。(当然ですが)
そこの折り合いがつくのであればとてもいい選択肢だと感じます。
AIにまとめてもらったものもあるので、それも張っておきます。

使った感触のブログとかも探してみよう。
それではー。
