2015-02-27 2 views
2

Задача здесь заключается в том, как сохранить подмножество данных, находящихся в Sql Sever 2008 R2, в синхронизации с кластером ES с минимальными усилиями и поддержкой. Я знаю об изменениях в Sql Server и JDBC River. Но оба решения будут опираться на диспетчер индексов для извлечения и переноса данных. Итак, как вы, ребята, это делаете? Есть ли способ сохранить эти два в синхронизации с помощью фреймворков или любых стандартных приложений? Было бы предпочтительнее, если бы решение было основано на .NET, но это не «должно быть».Как сохранить кластер ElasticSearch в синхронизации с БД?

Редактировать: Это должно быть реализовано в системе, где невозможно реализовать события, которые я хотел бы управлять индексом. Другими словами, нет SOA или pub/sub. И реализация этого немного выходит за рамки.

+0

Это может быть полезно http://stackoverflow.com/questions/25763997/elasticsearch-do-i-need-the-jdbc-driver –

+0

Спасибо за ссылку, но преимущество в этом случае состоит в том, что он, вероятно, может перехватить события. Но когда вы создаете ES в существующую инфраструктуру, может не иметь смысла перехватывать коммуникации с десятками систем, чтобы обновлять индекс. Я мог бы согласиться с тем, что быть в состоянии подписаться на эти изменения было бы неплохо, но если это не вариант, все же можно будет реализовать ES разумным образом. – anders

ответ

1

Я бы не использовал реку для этой цели, так как они будут устаревать командой elasticsearch, мое предложение (в зависимости от вашего конкретного варианта использования) заключается в использовании подхода очереди для синхронизации. Детали в here и оттуда вы можете приспособить к вам конкретный случай.

Смежные вопросы