With the recent Debezium release, we’re happy to announce that a new PostgreSQL connector has been added alongside the already existing MySQL and MongoDB connectors.
Make sure you read the connector documentation for an in-depth look at the different configuration options. |
Getting started
The fastest way to check out the new connector is using Debezium’s Postgres docker image which is based on a vanilla Postgres docker image on top of which it compiles and installs a PostgreSQL logical decoding plugin
and sets up the necessary permissions for streaming changes locally (on localhost
)
Once you fire up the Docker machine with the database server, starting up and configuring the connector to stream changes from that machine is exactly the same as described in detail by the Debezium tutorial. The only obvious difference is that instead of the MySQL machine and MySQL connector configuration you need to use the PostgreSQL machine and the PostgreSQL connector configuration parameters.
Using the connector in your own environment
Unlike the Mongo and MySQL connectors, getting the PostgreSQL connector up and running is a bit more complicated due to the fact that it requires a server-side logical decoding plugin running in the PostgreSQL server.
In general, there are three major steps involved in getting the connector running in your environment:
-
Compiling and installing the logical decoding plugin into your own server
-
Setting up the PostgreSQL server with appropriate replication permissions
-
Starting the Kafka Connect, Broker and Zookeeper machines
For steps 1 and 2 you can check out our PostgreSQL Docker image together with the sources for the logical decoding plugin
For step 3 you can either use Debezium’s Kafka Docker images or perform a similar setup locally. The Debezium tutorial and the the connector documentation are great resources for helping out with this task.
About Debezium
Debezium is an open source distributed platform that turns your existing databases into event streams, so applications can see and respond almost instantly to each committed row-level change in the databases. Debezium is built on top of Kafka and provides Kafka Connect compatible connectors that monitor specific database management systems. Debezium records the history of data changes in Kafka logs, so your application can be stopped and restarted at any time and can easily consume all of the events it missed while it was not running, ensuring that all events are processed correctly and completely. Debezium is open source under the Apache License, Version 2.0.
Get involved
We hope you find Debezium interesting and useful, and want to give it a try. Follow us on Twitter @debezium, chat with us on Zulip, or join our mailing list to talk with the community. All of the code is open source on GitHub, so build the code locally and help us improve ours existing connectors and add even more connectors. If you find problems or have ideas how we can improve Debezium, please let us know or log an issue.