Confluent Kafka: данные из темы (одна полезная нагрузка) в несколько таблиц

Позволяет ли слитный коннектор kafka jdbc (приемник) извлекать данные из темы, а затем определять, в какие таблицы базы данных Oracle распределять эти данные?

то есть

Одна запись темы будет содержать много данных, которые необходимо распределить по нескольким таблицам в нашей CRM, работающей на базе данных Oracle. Возможно ли это?

Можно ли определить, какие узлы полезных данных будут предназначены для каких таблиц? как показано ниже

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
50
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Определение приемника представляет собой однозначное сопоставление темы и таблицы.

Если вам нужно несколько таблиц, вам нужно будет отфильтровать тему с помощью таких инструментов, как потоки kafka или ksqlDB, чтобы создать новые темы, а затем создать для них новые соединители.

Ответ принят как подходящий

Использование промежуточного программного обеспечения ETL:

Другой подход из ответа @OneCricketeer — введение промежуточного программного обеспечения ETL (извлечение, преобразование, загрузка), которое использует тему Kafka, обрабатывает полезную нагрузку, а затем записывает обработанные данные в соответствующие таблицы в базе данных Oracle.

Вот необходимые шаги:

  1. Kafka Consumer: инструмент ETL использует записи из темы Kafka, который содержит сложную полезную нагрузку JSON.

  2. Анализ данных: инструмент ETL анализирует полезную нагрузку JSON.

  3. Преобразование данных:

    • Таблица 1 («Таблица участников»): Извлечение полей, связанных с участником. информацию и загрузите ее в таблицу участников.
    • Таблица 2 («Таблица адресов»): извлечение полей, связанных с адресной информацией, и загрузка их в адрес. стол.
    • Таблица 3 («Таблица контактной информации»): Извлечение контактной информации. и загрузите их в таблицу contactable_info.
  4. Загрузка в базу данных Oracle. Инструмент ETL записывает извлеченные и преобразованные данные в соответствующие таблицы базы данных Oracle.

Ссылка - https://medium.com/@mariusz_kujawski/building-an-efficient-etl-elt-process-for-data-delivery-9ee775375418

Инструменты :

Примечание. Использование промежуточного программного обеспечения ETL — это надежное решение для сложных задач обработки данных, например, для распределения одной записи темы Kafka в несколько таблиц в базе данных Oracle. Он позволяет выполнять пользовательские преобразования данных и гарантирует правильную маршрутизацию данных в правильные таблицы.

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