Sphinx 将多个表集中到一个索引中

Sphinx centralize multiple tables into a single index

我有多个 table (MySQL),我想为它们创建一个索引。

每个table都有int自增类型的主键。

每个 table 收集的数据的结构是相同的(所以没有冲突),但是由于 ID 冲突所以我似乎必须分别查询每个索引(除非你能给我提示如何避免 ID 冲突)

问题是:如果我分别查询每个索引是否意味着返回结果的权重在索引之间具有可比性?

unless you can give me a hint of how to avoid ID collision

例子见 http://sphinxsearch.com/forum/view.html?id=13078 您可以只安排不同的 id 偏移。 'sphinx document id' 不必匹配真正的主键,但具有简单的映射会使应用程序更简单。

您可以在一个索引、一个源之间进行选择(使用单个 sql 查询将所有 table 联合在一起。一个索引,多个源。(一个源每个 table,都创建一个索引)或多个索引(每个 table 一个索引,每个索引都有自己的来源)。无论哪种方式都会给出相同的查询结果。

If I query each index separately does it means that the weight of returned results are comparable between indexes?

差不多。区别应该是可以忽略不计的,不管你用什么方式来做。