分库分表以及联合查询有现成的工具吗?

2014-07-17 11:55:21 +08:00
 shyrock
我之前的项目用的Oracle和MySQL,都是单数据库(+RAC)。存在的问题是扩展性很差,要扩大规模的时候,需要备份数据整体升级后再恢复数据。而且RAC作为高可用的代价太高。

现在构思一个新的系统,想做到数据规模、并发性能可以做到平滑升级,而且以较低的代价解决高可用问题。看了一些资料,目前觉得基于MySQL做分库分表貌似是一个成本较低且成熟度较高的方案,但是似乎分表分库后的查询都需要应用层做查询分拆和数据合并,想知道有没有现成的工具比如数据库引擎完成了这部分功能呢?让分库分表对应用层透明。

请高手指教。
5675 次点击
所在节点    程序员
9 条回复
NCE
2014-07-17 14:42:21 +08:00
MySQL有很多中间件,大部分都是解决这个问题的。
shyrock
2014-07-17 14:55:01 +08:00
@NCE 能举个例子吗?谢谢
canesten
2014-07-17 15:02:12 +08:00
NoSql大法好
技术上Hold的住的话可以换个NoSql数据库
shyrock
2014-07-17 15:12:04 +08:00
@canesten NoSql也看过,但是感觉一下子转过去跨度太大,担心没有想透,遇到大的技术限制再改架构的损失伤不起。弄个KV做cache可以考虑,持久化的核心数据目前还是考虑放在RDB里面。
canesten
2014-07-17 15:17:57 +08:00
可以先从MongoDB开始实验
MongoDB还是可以支持大部分类似RDB的花式查询
只要注意到某些特定类型的查询在特定环境下性能可能出问题就可以了
MongoDB的官方文档也算比较健全
对于MySql类的应用来说过渡还是挺适合的
shyrock
2014-07-17 15:57:56 +08:00
@canesten 谢谢,研究一下MongoDB
88250
2014-07-17 16:01:21 +08:00
这个可能会有帮助: https://github.com/alibaba/cobar
shyrock
2014-07-17 23:09:58 +08:00
@88250 这个cobar是ali自己公布的还是泄露的?感觉直接用有版权问题吧,不过文档实在太棒了,很有参考价值,谢谢了
88250
2014-07-18 08:52:44 +08:00
这个是阿里巴巴的正式开源项目,不会有版权问题(Apache License Version 2.0)。

嗯,里面的几篇文档还是很不错的。

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

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

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

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

© 2021 V2EX