ElasticSearch - индексирование только измененных документов с использованием кода Java - PullRequest
0 голосов
/ 09 октября 2018

Индексирую большое количество записей (200 КБ) из Oracle в ElasticSearch с использованием Java-кода.Умею правильно индексировать.Теперь, если есть какие-либо записи, измененные в моей базе данных Oracle, эти измененные записи также должны быть проиндексированы в ElasticSearch.

Итак, вместо того, чтобы индексировать целые записи, как я могу индексировать только измененные записи.Есть ли какая-либо функция в упругом поиске, где он может идентифицировать только измененные документы и индекс, который содержит только отдельные документы.

Получаю записи базы данных Oracle через веб-сервисы.

1 Ответ

0 голосов
/ 09 октября 2018

Я не уверен в подходе, который вы ищете, но я могу дать вам некоторое представление о том, с чего начать.Я не много работал в Oracle db, но у меня есть опыт работы с MySQL.В MySQL есть binlog, которые отслеживают операции, выполняемые на БД, я надеюсь, что в Oracle db должно быть что-то похожее на строки (которые я назову binlong в контексте этого ответа).Вы можете использовать эту binlog для отслеживания операций, а затем синхронизировать их с вашим кластером ES.

Чтобы синхронизировать вещи с вашим кластером ES, ES представила свои API создания, обновления, удаления и чтения.

Добавление lib с открытым исходным кодом для разбора binlog для MySQL: https://github.com/zalora/binlog-parser

Надеюсь, это поможет !!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...