《2019年云时代企业级分布式数据库的技术挑战.pdf》由会员分享,可在线阅读,更多相关《2019年云时代企业级分布式数据库的技术挑战.pdf(29页珍藏版)》请在三个皮匠报告上搜索。
1、OceanBase:透明可扩展的企业级数据库蚂蚁金服 研究员目录什么是透明可扩展透明可扩展的理论基础 透明可扩展的关键设计 OceanBase实践企业级数据库:Oracle、SQLServer、DB2 云数据库:Amazon Aurora、Amazon Redshift 魔力四象限 行业现状ABILITY TO EXECUTECHALLENGERSLEADERSNICHE PLAYERSVISIONARIESMongoDBMarkLogicIntersystemsAmazon Web ServicesMicrosoftOracleSAPIBMEnterpriseDBDataStaxMapRAc
2、tianGoogleAlibaba CloudCOMPLETENESS OF VISIONAs of June 2018Gartner.Inc企业级数据库面临的问题$单机不可扩展成本高云数据库:开源数据库+存储计算分离 解决了存储可扩展问题,但事务和SQL不可扩展 开源数据库核心能力距离企业级数据库仍有较大差距云数据库!=透明可扩展DB(写入)DB(只读)存储集群Hybrid clouds require excellent distributed OLTP DBMS,and the memory/storage architecture still requires a lot of wor
3、k.In addition,data security and data management are both issues that need to be considered.C MohanICDE 2019,IBM Fellow分库分表!=透明可扩展middleware!中间件分库分表分布式数据库全局索引 全局快照 跨服务器复杂查询 跨服务器DML语句 带容错能力的分布式事务 无需业务修改,按需扩容 核心能力可扩展(存储、事务、SQL)线性可扩展 持续可用,稳定 企业级数据库功能 通过核心业务和benchmark证明 透明可扩展的企业级数据库目录什么是透明可扩展 透明可扩展的理论基础透
4、明可扩展的关键设计 OceanBase实践 原子性(A)事务操作要么全部成功,要么全部失败 一致性(C)一个事务只能使数据库从一个一致的状态跳转到另一个一致的状态,不能破坏主键唯一或者所有列之和为固定值之类的约束 隔离性(I)多个并发事务互相不影响,就如同多个事务串行执行一般 持久性(D)一旦事务成功提交,它对数据库的影响是永久的 事务ACID1978年,Jim Gray 阻塞协议:参与者宕机/协调者宕机 一台机器故障导致整个集群不可服务 分布式事务:2PC协议的陷阱参 与 者协 调 者参 与 者PreparePreparedCommitCommittedPreparePreparedComm
5、itCommittedX分布式事务的应对方案 中间件XA:依赖数据库 NOSQL系统:CAP理论,回避一致性与分布式事务 云时代的架构选择:直面问题,采用Paxos+2PC 分布式事务:Paxos+2PCConsensus on Transaction Commit Jim Gray and Leslie Lamport Microsoft Research 1 January 2004 Revised 19 April 2004,8 September 2005二阶段参与者二阶段参与者二阶段参与者事务管理器事务管理器事务管理器ReplicaReplicaReplicaPaxosPaxosPa
6、xosLeader主备同步模式:最高保护模式、最高性能模式、最高可用模式CAP:P无法规避,C与A不可兼得Paxos的高可用与CAP的可用性Paxos高可用:单点故障时多数派能否快速恢复 CAP可用性:单点故障时故障节点能否恢复 CAP与PaxosConsistencyAvailabilityPartition ToleranceCACPAPRaft的得与失得:顺序提交日志,大大简化Paxos 失:并发能力更差,牺牲可用性,异地部署有风险 常见系统做法Paxos阵营:Google Spanner,Ant Financial OceanBase 1.0,Amazon DynamoDB Raft阵