Как использовать Elastic Search поверх ранее существующей базы данных SQL?

Я читал много хорошей документации о том, как реализовать Elastic Search на веб-сайте с помощью javascript или PHP.

Очень хорошее введение в ES .

Очень полная документация здесь и здесь .

Целый CRUD .

Упругий поиск с PHP: здесь , здесь и здесь .

Поэтому причина, по которой я даю вам эти URL-адреса, заключается в том, чтобы понять, как использовать одну или многие из этих замечательных документов при наличии существующей SQL-базы данных.

Я где-то упускаю точку: как они сказали, Elasticsearch создаст свои собственные индексы и DB с MongoDB, я не понимаю, как я могу использовать мою (гигантскую) базу данных с использованием SQL? Скажем, у меня есть БД MySQL, и я бы хотел использовать Elasticsearch для ускорения моих исследований и для того, чтобы предлагать запрошенные пользователем запросы, как мне это сделать? Как ES работает над MySQL? Как перенести этот гигантский набор Datas (более 8 ГБ) в ES DB, чтобы быть в полной мере эффективным в начале?

Большое спасибо

Я использую jdbc-реку с mysql. Это очень быстро. Вы можете настроить их для непрерывного опроса данных или использования единовременной (одноразовой стратегии) ​​импорта.

например

curl -xPUT http://es-server:9200/_river/my_river/_meta -d ' { "type" : "jdbc", "jdbc" : { "strategy" : "simple", "poll" : "5s", "scale" : 0, "autocommit" : false, "fetchsize" : 10, "max_rows" : 0, "max_retries" : 3, "max_retries_wait" : "10s", "driver" : "com.mysql.jdbc.Driver", "url" : "jdbc:mysql://mysql-server:3306/mydb", "user" : "root", "password" : "password*", "sql" : "select c.id, c.brandCode, c.companyCode from category c" }, "index" : { "index" : "mainIndex", "type" : "category", "bulk_size" : 30, "max_bulk_requests" : 100, "index_settings" : null, "type_mapping" : null, "versioning" : false, "acknowledge" : false } }' 

Если вам нужно более эффективное и масштабируемое решение для опроса, предлагаемого jdbc-river, я рекомендую вам посмотреть эту презентацию, в которой объясняется, как выполнять инкрементную синхронизацию с SQL Server в Elastic Search:

Принципы, обсуждаемые в видео, также применяются для других приложений репликации RDBMS -> NoSQL.

  • Добавление Elasticsearch в существующее приложение .NET / SQL Server (You Tube)