Используйте StreamSet для сканирования данных MySql для создания индекса в ElasticSearch.

поисковый движок

ElasticSearch, или сокращенно ES, — это очень простой в использовании распределенный механизм поиска и анализа данных в стиле RESTful, который может решать различные возникающие приложения поиска комбинаций данных. Являясь сердцем Elastic Stack, он централизованно хранит ваши данные, помогая вам обнаруживать неожиданное и неожиданное.

1. Точки знаний входа в ЭУ

ES — это интегрированный инструмент, который интегрирует поисковую систему Lucense.У него много точек знаний.Здесь представлена ​​только концептуальная схема.

Одна картинка стоит тысячи слов:在这里插入图片描述

2. Завершите сбор данных и создайте индекс

Наш источник данных исходит от MySql, а данные считываются из записи журнала MySql, Это было сказано много раз, и я рассмотрю это здесь.

2.1 Установите MySql для поддержки Binlog

Измените конфигурацию /etc/my.conf и добавьте следующее:

server-id=123
log-bin=mysql-bin
binlog_format=ROW

Перезапустите службу MySql.

2.2 Добавить поддержку StreamSet для Mysql

Я особенно ненавижу Streamset, так почему бы не интегрировать его, ха-ха.

Установите драйвер Mysql Jdbc и драйвер BinaryLog: Загрузка драйвера:CDN.MySQL.com//загрузки/…Перейдите в каталог установки: /opt/streamsets-datacollector/streamsets-libs, Найдите два каталога: streamsets-datacollector-jdbc-lib и streamsets-datacollector-mysql-binlog-lib, соответственно скопируйте драйвер mysql jdbc в эти два каталога. Перезапустите службу StreamSet.Уведомление:установить разрешенияchmod -R 777 mysql-connector-java-8.0.22.jar

3. Нарисуйте блок-схему

在这里插入图片描述 Одна из маленьких хитростей: В предыдущей статье были представлены основные практические сводки 13, которые используются здесь.Когда мы работаем со вставкой и обновлением данных, чтобы избежать ошибок в цели ES, мы можем использовать метод upsert (с обновлением, без вставки).

одна из ям: Ошибка возникает при непрерывном запуске и остановке задач конвейера.

Pipeline Status: RUNNING_ERROR: MYSQL_006 - MySql server error: 
A slave with the same server_uuid/server_id as this slave has connected to the master;
 the first event 'mysql-bin.000001' at 278098179,
  the last event read from './mysql-bin.000001' at 278117580,
  the last byte read from './mysql-bin.000001' at 278117580.

Нам нужно только заменить идентификатор сервера конфигурации двоичного журнала mysql. Это должно быть вызвано невозможностью закрыть соединение, когда оно часто запускается и останавливается.

3.1 Подробные параметры конфигурации

Следующие подробности можно найти в моем CSDN.

4. Наблюдение за работой

Хм, масштабной сцены с пощечиной не получилось, и все прошло хорошо!在这里插入图片描述Нужный нам индекс уже появился в управлении индексами.在这里插入图片描述

5 Панель данных

Используйте Kibana для создания индекса запроса, а затем наблюдайте за данными в поиске данных следующим образом:

在这里插入图片描述Последующая оптимизация может быть проведена в соответствии с потребностями, но большая часть работы уже выполнена.

Разве не приятно не писать код?

在这里插入图片描述

6. Резюме

Во Внутренней Сутре Желтого Императора говорится: «В третий месяц весны, это называется развитием и развитием, рождаются небо и земля, все вещи благоденствуют, ложись ночью и рано вставай, широко гуляй по двору, отпускай медленно, чтоб рождалась воля, не убивай при рождении и не отнимай у нее. , Вознаграждай, но не наказывай, это ответ весны, путь здоровья. Наоборот повредит печень, лето будет холодным, а стариков меньше.

Раз так сказано в писаниях древних предков, братья и сестры, в соответствии с сезоном, почему бы вам не поторопиться и поставить лайк, один клик, три ссылки или что-то в этом роде? Питайте печень и защищайте печень, просто так и вперед!