Как найти дельту между двумя коллекциями SOLR
Мы используем Lucid работает Solr версии 4.6.
Наша исходная система в основном хранит данные в двух системах назначения (одна в режиме реального времени, а другая - в пакетном режиме). Данные поступают в Solr по маршруту в реальном времени.
Нам необходимо периодически синхронизировать данные, поступающие в Solr, с данными, поступающими в пакетную систему.
Дизайн, который мы сейчас пытаемся оценить, состоит в том, чтобы импортировать данные из пакетной системы в другую коллекцию Solr, но на самом деле не уверен, как синхронизировать обе коллекции (т.е. та, что с данными в реальном времени, а вторая - через пакетный импорт).
Я прочитал обработчики импорта данных, но это переопределит существующие данные в Solr. Есть ли способ, которым мы можем определить дельту между двумя коллекциями и проглотить только это.
1 ответ
Нет хорошего пути; Есть несколько вещей, которые вы можете сделать:
- Когда данные поступают в систему реального времени, существует временная метка импорта. Затем сделайте запрос диапазона, чтобы добавить новый материал. Я думаю, что новые версии Solr уже имеют поле для этого.
- Регистрируйте идентификаторы документов, идущих в первый Solr, а затем индексируйте их.
- Отдельная очередь для другой коллекции