我每天都会经历一次非常强烈的狮身人面像配置,将数百万条记录转换为可用/可搜索的狮身人面像指数。
但是我现在需要将其导出为xml文件,如果不是那样将其导出为新表。
当然,我可以在Mysql的Sphinx索引中完成大部分/全部工作,但如果我刚刚生成了Sphinx索引,它似乎是很多不必要的工作。我可以以某种方式将该索引“导出”到表中,还是全文索引对我来说基本上对我来说是无形的可读数据?
答案 0 :(得分:0)
这取决于你想要的东西。
Sphinx指数显然是一个倒立指数。 https://en.wikipedia.org/wiki/Inverted_index
......因此有助于找到哪些'文件'包含一个给定的单词,它将其作为列表存储。 (理想情况下适用于查询的基本功能!只需sphinx对多字查询以及排名结果进行繁重的处理)
......这样的结构不是按文件组织的。因此无法直接获取给定文档中的单词列表。 (计算htat必须遍历整个数据结构)
但如果你想要的倒排索引可以用indextool
转储它
http://sphinxsearch.com/docs/current.html#ref-indextool
...例如--dumpdict
甚至--dumphitlist
命令。
(尽管dumpdict仅适用于dict=keywords
索引)
您可能对--dump-rows
上的indexer
选项感兴趣
http://sphinxsearch.com/docs/current.html#ref-indexer
...它在索引期间转储文本数据,从mysql中检索。
它并没有从索引本身倾销,也不受所有“魔法”的影响。标记化和标准化sphinx(charset_table
/ wordforms
等)
返回indextool
还有--fold
,--htmlstrip
,--morph
,可在流中用于标记文字。
理论上可以使用这些来使用“电源”。 sphinx和实际索引的设置,以创建已处理的数据集(类似于sphinx正在生成索引)