sphinx在多个服务器和数据库分区上

时间:2011-02-07 15:57:21

标签: mysql database search sphinx thinking-sphinx

嗨我想创建用sphinx完全驱动的用户搜索。问题是我的数据是 分布在多个服务器和数据库上,其中一些是分区的。所以 finall我有三个数据源,一个是具有基本用户数据的表,而不是 分区,第二是其他服务器上的表存储用户当前的实时动作 使用一些基本信息登录,第三个是用户配置文件数据,完全分区 (16段)与实时用户在同一服务器上

构建三个单独的索引没有问题...但我希望一个搜索一个主要 索引

我的个人资料数据基础索引工作得非常好,但因为我不想分开 搜索过程我想合并来自不同服务器的所有数据......

我通过将源类型定义为SOURCE来尝试MVA,我可以轻松地定义例如。主办, 用户,传递,但它不受支持,然后我试图传递一些变量来查询源 类型但效果为零

然后我查看了一些索引的合并,但没有找到任何解决方案 这个。不是runquery不支持这样的东西

看起来我唯一希望是检索所有数据并生成xml whitch然后传递给 sphinx,但据我所知,我失去了实时索引更新以及增量索引更新, whitch对我来说是个问题...

有没有办法做到这一点?我没有想到的东西?还是错了?

2 个答案:

答案 0 :(得分:0)

如何在Sphinx中合并数据的选项很少:

  1. 你可以在'index'中使用多个'source',这可能是你想先尝试
  2. 您可以使用Sphinx分布式索引(包括在不同服务器上具有不同节点,并通过父节点合并自动结果)
  3. 你可以使用索引器--merge,但我想你的情况没有意义

答案 1 :(得分:-4)

对于此类任务使用而不是{{3p>