• 1. OceanBase-支付宝交易O2O最佳实践师文汇 OceanBase数据架构专家 - 阿里技术保障 ArchSummit / 12月19日
  • 2. 目录OceanBase简介金融领域的挑战交易去O最佳实践交易双十一云上的OceanBase
  • 3. OceanBase发展历程2011201220132014NoSQL到关系数据库的转变 登录支付宝业务系统 逐步完善OB的基础配套系统NoSQL的0.3稳定版本 OB的业务开始四处开花天猫、一淘等等 解决了评价等等原来难以解决的事情 支持了第一个OLAP业务诞生之初的第一次大考:11.11全新的存储引擎,提升磁盘的存储效率 3中心架构保证数据的强一致 交易O2O,阿里自主研发VS IOE OceanBase数据库服务化脚步开始
  • 4. OceanBase起源-一些隐藏的事实人口库:14亿条记录,增删改:出生、死亡、迁移… 交易库:每笔交易一条/几条记录,增删改:创建、买家已付款、卖家已发货、退货退款… 账务库:每人一条/几条记录,增删改:付款、收款、变更… 数据库:数据总量大,增删改量少 10亿次写,100B/写100GB
  • 5. Data=基线数据 (固态盘)+修改增量 (内存)Query增删改OceanBase简介-原理
  • 6. OceanBase简介-架构修改增量(增删改)置于内存:无随机磁盘写、性能高 单点写入:数据一致性好,性能&内存容量有瓶颈 修改增量与基线数据跨服务器Update ServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServer修改增量应用接口基线数据Root Server总控中心
  • 7. OceanBase架构-三集群数据多副本跨数据中心,事务同步到多数库Update ServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerUpdate ServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerRoot ServerRoot ServerUpdate ServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerMergeServer ChunkServerRoot Server
  • 8. 金融业务简介屌丝的理解:与经济活动相关的业务卡类服务保险类业务理财类业务转账付款:典型的单据型业务,一次转账对应一条业务单据。数据需保证强一致,业务逻辑比较复杂OceanBase第一个用于金融业务的非商用数据库
  • 9. 金融数据库的挑战高可用&IDC容灾数据强一致ACID/复杂事务高性能可扩展好楼盘要有好的配套设施!金融数据库需要具备什么?
  • 10. 金融数据库的挑战-实践主库IDC-1备库IDC-3备库IDC-2Paxos协议强同步 单IDC故障RPO为0 故障影响时间小于35s客户客户客户客户客户客户5%~10%...灰度切流 随时回滚,30s完成 大数据分析ODPS实时数据分析资源组管理集群管理资源申请元数据中心资源使用详情性能诊断阈值报警SQL审计安全控制开发调试数据订正数据迁移Iaas化备份恢复全链路监控OceanBase数据库数据流服务秒延迟的数据流服务 自动化运维操作 逐步开放Iaas服务 4年的积累,OB初步具备了金融DB的条件从支付宝交易的实际需求出发
  • 11. 支付宝交易业务介绍生活助手无线业务阿里集团淘宝B2BB2C行业收费余额积分红包交易预存卡信用支付……营销风控折扣券合作伙伴蚂蚁集团
  • 12. 交易O2O最佳实践业务如何改造如何保证质量如何实现回滚高可用如何实现数据如何迁移灰度引流数据有问题了咋办? 如何降低O2O的风险?Oracle to OceanBase的挑战
  • 13. 交易去O最佳实践业务改造 减少后续业务改造成本 通过中间件屏蔽DB差异 交易去O质量保证 中间层的“双写”验证 OBTRADE的持续集成中间层OracleOB交易APPORM实时数据对比OBOracle SQLOB SQL交易模型压力一致性故障模拟器故障注入
  • 14. 交易去O最佳实践数据迁移方案 零历史数据迁移的迁移方案 Why? 灰度引流的方案 原则:稳扎稳打逐步引流 辛德勒名单:吃自己的狗粮 0.01%1%10%...... 留好后路,随时回滚交易APPOracleOB5%流量95%流量交易1交易2交易3timeline
  • 15. 交易去O最佳实践数据一致性挑战 原理:业务上下层关联的对账 基于通知的实时数据对账 小时级别的全量数据对账 一致性问题的应急处理方案 性能优化&分析RT8ms5.4ms3.6ms2ms交易APPPS Cache优化按需加载,减少SQL热点数据模型优化OceanBase链接获取策略Memcpy优化UPS并发提交优化
  • 16. 支付宝交易双十一双11准备 全链路性能压测 完善的异常方案秒级生效 数据一致性实时监控 淡定的迎接11.11 Oracle抖动RT短4msOceanBaseRT平稳吞吐量高2~3倍成本较低
  • 17. 交易去O最佳实践I期:2013.12~2014.5II期:2014.5~2014.10大促:2014.11.11业务分析梳理产出OB需求 业务&中间件基于OB改造 OB交易版本功能开发OB&业务性能优化 线上双写验证 实现灰度切流/回滚方案支持全链路压测改造 数据对账功能开发 业务高可用特性优化
  • 18. 交易O2O总结推动OceanBase在核心金融业务的落地 推进OceanBase生态体系的完善 为去IOE积累了丰富的经验和产品 有丰富的场景有创新的想法有一群给力的小伙伴
  • 19. 云上的OceanBase(1.0)完全兼容MySQL动态伸缩能力分布式事务更少的成本数据强一致
  • 20. Thank You