Sphinx中的MVA属性

时间:2009-12-14 09:49:03

标签: sphinx thinking-sphinx

有人可以帮我理解创建MVA的预期数据格式(多值) Sphinx中的属性?

我有一个MySQL函数,它返回一行以逗号分隔的整数,整理了 GROUP_CONCAT,作为一个blob。我有另外两个MVA属性来整理a的结果 JOIN语句,GROUP_CONCAT,作为blob(由ThinkingSphinx生成)。这些都包含在我的sphinx.conf中的sql_query中。

我尝试在控制台中的一个小结果集上运行SQL,它可以工作:对于所有 在MVA列中,结果是包含以下数据的blob:

2432,35345,342347,8975,453645

等等。正确生成JOIN / GROUP_CONCAT组合索引的两个MVA属性。但是,使用MySQL函数生成的MVA属性会导致 索引以静默方式失败(看似很少或没有数据被索引)。尽管查询在控制台中运行得非常好,但这仍然存在。

因此数据格式似乎相同,但Sphinx拒绝其中一个列。有没有人知道定义MVA属性的任何问题可能有助于我调试 此?

2 个答案:

答案 0 :(得分:1)

我从未使用过思考 - 狮身人面像(在这里是一家PHP商店),但我认为你不应该对你的结果进行group_concat。从我的一个sphinx.conf文件中的工作示例:

sql_attr_multi = uint categories from query; SELECT entry_id, cat_id FROM exp_category_posts

答案 1 :(得分:0)

我最终解决了这个问题。这是因为某事而发生的 这似乎是无关的:'sql_attr_str2ordinal'属性似乎受到了影响 (或影响)SQL查询/索引以我不完全理解的方式。

请参阅:http://www.sphx.org/forum/view.html?id=2867

幸运的是,在我的情况下,我能够完全删除它,现在索引似乎有效。