分布式数据库选型分析.docx
《分布式数据库选型分析.docx》由会员分享,可在线阅读,更多相关《分布式数据库选型分析.docx(11页珍藏版)》请在第一文库网上搜索。
1、分布式数据库选型分析数据库向左,中间件向右【摘要】近些年来传统集中式数据库已不能满足需要,分布式数据库成为必然的选择。金融行业作为数据应用的高地,对数据库的要求更高。然而面对纷繁复杂的数据库种类,该如何选择呢?本文尝试从分布式数据库的发展路线、技术分类、行业痛点等角度,谈谈分布式数据库的选型问题。1.分布式数据库演进之路2010分布式数据庠发布DB2.MPP内存故据R单机型数据库,最早源自上世纪70年代,从IBM著名的论文开始,后面诞生了Orac1e.DB2为代表的优秀商业产品以及POStgreSQ1、MySQ1为代表的开源产品。这些产品很好的满足了对数据存储和计算的需求。随着21世纪初期,互
2、联网浪潮的来临,数据规模呈爆炸式增长,单机数据库越来越难以满足用户需求。这也催生了分布式数据库的到来。到了2006年之后,出现以HBaSe/Cassadra/MongoDB为代表的NOSQ1类产品。这些产品实现了分布式架构,可以实现容量的水平扩展,但也牺牲了诸如事务、SQ1访问接口等能力。存储模型的简化为存储系统的开发带来了便利,但是降低了对业务的支撑。在这一阶段,很多企业为了解决大规模数据存储与访问的问题,也研发了很多中间件产品。其原理是通过将数据分片存储到单机库,上层对SQ1解析实现对语句的路由。这种方式有一定的难点,例如对分布式事务的处理及规模扩大下的管理问题。到了2012年,Goog1
3、e的论文为关系模型的分布式架构,提供了新型分布式数据库理论基础。在此之后,诞生了一系列新型分布式数据库产品。其原理是通过分布式一致性算法协议完成底层数据多副本存储,上层则实现了标准SQ1支持能力。-分布式数据库之辩从上文可看到分布式数据库的发展非常之快,目前仍处于高速发展期;而且并不是单一发展路径,有很多技术路线同步发展。因而,大家口中的“分布式数据库”可能代表的技术栈完全不同。下图尝试对常见的“分布式数据库”产品按技术实现差异做个简单分类。下述分类仅代表个人观点,部分产品因技术快速演进可能有所变化。除了传统数据库外,这里将分布式数据库分为三种情况:-分布式中间件这种架构是从之前谈到的中间件路
4、线演进而来。其采用存储与计算分离架构,底层采用标准单机数据库,副本间基于数据库主从复制机制。上层承担计算,并可将部分计算下推到存储节点执行。这种架构在分布式事务、全局MVCC等方面,往往存在一定难点,各厂商也有各自解决之道。-分布式事务这种架构正是受到GoogIe论文影响演进而来。其采用存储与计算分离架构,底层采用单机库(不一定是关系型),副本间采用分布式一致性协议完成复制,支持多数派提交。上层承担计算,并可将部分计算下推到存储节点执行。-分布式存储这种架构另辟蹊径,其上层是采用本地计算方式,下层采用分布式存储,节点间共享数据。这种架构需要严格依赖于底层存储系统。-典型产品示例(分布式中间件)
5、上图一摘自GO1denDB数据库,上图二摘自TDSQ1数据库。从上面两图可见,此类数据库架构大致都分为几个组件:o计算节点(或称PrOXy)集群,由一组无状态节点组成,响应用户请求、解析SQ1、完成逻辑优化、物理优化,生成分布式执行计划,下发到数据节点,完成用户操作请求。o数据节点集群,真正完成数据存储功能。集群由若干单元组成,数据按分片策略存储在单元中。每个单元内由一组独立数据库主从集群构成,实现对数据的高可用保证。o管理节点(含配置中心),负责集群组件管理、元信息存储等,不涉及业务访问流程。O事务管理器(G)TM),负责事务管理,有中心化或非中心化不同实现策略。o管理控制台,负责集群管理、
6、维护职能。典型产品示例(分布式*务)上图一摘自PingCAP-TiDB数据库,上图二摘自OCeanbaSe数据库O此类分布式数据库的实现差异是较大的,不同厂商有各自的实现策略。前者倾向于中心化实现,后者倾向去中心化。但总体上,还是包含两类组件,一是计算节点、二是存储节点。前者实现了用户访问接入,后者通过分布式一致性算法,实现数据的多副本存储。2.数据库选型的痛点与难点如之前所说,金融行业正面对底层基础设施的转型问题,数据库作为重要的底层技术栈同样面临一个选择的问题。但在这一选择过程中,往往存在较多的痛点和难点。这主要是因为金融行业的特殊性所造成的。-【痛点】基础功能待完善对标传统集中式数据库,
7、现有的分布式数据库在功能上仍然有待完善。这一方面是因为分布式架构所造成的功能tradeoff,另一方面是在产品化能力完整性上的欠缺。前者是我们在使用分布式数据库产品时,需要在架构、设计层面需要在关注的,在项目初期都需要解决掉的。而后者厂商产品经过多年发展在内核能力上已趋于完善,但在周边配套的管理、设计、优化工具上,仍需进一步完善。毕竟最终为用户呈现的,是一套完整的数据库解决方案。【痛点】运行稳定待验证对于金融行业而言,稳定性是第一位的。虽然分布式数据库在设计之处,就将稳定性设计放在优先位置,其天然的分布式架构也有利于提供更高的可用性保证。但一方面分布式架构天然由多组件组成,其复杂程度较集中式更
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 分布式 数据库 选型 分析