分布式数据库发展路径研究
分布式数据库发展路径研究 中国软件评测中心 (工业和信息化部软件与集成电路促进中心) 二〇二一年一月 主要编写单位及人员 中国软件评测中心:吕韬、曾晋、翟艳芬、庄金鑫 中兴通讯股份有限公司:吕伟初、朱业 蚂蚁科技集团股份有限公司:王栩、付万琳 华为技术有限公司:张昆、杨锐、张霄鸾 贵州易鲸捷信息技术有限公司:刘明、刘耀华、陶晟 腾讯云计算(北京)有限责任公司:陈昊、秦玮 武汉达梦数据库股份有限公司:张寒、冯源 前 言 分布式数据库是传统数据库技术与计算机网络的有机结合,相比于传统的单机或主备模式的集中式数据库,分布式数据库在平滑扩展、高性能、高可靠、高可用、低成本等方面具有优势,特别是在性能方面可突破集中式数据库的瓶颈,具有很强的研究和应用价值,目前很多数据库企业研发了分布式数据库产品,并在金融、电信、互联网等重点行业进行了成功应用,具有良好的发展前景。 本报告旨在梳理分布式数据库的技术体系和应用现状,结合金融、互联网等领域应用需求,分析制约分布式数据库大规模应用的因素,对未来的技术和应用趋势进行研判,并提出发展路径建议。报告的第一章基于目前的技术发展情况,给出分布式数据库的概念和分类;第二章综合分析分布式数据库发展现状,研判其适用场景,分析制约其发展的技术和应用因素;第三章分析分布式数据库发展趋势;第四章提出推动分布式数据库技术发展和行业应用的路径建议。 由于时间仓促,水平所限,报告中错误和不足之处在所难免,诚恳欢迎各位读者批评指正,意见建议请发送至 lvtao@cstc.org.cn。 目 录 前 言 ................................................... 3 1 分布式数据库的概念及分类 .............................. 6 1.1 分布式数据库的概念 ................................ 6 1.2 分布式数据库的主要技术 ............................ 7 1.2.1 分布式事务处理技术 ........................... 7 1.2.2 分布式存储技术 .............................. 11 1.3 分布式数据库的分类 ............................... 13 1.3.1 联机事务处理 ................................ 13 1.3.2 联机分析处理 ................................ 14 1.3.3 混合事务分析处理 ............................ 15 2 分布式数据库发展的现状及问题 ......................... 16 2.1 分布式数据库的发展现状 ........................... 16 2.1.1 技术现状 .................................... 16 2.1.2 重点领域应用 ................................ 18 2.2 分布式数据库发展面临的问题 ....................... 22 2.2.1 应用系统面对分布式数据库的合理选择问题 ...... 22 2.2.2 遗留系统面对分布式数据库的迁移改造问题 ...... 23 2.2.3 分布式数据库运维管理较为复杂 ................ 24 2.2.4 分布式数据库产品成熟度有待提升 .............. 25 3 分布式数据库发展趋势 ................................. 25 3.1 分布式数据库的产品化日趋成熟 ..................... 25 3.2 与人工智能等新技术融合实现高效运维 ............... 26 3.3 分布式数据库的服务方式将向云化发展 ............... 26 4 分布式数据库发展路径建议 ............................. 26 4.1 政策引导,形成分布式数据库的典型案例 ............. 27 4.2 产用协同,提升分布式数据库产品成熟度 ............. 27 4.3 营造环境,打造分布式数据库的生态体系 ............. 28 1 分布式数据库的概念及分类 1.1 分布式数据库的概念 分布式数据库最早于 20 世纪 80 年代提出,受限于当时的计算机软硬件及网络发展水平,数据库专家 M.Tamer Özsu和 Patrick Valduriez 在经典著作《分布式数据库系统原理(第3 版)》中,把分布式数据库定义为一群分布在计算机网络上、逻辑上相互关联的数据库。随着信息技术的发展,集中式数据库也正向基于网络的共享集群路线发展,而市场上的分布式数据库也不仅限于网络分布、逻辑关联等特性,经典的分布式数据库定义显然已不能体现分布式数据库当前技术特点,难以满足数据库种类区分要求。 根据目前我国分布式数据库技术现状,我们认为分布式数据库是具备分布式事务处理能力、可平滑扩展、分布于计算机网络且逻辑上统一的数据库。主要特征如下: ——分布式事务处理。分布式数据库与集中式数据库的主要区别就是是否具备分布式事务的处理能力。通过对数据库各种操作的并行计算、全局事务管理等机制,实现真正的分布式事务处理,并实现与集中式数据库一致的 ACID 特性。 ——平滑扩展。分布式数据库可根据业务的增长需要,动态扩展物理节点,以提升整体处理能力,且扩展过程不需停机,不影响在线业务。理论上可以进行无限扩展,扩展之 后在逻辑上仍然是一个统一的数据库。 ——物理分布、逻辑统一。分布式数据库的数据不是存储在一个物理节点中,而是存储在计算机网络上的多个节点上,且通过网络实现了真正的物理分布。而逻辑上仍是一个数据库,为用户提供统一的访问入口,实现对分布在网络节点上的数据的统一操作,即用户可以像使用传统集中式数据库一样使用分布式数据库,而不是分别操作多个数据库。 1.2 分布式数据库的主要技术 1.2.1 分布式事务处理技术 分布式数据库为了保障跨多个节点的事务原子性、一致性,一般使用分布式协议来处理分布式事务。常用两阶段提交协议、三阶段提交协议保障事务的原子性;使用 Paxos、RAFT 等协议同步数据库事务日志从而保证分布式事务的一致性。 两阶段提交协议 在事务处理、网络通信等领域,两阶段提交(tow-phase commit,下文简称 2PC)是一种常用的原子性保障协议。在分布式事务场景下,2PC 能够协调所有参与者共同达到commit/rollback 的结果,保证事务的原子性。该协议分为两步(PREPARE,COMMIT),因此称为两阶段提交。 2PC 协议中包含两种角色,分别为协调者(Coordinator) 和参与者(Participant)。其中协调者推动参与者执行,负责整个协议
[中国评测]:分布式数据库发展路径研究,点击即可下载。报告格式为PDF,大小1.09M,页数28页,欢迎下载。