sphinx(coreseek)处理分表的方案
关于sphinx处理分表,有以下几个疑问
1、对于垂直分表,sql_query直接用join查询,但有人说这个效率不高,建立索引的速度比较慢?又有人说不会影响效率,直接使用join即可,求解并希望说明原因
2、对于水平分表,我原本设想的是在数据源中多写几个sql_query,但是生成索引的时候提示warning:key 'sql_query' is not multi-value; 意思是重复了,我记得之前测试成功过,这次又不行了,难道我记错了吗
如果行不通,想了以下几种方案:
① sql_query用union处理
② sql_query用视图处理
③ 索引中的source来自多个数据源,网上有人说可以来自多个数据源,但并没有找到具体配置方法,逗号不行
(将每个分表配置一个数据源,重复信息继承)
这几种方案哪个比较合适,求解并希望说明原因
谢谢诸位了,感激不尽
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
sphinx 不是mysql,它是个搜索引擎。
如果数据量很大,建议水平分,
1)可以使用内置的分布索引(其实是代理)
2)自己发送多个请求,最后合并数据。
多个数据源, 在indexer内配置source时,用多个源,用逗号分开,是可以的。