Мы рады сообщить, что Manticore Search 3.5.2 вышел!
Кроме 19 исправлений ошибок он вводит несколько приятных новых функций и изменений:
Более умный OPTIMIZE
Если вы используете реальное время индексы , вы знаете, что существует команда OPTIMIZE INDEX , которая выполняет сжатие индекса. Исторически это могло только объединять куски индекса в один. В 3.5.2 это изменено и теперь настраиваемо:
- по умолчанию, конечное количество кусков равно
2 * # ядер CPU
, что позволяет эффективно использовать несколько ваших CPU - для тонкой настройки поведения добавлена новая опция
cutoff
, которая позволяет продолжать объединение до тех пор, пока количество кусков не достигнет желаемого значения - 👷 Работа в прогрессе: еще более умный OPTIMIZE, который вам вовсе не нужно будет запускать внешне!
Отдельный оператор NOT
Оператор полнотекстового поиска NOT
теперь может использоваться отдельно. По умолчанию он отключен, поскольку случайные одиночные запросы NOT могут быть медленными. Но если вы знаете, что делаете, вы можете включить его, установив новую директиву searchd not_terms_only_allowed
в 0. Это решает задачу черного списка полнотекстового поиска, когда вы хотите найти все документы, кроме тех, которые содержат некоторые плохие слова. Это особенно полезно, когда используется как запрос на перколацию в Manticore
Percolate Queries
, так как это позволяет просто сохранить ваш “черный список” в виде набора запросов на перколацию и затем фильтровать все документы, содержащие их.
max_threads_per_query и OPTION threads
В 3.5.0 мы представили новый режим многозадачности, который основан на опции searchd.threads
, ограничивающей максимальное количество потоков, которые Manticore Search может выделить для различных задач. Но если у вас слишком много кусков в реальном времени индексе или слишком
распределенный индекс
+ высокий QPS, вы можете не пожелать позволять каждому запросу занимать все ваши threads
. В 3.5.2 есть 2 новые опции:
- max_threads_per_query для глобального ограничения
- и
SELECT ... OPTION threads=N
для ограничения на уровне запроса
Аггрегации в HTTP протоколе
В Manticore 3.5.2 HTTP API /search
получает базовую поддержку для
фацетирования
и
группировки
.
👷 Работа в прогрессе: добавьте эту функциональность к клиентам Manticore на основе HTTP ( php , python , javascript , java , elixir )
Порты репликации по умолчанию
Настройка репликации стала проще. В большинстве случаев вам не нужно думать о том, какие порты необходимо выделить для использования репликацией и как включить репликацию в конфигурации. Если вы хотите синхронизировать индекс между несколькими узлами Manticore, это теперь так просто:
Новая схема упаковки
С 3.5.2 теперь можно устанавливать/обновлять сервер Manticore Search и вспомогательные инструменты (индексатор, indextool и т.д.) отдельно. Это может быть особенно полезно для тех, кто использует обычные индексы и перед внедрением нового индексатора (который, возможно, изменяет формат индекса) хочет попробовать только searchd (который понимает старые форматы).
Новые названия пакетов - manticore-server
и manticore-tools
, и их можно установить через менеджеры пакетов.
Пакет manticore
поддерживается как и ранее, и если вам не нужно вышеуказанное, просто устанавливайте/обновляйте manticore
как вы привыкли
. Читайте о других изменениях, произошедших в 3.5.2, в
Manticore Manual
и следите за новостями!
С уважением,
Команда Manticore