本文主要是介绍[OceanBase] 架构设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
最近花了点时间研究了下OceanBase,非常有意思,写点东西记录一下学到的东西。
参考文档:https://github.com/alibaba/oceanbase/wiki/OceanBase%E6%9E%B6%E6%9E%84%E4%BB%8B%E7%BB%8D
OceanBase的产生背景
OceanBase最初是为了解决淘宝网的大规模数据而产生的(数百亿条的记录、数十TB的数据、数万TPS、数十万QPS),传统的如Oracle单机数据库肯定无法支撑(加再多硬件也不行,RAC的可扩展性太差),于是乎,有段时间,淘宝就开始用MySQL取代Oracle,然后就是疯狂分库(通常的做法是根据某个业务字段,通常取用户编号,哈希后取模,根据取模的结果将数据分布到不同的数据库服务器上,客户端请求通过数据库中间层路由到不同的数据库服务器上),这种方式有如下弊端:
1)添加节点比较复杂,往往需要人工介入;
2)有些范围查询需要访问几乎所有的分区数据库,性能变的更差;
接着Hadoop如火如荼,于是这些技术人员又在考虑是否可以使用HBase,但HBase有个致命缺陷:只能支持单行事务(HBase的体系架构可参考我的另一篇博文:http://blog.csdn.net/u010415792/article/details
这篇关于[OceanBase] 架构设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!