← Все новости

Как обмениваться данными между разными системами? CDC-коннектор в РЕД Базе Данных

Привет! Меня зовут Василий, и я разработчик СУБД РЕД База Данных в компании РЕД СОФТ. Сегодня я расскажу про передачу данных из СУБД РЕД База Данных в платформу для обработки потоковых данных Apache Kafka с помощью специального плагина. В этой статье: про создание плагина, его отличия от аналогичных решений для других СУБД, репликацию и возможные кейсы использования.В продакшене CDC обеспечивает аналитику данными практически в реальном времени и позволяет синхронизировать объекты с минимальной задержкой, например кэши. Технология дает возможность объединять данные из различных источников без дополнительной трансформации, а также проводить миграцию без даунтайма. Кроме того, CDC помогает решать задачи аудита инцидентов и поддерживать согласованность сервисов.Но для начала немного вводной части. Сегодня данные – основа любого бизнеса. Но они очень редко хранятся в одном месте. Данные обрабатываются в OLTP-системах, анализируются в OLAP, поисковых движках, кэшах, потоках микросервисов. Основная сложность распределения данных – передать их из одной системы в другую. Обычно такую проблему решают с помощью выгрузки данных в определенный формат и загружают их в целевую систему. Но этот подход имеет серьезный недостаток – данные быстро устаревают. К тому же сохранение большого объема данных требует дополнительного места на носителях информации, что увеличивает финансовые затраты.Change Data Capture (Захват измененных данных) позволяет решить эту проблему. Это не просто технология, а архитектурная модель, описывающая подход, при котором в базе данных отслеживаются изменения (добавление, изменение и удаление записей) и оперативно передаются в другие системы, обеспечивая надежность и доступность данных. Простыми словами, CDC перехватывает только измененные строки, а не всю базу целиком. Читать далее