-- 分享云数据库 POLARDB 从诞生到 2018 年的故事
阿里云 ApsaraDB 数据库高级产品专家 仝一
时值 2018 岁末, 回顾过去的一年, 阿里云自研云原生数据库 POLARDB 迎来了越来越多的用户青睐. 阿里云为什么要研发 POLARDB, 以及 POLARDB 采用了哪些关键的技术创新点, 对技术背景感兴趣的同学们, 可以深入了解下这篇博客《阿里云新一代关系型数据库 POLARDB 剖析》.POLARDB 从 2017 年 9 月底进行公测, 2018 年 5 月开始商用, 目前被包括互联网金融, 新零售, 在线教育, 泛娱乐等行业的用户广泛使用.(请参考阿里云 POLARDB 产品官方文档).
1. 做世界上最流行的云数据库
熟悉开源软件的用户可能都知道,"世界上最流行的开源数据库" 是 MySQL 的 Slogan. 出于对开源数据库 MySQL 的尊敬, 而且 POLARDB 也继承了阿里云 RDS 的云管理能力(阿里云 RDS 已经为数十万用户提供服务, 而 POLARDB 实际上是下一代的 RDS. 关于云数据库技术架构的演化, 可以参读另一篇博客《从阿里云数据库入选 Gartner 谈数据库的演化》), 做 "全世界最流行的云数据库" 很容易成为一个既朴素又浪漫的理想. 很显然, 现阶段 POLARDB 的用户 ="云的用户 ∩ MySQL 的用户". 当然 POLARDB 是一个全新品牌, 除了现在已经兼容 MySQL 商业化的版本之外, 我们正在研制兼容 PostgreSQL 的版本(预估 2019 年 3 月底公测), 到时候, POLARDB 的用户就应该等于 "云的用户 ∩(MySQL 用户 ∪ PostgreSQL 用户)". 当然, 我们还有其他类型的数据库也在研制之中, 例如 XDB. 所以 POLARDB 的用户公式将会不断被刷新.
2. POLARDB 的名字, 商标, 品牌和 LOGO 的由来
当初, POLARDB 的名字是部分小写 (PolarDB) 的, 这样更符合习惯和容易辨认, 后来由于商标问题以及注册成本的考虑, 我们面临需要更换名字的可能, 有段时间, 大概是 1 到 2 个星期, 整个数据库团队的同学们都在想着各种各样的新名字, 但是大家都觉得没有原来的名字好, 在法务同学的帮助下, 我们还是下决心申请了 "POLARDB" 的注册商标. 商标的注册也意味着 POLARDB 品牌的诞生, 毕竟启用一个新的品牌来表达一个新的数据库技术和下一代产品, 才称得上战略. 为了更好的衬托这个新的品牌, UED 同学也是费劲了脑汁, 一个类似于抽象的北极熊图案, 又有些像立体的一写多读的数据库集群架构的 LOGO 跃然纸上, 大家都很满意. 有了品牌, 有了 LOGO, 就好像一个小孩诞生后有了名字, 焕发出蓬勃的生机.
3. POLARDB 的产品立项和发布
基于数据库团队之前 2 年左右的研发储备, POLARDB 从 2017 年 6 月底开始正式通过产品立项, 然后大家热火朝天的干起来, 9 月底 POLARDB 在北京 W 酒店如期发布, 100 万 QPS 的读性能, 100TB 的最大存储容量, 一下刷新了大家对于云数据库的认知. 发布会有很多数据库用户来参加, 大家都很激动, 对 POLARDB 的期待很高. 10 月份, POLARDB 官网开始放开了用户试用申请.
4. POLARDB 公测
从 2017 年 10 月份开始, 到 2018 年 4 月底, 是 POLARDB 数据库产品全网公测申请试用的时间. 由于是免费使用, 申请的用户比较多, 让我们印象深刻的是, 杭州有一个用户, 在公测期间, 就直接把生产环境提前部署到 POLARDB. 所以说, 为了用户这份信任, 在解决产品稳定性和可靠性上, 技术同学们不断演进, 不敢有丝毫喘息, 摸索并实现了热升级, 数据冗余, 异步架构集群和差异化版本热备等多种手段来确保 POLARDB 用户数据的安全可靠.
5. POLARDB 正式商用
到 2018 年 5 月, POLARDB 正式商用上线售卖. 随后杭州, 上海, 北京的机房在集团平台保障部门和供应链部门的支持下, 陆续建立交付和开通. 到 6 月份开始, POLARDB 逐步迎来更多的用户, 而且, 通过热升级以及 24 小时的运维值班服务, 基本上可以解决了用户面临的线上运维问题. 一直到 11 月份, 深圳, 香港机房的上线, 进一步推动了用户的使用量. POLARDB 产品的体验也不断提升. 特别是 12 月份上线的新版控制台, 优化了 POLARDB 作为分布式集群的整体操作, 增加了 SQL 审计, Session 内读一致性的读写分离能力, binlog 也即将放开.
在商用的后半阶段, 我们通过云栖大会, POLARDB 技术沙龙等形式让越来越多的用户了解到 POLARDB, 关注 POLARDB. 同时, 我们也在不断分享产品和技术相关的细节. 例如:
《Scale read workload by sharing data files of InnoDB》介绍了基于 Innodb 的物理复制涉及到的主要代码模块;
《POLARDB 新品介绍 http://mysql.taobao.org/monthly/2017/09/01/ 》阐述了 POLARDB 内核方面的设计原理;
《POLARDB 最佳实践 http://mysql.taobao.org/monthly/2018/10/01/ 》介绍了 POLARDB 在运维方面的一些有用的技巧;
《深入解读阿里云数据库 POLARDB 的物理复制技术 https://mp.weixin.qq.com/s/LWFaQOM_n4R_tG02k13lBg 》解读了物理复制的原理和工作方式;
这篇在 VLDB 发表的论文《PolarFS: An Ultra-low Latency and Failure Resilient Distributed File System for Shared Storage Cloud Database http://www.vldb.org/pvldb/vol11/p1849-cao.pdf 》, 深入解读了 POLARDB 自研分布式存储系统的技术原理和架构;
《深入解读阿里云数据库 POLARDB 核心功能会话读一致性 https://mp.weixin.qq.com/s/1_05WTcV-c_0Pvs0T__12g 》介绍了 Session 内一致性读的实现原理;
《POLARDB 产品特性介绍系列文章》从性价比, 分钟级弹性, 物理复制, 会话一致性等综合介绍了 POLARDB 相对于 RDS 的产品优势.
《POLARDB-- 论 B + 树索引的演进方向 https://zhuanlan.zhihu.com/p/50630867 》以及《B + 树并发控制机制的前世今生 https://zhuanlan.zhihu.com/p/50112182 》这两篇文章对于 POLARDB 内核的数据结构和算法进行了深入的剖析.
6. POLARDB 和用户的故事
首先, 所有参与 POLARDB 产品项目的同学, 都是在内部创业. 大家一起亲历和见证了一个产品商业化的过程, 这是个难得的职业经历. 但最让我们感受到 POLARDB 产品意义的地方, 绝不仅仅在此. 我们看到有越来越多的创业型企业和用户在使用 POLARDB. 在和某些创业型用户沟通的时候, 他们的勇敢开拓, 锐意进取也感染着我们. POLARDB 能为大量这样的企业和用户提供产品价值, 正是我们存在的意义.
7. POLARDB 的未来
今天, POLARDB 已经成为阿里云的战略性产品, 也有越来越多的业界顶尖的科学家和资深研究人员加入到这个自研品牌的研发队列, 所以它的未来一定是让人充满期待的.
未来, 关于 POLARDB 产品的 Roadmap 会越来越多的聚焦于用户, 直面今天用户吐槽的痛点问题, 例如秒级监控, 物理迁移, 复杂查询和 hash join, 在线 DDL, 多可用区高可用, AutoScaling, 表级备份和恢复, 异地容灾等等这些高级功能会逐步实现.
而现在, 我们正在进行 100% 兼容 MySQL8.0 的 POLARDB 研发, 同时解决 MySQL 多核并行查询执行计划的能力, 预估在 2019 年的 3 月底左右能够发布. 届时, POLARDB 也会登陆阿里云国际官网, 开始为国外用户提供服务. 还有, 对于心仪 PostgreSQL 的用户, 会迎来 POLARDB 兼容 PostgreSQL 版本的公测.
附录 -- POLARDB 产品 release notes
2017 年 9 月 POLARDB 华东 1, 华东 2 Region 公测上线
2018 年 1 月 POLARDB 华北 2 Region 公测上线
2018 年 4 月 POLARDB 正式商用, 支持华东 1, 华东 2, 华北 2 Region 开服
2018 年 5 月 POLARDB 支持全规格售卖, 预付费在线规格变更, 增减只读节点, 日志管理,
2018 年 6 月 POLARDB 支持按量付费
2018 年 7 月 POLARDB 支持自适应读写分离, 支持 DTS 从 RDS 在线迁移到 POLARDB, 支持集群节点重启操作
2018 年 8 月 POLARDB 支持 Snapshot 备份和还原, 按时间点还原
2018 年 9 月 POLARDB 支持华北 5 Region 售卖
2018 年 10 月 POLARDB 支持控制台账号和数据库管理, 云监控告警,
2018 年 11 月 POLARDB 支持 SQL 查询加速, 华南 1 和香港 Region 开服, 支持最高 88c 710g 计算规格
来源: https://yq.aliyun.com/articles/683417