首页 > 解决方案 > 狮身人面像 / Manticore - 以一个普通索引为基础?

问题描述

我有一个纯文本索引,它从 MySQL 中提取数据并以我需要的格式将其插入 Manticore(例如,将日期时间字符串转换为时间戳,连接一些字段等。

然后,我想根据这些数据创建第二个纯文本索引以进一步分组。这将使我不必重新运行对第一个索引所做的规范化,INSERT或者使我将来更容易查询。

例如,我的第一个索引是所有已拨打/接听电话的列表(电话号码、时长、代理)。第二个索引应该按年-月-日分组,这样我就可以看到当天每个座席打了多少电话。这意味着我最终得到idx_phone_callsand idx_phone_calls_by_date

目前,我从 MySQL 生成第一个索引,然后让 Manticore 查询自身(通过将 MySQL 主机设置为 localhost。它可以工作,但感觉好像我应该能够直接从索引中查询 Manticore。但是,我我正在努力寻找这是否可能。

有更好的方法吗?

标签: sphinxmanticore-search

解决方案


那么Sphinx/Manticore,有自己的GROUP BY功能。所以也许无论如何都可以对原始索引运行最终查询,避免需要第二个索引。Sphinx 的聚合(在某种程度上)比 MySQL 更强大,并且可以做一些“超级聚合”功能(比如 with WITHIN GROUP ORDER BY

但除此之外,没有直接的方法来创建另一个(例如,没有CREATE TABLE idx_phone_calls_by_date SELECT ... FROM idx_phone_calls ...

您指导indexer从中查询数据的“解决方案”searchd很好。一般来说,这应该非常有效,特别是在本地主机上,几乎没有开销。维护 searchd 用于查询的逻辑分离,索引器用于构建索引。


推荐阅读