【かふかこねくと】
Kafka Connect とは?
💡 Kafkaと外の世界をつなぐ、コード不要のコンセント
📌 このページのポイント
Kafka ConnectってKafkaの仲間なの?
そうだよ。Apache Kafkaに同梱されているフレームワークで、KafkaとDB・S3・Elasticsearch・SaaSなど外部システムをつなぐ役割を担うんだ
「つなぐ」って具体的にどういうこと?
たとえばMySQLの更新データをリアルタイムでKafkaに流し込んだり、逆にKafkaのメッセージをS3に自動で保存したりできるよ。前者をSourceコネクタ、後者をSinkコネクタと呼ぶんだ
それって自分でコードを書かないといけないの?
CDCって言葉と一緒に出てくることが多いんだけど、関係あるの?
大ありだよ!DebeziumというSourceコネクタがMySQLやPostgreSQLのバイナリログを読んで変更イベントをKafkaに流す仕組みをCDC(Change Data Capture)って言うんだ。Kafka ConnectでCDCを実現するのは定番パターンだよ
ETLとも関係あるの?
関係あるよ。Extract(抽出)はSourceコネクタ、Load(書き込み)はSinkコネクタが担当するんだ。Transform(変換)はKafka Streamsや軽量な変換プラグインで行うことが多いね。Kafka Connectを中心にデータパイプラインを構築するのが現代のETLの主流になってきてるよ
まとめ:ざっくりこれだけ覚えればOK!
「Kafka Connect」って出てきたら「Kafkaと外部システムをつなぐコネクタ基盤」と思えればだいたいOK!
📖 おまけ:英語の意味
「Kafka Connect」 = Kafkaとの接続フレームワーク
💬 Apache Kafkaの公式サブプロジェクトで、connect(接続する)という名の通り、Kafkaと外部システムをつなぐのが役割だよ