专栏首页数据和云为什么说云数据库是商业的成功、技术的倒退?

为什么说云数据库是商业的成功、技术的倒退?

我们在越来越多的会议、媒体、文章、报道上看到一种说法:“未来的数据库是云数据库的时代,云数据库厂商终将取代传统数据库厂商”。首先我并不否认这种说法,但是云数据库是否真的推进了数据库技术的进步有待商榷。本文我想谈谈自己的一点看法。

商业的成功

近几年我们发现以亚马逊aws、微软azure、阿里云polardb等为主导的云数据库突然兴起,迅速占领了市场,慢慢蚕食着以db2、oracle为首的传统数据库厂商的市场份额,虽然oracle公司也从oracle 12c版本开始朝着云化的方向发展,但是鉴于oracle架构的复杂性,这条路一直走的比较艰难,成效并不显著。

在2019年的Gartner全球数据库魔力象限评选中,AWS、微软、阿里云、谷歌云都出现在了这个榜单中,而且微软云和亚马逊azure已经紧逼传统巨头oracle,在领导者象限齐头并进。同时阿里云已经连续两年入选数据库魔力象限,2019年还首次入选挑战者象限,距离领导者象限只有一步之遥。随着阿里云、谷歌等云厂商强势上升,IBM、SAP则出现了明显下滑,IBM从领导者象限滑首次落至远见者象限。

下面这张图Gartner的报告,显示了2018年全球数据库厂商份额对比。我们可以很清晰地看到云数据库厂商呈现爆发式的增长,而且上涨势头不止。

Gartner的数据显示,2018年,数据库云服务已经为整个数据库市场贡献了104亿美元,整个市场是460亿美元,这其中不包括托管licence。同时整个数据库市场的增长接近70%来自于云数据库的增长。

技术的倒退


我本身是一个做技术的,不是研究市场的。所以我深知数据库作为基础软件设施上的“明珠”,技术门槛之高常人无法想象。

1977年IBM完成system R系统原型设计,后来DB2数据库于1983年推出,成为关系型数据库的开拓者;1977年拉里埃里森创办oracle公司,同时于1979年推出oracle数据库;postgresql始于1986年,最初由伯克利的postgres软件扩展而来。还有infomix、mysql、sql server、sybase等数据库其实都是经过几十年的漫长发展。

DB2、oracle作为传统数据库厂商的代表,经过这么多年的发展,其实给数据库领域的研发带来非常高的门槛,如果从头开始设计一款数据库难度非常大,首先从最底层的模块:sql引擎、数据库对象、存储引擎、事务管理、缓冲区设计、内存设计、锁管理等等都是难度非常大,而且要把这些模块整合起来成为一个完备的数据库系统更是难上加难,所以新型厂商如果想从头做一套新的数据库几乎很难实现。

那么这些新型数据库厂商是如何实现弯道超车的呢?答案其实是:“概念+整合”。

“概念”其实就是数据库“云”的概念,其实我一直觉得数据库是一个不适合云化的东西,云其实有两层概念,代表着云化的两条路,一是云厂商根据客户资源需求提供基础设施和软硬件,类似公有云,适合个人客户或者体量不大的客户;另外一种是大企业由于数据的重要性需要将云搬到自己的数据中心,或者自己建云,这里的云可以是实现一套管理平台,将所有数据库管理起来,实现资源的自助申请、自动部署、自动交付。

“整合”说的是云厂商并不自己研发底层的数据库内核,或者研发出一套新的数据库,而是将现有的开源数据库进行整合,云厂商的研发重点在于如何将这些开源数据库整合起来,实现统一管理,形成自己的一套大的云数据库,在用户角度来看,用户不知道或者不关心底层是什么数据库,用户只需要给云厂商提出cpu,内存,容量等需求,云厂商那边实现了IaaS,PaaS,自动的数据库实例创建,交付给用户,数据库维护、数据备份等维护类工作由厂商完成。所以说云厂商其实是看到了市场的机会,个人客户和小公司其实占据绝大多数,他们是没有能力或者必要去购买高额的licence,反而选择云厂商是一个很好的选择,同时还节省了很大部分维护费用。

