Manticore Search 2.4.1 GA release

我们很高兴地宣布 Manticore Search 2.4.1 的 GA 版本发布。

可供 Debian、Ubuntu、Red Hat/CentOS、Windows 和 OSX 的预构建包可以从 这里 下载。

Manticore Search 2.4.1 GA 与现有的 Sphinx 搜索版本 100% 兼容(如果您从旧的 Sphinx 版本升级,请检查到 2.3.2 的升级路径)。

新特性

WHERE 中的 OR 操作符

现在可以在属性过滤器之间的 WHERE 子句中使用 OR。请注意,在 MATCH 子句与属性过滤器之间仍然无法使用 OR。

mysql> select * from wikipedia where match('test')  and pageid=357881 OR  len=2070;
+-----------+------------------------------------------------------------+---------+-------+------------+
| id        | title                                                      | pageid  | len   | touched    |
+-----------+------------------------------------------------------------+---------+-------+------------+
| 227704715 | Test-driven_development                                    |  357881 | 24915 | 1216959577 |
| 222632760 | Echo_(command)                                             |  754160 |  2070 | 1214847412 |
+-----------+------------------------------------------------------------+---------+-------+------------+
2 rows in set (0.01 sec)
维护模式

使用 SET 语句可以将服务器置于维护模式。在此模式下,仅允许使用 VIP 连接的客户端执行查询。

mysql> SET MAINTENANCE = 1;
在分布式索引上调用关键字

现在也可以在分布式索引上运行 CALL KEYWORDS。该命令在每个节点上执行,结果由主节点合并并发送回去。

UTC 中的分组

默认情况下,时间分组函数在本地时区计算。 grouping_in_utc 允许切换到 UTC 时区。还可以通过 SET 语句动态更改。

日志文件权限

默认情况下,searchd 创建权限为 600 的日志文件。现在可以使用 query_log_mode 设置不同的权限。

searchd
{
   ...
   query_log_mode = 666
   ...
}

其他小调整:

  • 字段权重可以为零或负数

  • max_query_time 现在可以中断全扫描查询(没有 MATCH 子句的查询)

  • 引入 net_wait_tm、net_throttle_accept 和 net_throttle_action。这些是工作线程池的网络线程微调设置,以应对繁忙的服务器。

  • 现在可以在使用 Facets 时执行 COUNT DISTINCT

  • IN 现在可以与 JSON 浮点数组一起使用

  • 整数/浮点表达式不再破坏多查询优化

  • 当使用多查询优化时,SHOW META 会显示一个 ‘multiplier’ 行

编译

编译所需的最低 gcc 版本为 4.7.2。编译过程需要 cmake。这使得可以将构建打包为 ZIP 文件或特定的发行版包(rpm/deb)。有关更多信息,请查阅文档的 编译部分

从 Sphinx 搜索升级

Manticore Search 继续使用常规的 /etc/sphinxsearch/sphinx.conf

服务将以 manticore 用户身份运行(Sphinx 使用的是 sphinxsphinxsearch)。

默认使用的文件夹是 /var/lib/manticore/var/log/manticore/var/run/manticore。您仍然可以使用现有的 sphinx.conf,但需要手动更改 /var/lib/sphinxsearch/var/log/sphinxsearch/var/run/sphinxsearch 的权限。

错误修复

在 Sphinx 2.3.2 上报告的大量错误已被修复,但可能不是全部。如果您升级后仍然遇到错误,请在官方 问题追踪器 上填报工单。

如果您正在使用实时索引,建议升级到 Manticore Search 2.4.1 GA,因为在 Sphinx Search 2.3.2 引入的 RT 块渐进合并可能会导致索引损坏。

有关更改的完整报告,请查阅 发布说明

安装Manticore Search

安装Manticore Search