Если вы хотите начать изучение простых индексов Manticore Search или посмотреть, как работает его функция, следующая самая простая конфигурация Manticoresearch может быть полезной:
source min {
type = mysql
sql_host = localhost
sql_user = root
sql_pass =
sql_db = test
sql_query = select 1, 'cat' union select 2, 'dog'
}
index idx_min {
path = idx
source = min
}
searchd {
listen = 9306:mysql41
log = searchd.log
pid_file = manticoresearch.pid
binlog_path =
}
В ней почти ничего нет, кроме того, без чего Manticoresearch не может работать. Это:
Раздел “source” для получения данных из mysql. В этом случае мы даже не извлекаем реальные данные из mysql, а просто используем интерфейс mysql, имея данные, определенные прямо в конфигурации (“select 1, ‘cat’ union select 2, ‘dog’”). Это создаст 2 документа в Manticoresearch: один содержит слово “cat”, другой с словом “dog”, идентификаторы 1 и 2 соответственно.
Раздел “index” для создания индекса на основе вышеуказанного источника, он содержит только ссылку на источник (“source = min”) и путь к индексу (“path = idx”). Как только вы создадите этот индекс, файлы idx.* будут созданы в папке, из которой вы запускаете ‘indexer’.
Раздел “searchd” для указания Manticoresearch, какие порты он должен слушать (“listen = 9306:mysql41”, что означает, что SphinxQL должен быть использован для связи с Manticoresearch на этом порту), какой лог он должен использовать (“log = searchd.log”) и где он должен сохранить свой идентификатор процесса (“pid_file = manticoresearch.pid”).
Вот пример использования этой конфигурации:
Индексация:
[snikolaev@dev01 ~]$ indexer -c min.conf --all
Manticore 2.6.1 9a706b4@180119 dev
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
Copyright (c) 2017-2018, Manticore Software LTD (http://manticoresearch.com)
используя конфигурационный файл 'min.conf'...
индексирование индекса 'idx_min'...
WARNING: Attribute count is 0: switching to none docinfo
собрано 2 документа, 0.0 MB
отсортировано 0.0 Mhits, 100.0% готово
всего 2 документа, 6 байт
всего 0.045 сек, 131 байт/сек, 43.75 документа/сек
всего 3 чтения, 0.000 сек, 10.6 kb/запрос среднее, 0.0 мс/запрос среднее
всего 9 записей, 0.000 сек, 0.0 kb/запрос среднее, 0.0 мс/запрос среднее
Запуск ‘searchd’ и получение результатов с помощью mysql клиента:
[snikolaev@dev01 ~]$ searchd -c min.conf
Manticore 2.6.2 df9dc57@180213 dev
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
Copyright (c) 2017-2018, Manticore Software LTD (http://manticoresearch.com)
используя конфигурационный файл 'min.conf'...
слушая на всех интерфейсах, порт=9306
предварительная кэширование индекса 'idx_min'
предварительно кешировано 1 индекс за 0.001 сек
[snikolaev@dev01 ~]$ mysql -P9306 -h0
Добро пожаловать в монитор MySQL. Команды заканчиваются ; или \g.
Ваш идентификатор соединения MySQL 1
Версия сервера: 2.6.2 df9dc57@180213 dev
Copyright (c) 2009-2017 Percona LLC и/или его партнеров
Copyright (c) 2000, 2017, Oracle и/или его партнеров. Все права защищены.
Oracle является зарегистрированным товарным знаком Oracle Corporation и/или его
партнеров. Другие названия могут быть товарными знаками их соответствующих
владельцев.
Наберите 'help;' или '\h' для получения справки. Наберите '\c' для очистки текущего входного выражения.
mysql> select * from idx_min where match('dog');
+------+
| id |
+------+
| 2 |
+------+
1 строка в наборе (0.00 сек)
mysql> select * from idx_min where match('cat');
+------+
| id |
+------+
| 1 |
+------+
1 строка в наборе (0.00 сек)
Когда searchd запущен, если вы хотите перестроить индекс, вы можете сделать это без остановки searchd, если вы выполните indexer –rotate:
[snikolaev@dev01 ~]$ indexer -c min.conf --all --rotate
Manticore 2.6.1 9a706b4@180119 dev
Copyright (c) 2001-2016, Andrew Aksyonoff
Copyright (c) 2008-2016, Sphinx Technologies Inc (http://sphinxsearch.com)
Copyright (c) 2017-2018, Manticore Software LTD (http://manticoresearch.com)
используя конфигурационный файл 'min.conf'...
индексирование индекса 'idx_min'...
WARNING: Attribute count is 0: switching to none docinfo
собрано 2 документа, 0.0 MB
отсортировано 0.0 Mhits, 100.0% готово
всего 2 документа, 6 байт
всего 0.003 сек, 1547 байт/сек, 515.86 документа/сек
всего 3 чтения, 0.000 сек, 10.6 kb/запрос среднее, 0.0 мс/запрос среднее
всего 9 записей, 0.000 сек, 0.0 kb/запрос среднее, 0.0 мс/запрос среднее
с вращением индексов: успешно отправлен SIGHUP процессу searchd (pid=27004).
Как вы можете видеть в последней строке, индексатор отправил сигнал searchd, чтобы заставить его переработать индекс.
Наслаждайтесь работой с Manticore Search!