那么我为什么说数据库云是技术的倒退呢。抛开市场不说,单看技术,数据库云其实就是实现了一套数据库管理平台,不管是公有云还是私有云,最终技术的研发都还是在围绕着如何更高效地交付、管理用户的数据库。其实底层真正能称为数据库的那部分内核是没有改动的或者改动很小的。

现在的云厂商底层数据库几乎都是mysql或者postgresql,将它们进行整合,提供兼容mysql或者postgresql的服务。当然不否认很多厂商做了很多技术创新,比如说存储计算分离,计算层的mysql或者pg可以无限扩展,存储层共享,同时使用rdma进行计算层和存储层的互联,实现高速访问,还有一些针对mysql做了优化,比如基于redo的物理复制,使用全局内存取代log shipping提供一致性读等。这些功能虽然也触碰到了数据库的内核,但是也只是很小的一部分,而且说到底只是为了使云上更高效而做的创新,还是向市场看齐的。

我们想象一下,如果这些云厂商未来真的取代了db2、oracle这类公司,到底是好事还是坏事呢?Db2、oracle是从最底层的数据库模型的设计一步一步走过来的,这些技术门槛非常高,这些东西才是数据库的根基,如果根基都没了,“云”只是一团空气。

数据和云

ID:OraNews

本文分享自微信公众号 - 数据和云(OraNews)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-01-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 细数那些你可能不知道的国产数据库

    在之前中秋团圆之时,我们曾经绘制了一幅数据库的团圆照,这幅图中包含了多少种数据库,您现在数的清吗?图中又有多少国产数据库?

    数据和云
  • (文中有惊喜)走进云时代的数据库

    最近几年,随着云计算相关技术的发展,各种不同类型的云层出不穷,服务越来越多不同类型的企业业务,传统企业也渐渐开始探索上云的道路。在云上,作为业务最核心的数据库,...

    数据和云
  • 2019年开源数据库报告发布:MySQL仍卫冕!

    墨墨导读:3月初,ScaleGrid发布了数据库趋势报告:SQL打败NoSQL,MySQL最受欢迎。

    数据和云
  • Oracle 客户端、服务器、数据库、数据库对象(表、视图等)的关系

    1、数据库服务器 所谓数据库服务器,只是在机器上安装了一个数据库管理软件,这个软件可以管理多个数据库.一般开发人员会针对每一个应用创建一个数据库 2、单实例数据...

    郑小超.
  • 数据库设计的10个最佳实践

    数据库是应用及计算机的核心元素,负责存储运行软件应用所需的一切重要数据。为了保障应用正常运行,总有一个甚至多个数据库在默默运作。我们可以把数据库视为信息仓库,以...

    AI科技大本营
  • PostgreSQL 参与某沙龙的演讲稿与回顾

    Hello 我是Austin,目前在从事数据库架构与数据库管理方面的工作,目前也在维护一个公众号,进行数据库知识的分享和讨论。今天会和大家来分享数据库选型方面的...

    AustinDatabases
  • 云时代的dba你准备好了么?

    云时代的大背景下,传统的商业数据库各厂商都开始转向云服务,传统的dba也开始面临各种挑战。

    TeacherWhat
  • Python数据库操作 mysql数据库介绍#学习猿地

    > 专业的数据库是专门对数据进行创建,访问,管理,搜索等操作的软件,比起我们自己用文件读写的方式对象数据进行管理更加的方便,快速,安全

    学习猿地
  • Python数据库操作 mysql数据库介绍#学习猿地

      > 专业的数据库是专门对数据进行创建,访问,管理,搜索等操作的软件,比起我们自己用文件读写的方式对象数据进行管理更加的方便,快速,安全

    学习猿地
  • 全国计算机等级考试三级数据库技术 考试大纲(2018版)

     7. 熟悉常用的数据库管理和开发工具,具备用指定的工具管理和开发简单数据库应用系统 的能力。 

    KEVINGUO_CN

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动