数据表水平切分后如何实现查询的呢?

2012-08-28 10:27:54 +08:00
 lusin
比如数据表有 [ID] [用户名] [年龄] 等字段,现在按ID水平切分

但现在按 [用户名] 查询用户信息的时候如何处理呢?因为通过用户名定位不到哪张表上去
3572 次点击
所在节点    程序员
4 条回复
ipconfiger
2012-08-28 10:47:12 +08:00
比如你用阿米巴就不需要这么麻烦,它会帮你中心组织sql的,不过如果你要取列表,那就有点纠结了
twm
2012-08-28 10:58:29 +08:00
如果是这样,那你这样切分就不合适,你可以在另一个地方,存储id:名称的对照,找到id再说。。。
ElmerZhang
2012-08-28 11:11:28 +08:00
首先,应该按最常用的查询条件来切分
如果经常按 name 来查的话,可以使用 @twm 的方法再存一个 name_to_id 的对照
如果按 name 查询不频繁的话,也可以直接每个表中都查一下然后 union
heaton_nobu
2012-08-29 11:22:01 +08:00
分区视图?
表分区一般都有分区条件的,你按照id段去分区会自动找到具体的分区

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/46305

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX