Debezium入門
Debeziumとは
Debeziumのwebsiteのトップページにはこう記されている
Debezium is an open source distributed platform for change data capture. Start it up, point it at your databases, and your apps can start responding to all of the inserts, updates, and deletes that other apps commit to your databases. Debezium is durable and fast, so your apps can respond quickly and never miss an event, even when things go wrong.
change data capture
のためのオープンソースの分散プラットフォームであるとのこと。change data capture
とは、次の文にあるようにデータベースへのwrite(insert, update, delte)に応答して、アプリケーションが何らかの処理を行えるようにするもの。Debeziumはこれをロバストかつ高速に実現してくれる。
この説明ではDebeziumの目的は分かるが、それがどのように実現されているかが分からない。どのように、については、DebeziumのドキュメントのFeaturesのページに端的な説明がある。
Debezium is a set of source connectors for Apache Kafka Connect.
つまり実体として、DebeziumとはKafka Connectのsource connector
のセットだ。一旦Kafkaにデータを入れてしまえば、そこから先はKafkaが責任を持ってロバストかつ高速にデータを流してくれるので、Debeziumの分担は各データベースの実装にあわせてwriteのイベントを取り出す部分であり、実際にDebeziumはメジャーなDBに向けたsource connector
実装のセットを提供している。