Как загрузить данные таблицы оракула в тему кафки?

Как загрузить данные таблицы оракула в тему кафки? Я провел некоторое исследование и узнал, что я должен использовать инструмент CDC, но все инструменты CDC являются платной версией, кто-нибудь может подсказать мне, как этого добиться?

6 ответов

Вы найдете эту статью полезной: больше никаких проблем: как интегрировать базы данных с Apache Kafka и CDC

Он подробно описывает все ваши варианты и доступные в настоящее время инструменты. Короче говоря, вы можете выполнять массовые (или основанные на запросах CDC) с Kafka Connect JDBC Connector, или вы можете использовать основанный на журналах подход CDC с одним из нескольких инструментов CDC, которые поддерживают Oracle в качестве источника, включая Attunity, GoldenGate, SQ Данные и IIDR IBM.

Как правило, вы обнаружите, что если вы заплатили за свою базу данных (например, Oracle, DB2 и т. Д.), Вам придется платить за инструмент CDC на основе журнала. Инструменты CDC с открытым исходным кодом доступны для баз данных с открытым исходным кодом. Например, Debezium имеет открытый исходный код и прекрасно работает с MongoDB, MySQL и PostgreSQL.

Возможно, вас заинтересует проект Debezium, который предоставляет CDC-коннекторы с открытым исходным кодом для различных баз данных. Среди прочего, мы предоставляем один для Oracle DB. Обратите внимание, что в настоящее время этот коннектор основан на API-интерфейсе XStream от Oracle, который сам требует отдельной лицензии, но мы надеемся вскоре добавить полностью бесплатную альтернативу.

Отказ от ответственности: я веду Debezium

Вам не нужен инструмент Change Data Capture (CDC) для загрузки данных из Oracle Table в тему Kafka.

Для загрузки данных вы можете использовать JDBC-коннектор Kafka Confluent.

Однако, если вам нужно регистрировать удаления и обновления, вы должны использовать инструмент CDC, для которого вам нужно заплатить лицензию. Confluent сертифицировал следующие инструменты CDC (исходные соединители):

  1. Attunity
  2. Dbvisit
  3. Striim
  4. Oracle GoldenGate

Пожалуйста, обратитесь к исходному разъему kafka jdbc. Ниже приведена ссылка https://docs.confluent.io/current/connect/connect-jdbc/docs/index.html

Здесь есть собственный исходный соединитель Kafka для базы данных Oracle, основанный на logminer:

https://github.com/erdemcer/kafka-connect-oracle

Этот проект находится в разработке.

Как уже упоминалось, CDC требует платных продуктов. Если вы просто хотите попробовать что-то, Striim доступен бесплатно в течение первых 30 дней.

https://www.striim.com/instant-download/

"Свободные" опции, которые включают JDBC... но вы бы добавили значительную нагрузку на вашу базу данных, если вы действительно хотите использовать триггеры для захвата изменений.

Отказ от ответственности: я работаю на стриим

Возможно, вас заинтересует OpenLogReplicator. Это инструмент с открытым исходным кодом под лицензией GPL, полностью написанный на C++. Он читает двоичный формат журналов Oracle Redo и отправляет их в Kafka.

Это очень быстро - вы можете добиться низкой задержки без особых усилий, поскольку он полностью работает в памяти. Он поддерживает все версии баз данных Oracle, начиная с 11.2.0.1, и не требует дополнительного лицензирования.

Он может работать на узле базы данных, но вы также можете настроить его для чтения журналов повторного выполнения с помощью sshfs с другого узла - с минимальной нагрузкой на базу данных.

отказ от ответственности: я являюсь автором этого решения

Другие вопросы по тегам