Постоянно копировать данные из Oracle в ElasticSearch - PullRequest
1 голос
/ 24 января 2020

Команде, в которой я работаю, повезло работать над редизайном огромной устаревшей системы с Oracle 12 на конце базы данных. В настоящее время это программное обеспечение для монстров выполняет 10% операций вставки / обновления / удаления в БД, остальные 90% операций - это операции выбора (поиск некоторых сущностей в миллионах таблиц записей). И поиск конечно стал медленным. Итак, наши первые мысли, конечно, состоят в том, чтобы иметь 2 одинаковых набора данных: Oracle DB и Elasti c Search DB для выполнения поиска в Elasti c, но хранить данные в Oracle и сразу же копировать данные в Elasti. c. Между Oracle и Elasti c будет некоторая логика c, записанная в C# для преобразования данных в Elasti c Формат стека. Но первый вопрос, на который у нас нет ответа - как получить измененные данные из Oracle как только это изменилось? Первый подход, который мы нашли - использовать Непрерывное уведомление о запросе Но это можно использовать только для инициирования процесса передачи данных. Уведомление может содержать RowID измененной строки, но похоже, что число событий уведомления об измененной строке может быть ограничено до 80. Второй подход - использовать некоторый «Data Replicator» с открытым исходным кодом, который отслеживает «Журналы транзакций». Единственный репликатор, который я нашел - OpenLogReplicator , мне это нравится, но я хочу спросить StackOverflowers, может быть, это не будет работать для моего случая? Обратите внимание, что Oracle GoldenGate мы не можем использовать, клиент не примет это. Может кто-нибудь предложить, какую технологию использовать для репликации изменений данных с Oracle?

Ответы [ 2 ]

0 голосов
/ 31 января 2020

OpenLogReplicator находится в данный момент на этапе создания рабочего прототипа. Это абсолютно не готово к любому производству или даже тестированию. Но вы можете связаться с автором для участия в ПО C, чтобы помочь построить инструмент. Или купите один из доступных на рынке продуктов.

0 голосов
/ 24 января 2020

SharePlex является более дешевой альтернативой GoldenGate. Поскольку вам нужна «немедленная» репликация, вам нужно относительно сложное решение, которое должны были бы обрабатывать и SharePlex, и GoldenGate.

...