序文
コンセンサス・プロトコル、ストリーム処理、分散システム......ストリーミングの世界ではエキサイティングなアイデアが溢れているが、地味なコネクターの役割を見過ごしがちだ。しかし、コネクターはストリーミングの世界における最も基本的な問題を解決するものである。データ・ストリーミング・プラットフォームをどのようにビジネスの他の部分に接続するのか?
Kafka Connectの目的は、それを簡単にすることだ。Kafka Connectフレームワークが存在する以前、私たちは多くの人々がApache Kafkaで統合を構築し、同じ間違いを繰り返すのを見てきた。あるシステムからデータを読み取り、別のシステムに書き込むというのは単純なように見えるが、そのプロセスには複雑さが隠れていることがある。マシンが故障したらどうなるのか?リクエストがタイムアウトしたらどうなるのか?どのように統合をスケールアップするのか?ユニークなKafka統合は、それぞれゼロからこれらの問題を解決しなければならなかった。Kafka Connectは、このような統合を構築、or演算子、スケーリングするための一般化フレームワークから、特定のシステムへの読み取りと書き込みのロジックを分離するように設計された。
Kafka Connectは、他の統合レイヤーやコネクターレイヤーとは多くの重要な点で異なっている:
まずストリーミングのために設計されている。
Kafkaのセマンティクスと連動し、それが可能なシステムからは "actly-once "を、そうでないシステムからは可能な限り強力なセマンティクスを使用することができる。
単にバイトをキャプチャするだけでなく、データのセマンティックな構造の一部を伝えることができる。
分断、スケーリング、フォールトトレランスにおける複雑な問題の多くを解決してくれる。
ハードウェアの共有プールから、多様なコネクターのプールを均質な方法で演算子し、監視することができる。
これらの理由が、Kafka Connectがこれほど人気があり、あらゆるタイプのKafkaユーザに受け入れられ、コネクタのエコシステムが数百にのぼる理由だと思う。
Kafka Connectを活用することで、社内のあらゆるデータをデータストリーミング・プラットフォームに開放することができるが、本番システムに導入する前に、Kafka Connectがそれ自体が高度な分散システムであることを認識し、その仕組みについて少し学んでおくことが重要だ。
本書は、コネクタの使用方法、Kafka Connectフレームワークの設定、本番での監視と演算子、さらには独自のソース・コネクタとシンク・コネクタの開発方法まで学べる優れた内容となっている。この重要なトピックに飛び込みたい人にとって、またKafkaを他のシステムやアプリケーションに接続するための最速の方法として、これ以上のリソースはないだろう。
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access