Skip to content

radchenkoam/debezium_pg_cdc

Repository files navigation

PostgreSQL Change Data Capture example


PostgreSQL + Debezium + APICURIO Registry + Kafka + StreamSets + Hadoop

Оригинал взят отсюда

Краткое описание

  • разворачивается PostgreSQL, в нем создается тестовая БД inventory
  • для фиксации всех изменений в БД создается коннектор Debezium
  • коннектор Debezium отправляет сообщения об изменениях в топик Kafka
  • для преобразования сообщений в формат avro используется хранилище схем APICURIO Registry
  • для создания пайплайнов загрузки собщений из Kafka запускается StreamSets
  • для хранения логов изменений в базе данных запускается Hadoop

Запуск

  • после клонирования репозитория выполнить по очереди команды:
$ cd debezium_pg_cdc
$ mkdir -pv ./streamsets/sdc-data
$ sudo chmod -R 777 ./streamsets/sdc-data
$ docker-compose -f docker-compose-apicurio.yml pull
$ docker-compose -f docker-compose-apicurio.yml build
$ docker-compose -f docker-compose-apicurio.yml up
$ make register-postgres-apicurio

Дополнительная информация

🔗 Debezium Documentation / Tutorial
🔗 Debezium Documentation / Avro Serialization
🔗 Debezium connector for PostgreSQL
🔗 Debezium docker images Github
🔗 StreamSets Data Collector User Guide
🔗 StreamSets Data Collector User Guide / Basic Tutorial
🔗 StreamSets docker image Github
🔗 Kafka 2.6 Documentation

Порты

Kafka: kafka:9092
Zookeeper: zookeeper:2181
Hadoop: hadoop:9000, hdfs://namenode:9000


Веб-интерфейсы

🔗 StreamSets: http://localhost:18630/
🔗 Hadoop: http://localhost:9870/
🔗 APICURIO Registry: http://localhost:8080/
🔗 APICURIO Registry API: http://localhost:8080/api


Примечание

Посмотреть список доступных библиотек StreamSets:

$ docker run --rm streamsets/datacollector:3.21.0 stagelibs -list

Для мониторинга работы Kafka можно использовать команды в Makefile:

$ make команда

❗но команды с -avro- работать не будут (они работают только в версии с Confluent Schema Registry),
❗и просмотр содержимого топиков тоже не особо полезен, т.к. содержимое будет выводиться в формате avro

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published