一键迁移MySQL/Oracle上云 是云原生数据库对传统厂商的致命一击
正如甲骨文 (Oracle) 的现状一样,数据库上云与其说大势所趋,不如说是时刻以用户为中心的理念促成了这一改变。
过去二十年,传统数据库几乎垄断市场,数据显示到 2017 年数据库总市场规模达 368 亿美元,传统数据库一度拥有超过 80% 的市场份额。但最近几年,曾经风靡业界的此类数据库市场份额逐年下降,根据第三方机构显示,到 2021 年,该数据库市场还会下降 20% 至 30%。研究机构 Gartner 预计到 2023 年,将会有 75% 的数据库迁移到云上。
在前不久结束的中国数据库峰会上,有位参会的工程师对我说我们公司还在用传统数据库,这让他感觉到与时代格格不入。
实际上,只要是明眼人都能看出来,使用云数据库不管在何种方面都远胜于以甲骨文为代表的传统型数据库,不管是企业最为看重的安全性,还是最为敏感的价格,可扩展性的魅力再加上强大性能的护航,让每个体验过云数据库的用户都会说「真香」。
不过,数据库上云现在也不再是新闻,追求更先进技术的已经迈入了云原生数据库的时代。
从云数据库到云原生数据库
云原生数据库汇聚了诸多优势:天然拥有云计算的弹性能力,兼具开源数据库的易用、开放特点,以及传统数据库的管理和处理性能等优势,是新业务上云的最佳选择。
与此同时,他们也具备替换传统数据库的成功经验。早在 2013 年,淘宝核心系统的最后一台甲骨文数据库下线。亚马逊则公开表示,到 2020 年将彻底抛弃甲骨文数据库。毫无疑问,他们可以将自己的经验再转换为云上技术对外输出。
2014 年, AWS 发布了业内首个云原生数据库 Aurora;2017 年 9 月,阿里云在国内率先发布了云原生数据库 PolarDB,并于 2018 年 4 月正式商用。PolarDB 采用存储计算分离、软硬件一体化设计,通过高速的RDMA网络提供共享存储的架构,可以快速实现弹性缩扩容,满足大规模业务场景的需求;并且集成了智能化技术,具备自感知、自决策、自恢复、自优化四大能力。
企业新业务上云并非难事,但原有数据库的迁移却有可能成为第一块绊脚石。举例来说,企业搭建的传统商业数据库通常承载了 ERP、CRM、OA 等一系列系统,而数据模型也是基于老系统开发,如果没有与之兼容的云数据库,上云几乎要重写代码。
据介绍,阿里云此次发布的 PolarDB 提供一键迁移功能,可以帮助企业将线下的 MySQL、PostgreSQL 和 Oracle 等数据库轻松上云,最快数小时内迁移完成。据估算,云上成本不到传统数据库的 1/6。目前,已有约 40 万个数据库迁移到阿里云上。
「一键迁移」功能无疑是云原生数据库向传统数据库的最致命一击,它将加速这种趋势的发展,并真正地解决了企业在数据库上云时的所有问题和疑虑,也让企业决策者很难再有理由拒绝这种趋势。
技术突破
阿里云方面表示,该产品实现了两大技术突破:通过自研超低延迟文件系统 PolarFS 大幅降低数据跨网络的延迟,并且开发了一种全新的共识协议 ParallelRaft,提升系统吞吐量。在此之前,PolarFS 的研究成果已发表在数据库顶级会议 VLDB 2018 《PolarFS: An Ultra-low Latency and Failure Resilient Distributed File System for Shared Storage Cloud Database》。
为了实现分布式海量存储,同时又避免跨节点访问高延迟的问题,PolarDB 自研文件系统 PolarFS 创新性的引入「操作系统旁路(OS bypass)」、「零拷贝(zero-copy)」技术,实现分布式访问具备本地访问相同的性能,数据处理在用户空间完成,避免传统文件系统从内核空间至用户空间的消息传递开销,充分发挥 PolarDB 环境的新硬件能力。
高性能、数据一致性是数据库最重要的功能。在 RAFT 协议的基础上,PolarDB 开发了一种全新的共识协议 ParallelRaft,在保障数据一致性的前提下,提升了 PolarFS 并行写入性能,在高负载情况下,平均延迟缩短一半,系统吞吐量翻倍。
另外,阿里云的数据库和应用迁移 (Advanced Database & Application Migration,简称ADAM) 产品,是一款把数据库和应用迁移到阿里云(公共云或专有云)的产品,显著地降低了上云的技术难度和成本,尤其是Oracle数据库应用。产品覆盖数据库迁移的全生命周期(包括:评估(兼容性、关联关系、性能、风险点)、转换(转换不兼容点、引擎特征优化转换)、结构迁移、数据迁移、一致性校验、SQL仿真回放、割接、优化。),ADAM 可以将 Oracle 的迁移成本和周期缩短到原来的 1/10 甚至更低。同时支持改造迁移方案,结合云端丰富的数据平台产品特性以及用户业务特性给出数据库和应用改造方案。