云时代的DBA,何去何从?

 

据统计,微软市场份额已然超过了Oracle。然后呢?...





本文根据〖2016 全球运维大会•深圳站〗现场演讲嘉宾盖国强分享内容整理而成。

欢迎关注“高效运维(微信ID:greatops)”公众号,以抢先赏阅干货满满的各种原创文章。

讲师简介

盖国强

中国地区首位Oracle ACE和ACE总监,中国地区最著名的Oracle技术推广者之一,他的专著《深入解析Oracle》、《循序渐进Oracle》等书籍受到Oracle技术爱好者的广泛好评。

2010年,与Oracle ACE总监张乐奕先生共同创立ACOUG(中国Oracle用户组),持续推动Oracle技术圈的地面活动和技术交流。



导言

盖国强:感谢大家,今天我来跟大家分享一个主题《Oracle数据库的DevOps实践》。听了那么多开源的、开放的产品,我非常高兴能够在这里跟大家讲讲Oracle。

自我介绍



首先请允许我做一点简短的自我介绍。我的职业生涯差不多可以概括为两个阶段,用今天的语言来讲就是:O2O,从线上到线下。

我的前半段技术生涯基本上是在线上完成的,从大学毕业开始,我就有幸参与到ITPUB论坛的建设中,最终成为其中主要的成员之一,ITPUB论坛聚集和培养了那个时代一大批数据库人才。

因为我在社区上的一些努力,获得了Oracle的一个荣誉称号,叫Oracle  ACE和Oracle  ACED。

Oracle  ACED这个称号至今也是比较少的,在国内Oracle用了十年时间一共发展了十位左右,我是当时的第一位。

我的第二段职业生涯在线下,我们汇聚了在线上结识的技术专家,成立了一家公司,在国内提供数据库方面的咨询和服务。

今天首先我来跟大家分享一下,在开源领域蓬勃发展、国内谈了那么多年去IOE之后,Oracle这家公司在做什么,这个数据库领域正在发生一些什么事儿,以及关于云时代背景下,DBA的一些探讨。

Oracle2015:All  About  Cloud



我首先引用一页PPT,这是Oracle的创始人Larry Ellison 去年在Oracle的全球大会上最后用的一页PPT。

大家看到,他在讲Oracle的2015年是在云上进行革新的一年,Larry 分别指出Oracle在IaaS、PaaS、SaaS这三层分别在做什么。

我列出三个关键字可以看出Oracle对于云的理解。

  1. 在IaaS层,Oracle最关心的是安全,只有保证安全,才能让用户放心的采用公有云。
  2. 在PaaS层,Larry Ellison强调的是Easy  Migration。Oracle认为未来是混合云的时代,那么云应该支持非常方便的迁移,用户可以快速地上到公有云,也可以快速地回到企业私有云环境。
  3. 在SaaS层,Oracle关注的是如何去做一个全栈集成的SaaS软件服务

唯有安全、便捷、集成的云,才是完整的、可以让用户信赖的云环境

这可以看做Larry Ellsion 对 Oracle 2015年的总结,在他整个演讲中,只用了很少篇幅谈Oracle数据库,最核心的只有云。



在2014年同样最后的一页总结的PPT,大家可以看到和 2015 年所列的总结几乎完全相同,Larry 同样是在谈这一年中在云上做了很多革新,从IaaS、到PaaS、SaaS全面在进行转变。

所以,基本上你可以看出Oracle这家公司在今天云的时代,它全力以赴在做的一件事情就是把所有的产品和服务转移到云上来。

Cloud:改变数据库领域竞争格局



为什么在数据库领域占据领导地位的Oracle公司,这么全力以赴的去做这样的转型?

我引用Gartner去年的一个分析报告,在数据库领域有一个史无前例的形态出现了:

大家看到,在数据库的领导者象限中,微软第一次超过了Oracle,这还不是最重要的,最重要的是在Oracle之后还有另外一家厂商AWS出现了。

这个局面是前有狼,后有虎,Oracle首次在Gartner的分析报告中处于这样的一种局面。

为什么会有这样的一种局面出现?这份报告中有一些陈述:

  1. 微软在云上的投入和在云上的远景,使它超越了竞争对手,获得了分析师和客户的认可。
  2. 对于AWS来说,它在公有云的IaaS上获得了公认的成功,依托IaaS服务,AWS在云上提供的RDS服务包括自有的NoSql数据库服务,使得这个从来不在这个领域的玩家在这里出现了。
当然,大家已经看到,有很多变化在快速发生,包括前一段时间微软宣布它的SQL Server居然要支持Linux系统了。

这个世界变化很快,在云上你很难预测明天会发生什么

在这里我想跟大家分享的是:云技术改变了数据库领领域的竞争格局。如果未来大家都是通过SaaS去使用一项服务的时候,其实很少会有用户关注SaaS后端运行的数据库是什么,这对Oracle来说是最严重的威胁

Oracle全堆栈:不断的革新,走进云时代

Oracle在云上的努力

Oracle在全球已经建立了19个数据中心提供公有云服务,去年和腾讯达成战略合作,要在中国落地全球第20个数据中心。

虽然我们不知道今天的进展是怎样的,但是如果这个合作能够成功的话,它在中国公有云市场将占有重要的一席之地。

Oracle这家厂商是在IOE这些传统厂商中非常独特的一家,可以说它拥有与众不同的竞争力。

今天它来构建公有云的时候,从IaaS,它自己能够生产从CPU到主机的所有硬件,在PaaS层,不仅有数据库、中间件,还有Java,再看 SaaS 层,Oracle同样有大量的企业级软件。

所以,从我的观点来看,在新的时代里,Oracle可能是传统的IOE厂商中唯一的一家有机会在原有道路上重新崛起的厂商。

虽然大家今天在热议各种各样的开源产品、分布式架构,但是Oracle的影响力仍然在,创新力仍然在



Oracle已经做到了什么?

来自于官方的数据,Oracle说每天已经有7000多万人在使用Oracle的公有云服务,有500多个Oracle的SaaS产品在公有云上运行。

当然前面还提到,今天Oracle在全球建立了20家数据中心提供公有云的服务。这是它一系列的努力所达到的成果。

Cloud  DBA:自后向前置的运维转变



云产生了这么巨大的影响,也必然影响到我们。大家可能多数都是做运维的,有一些朋友是做DBA的,那么:

在云时代,运维和DBA会向哪个方向去走?

这个图想必大家都看过了,这是Gartner的一个分析报告,在技术成熟度曲线上可以看到,今天最火热的就是DevOps,现在大家都已经在谈DevOps各种形态的落地和实现。

DevOps:开发和运维磕磕碰碰



什么叫DevOps?

我用我的视角来阐述了一下,在很多领域里面或者在大家的很多实践里,开发和运维一直存在着磕磕碰碰的现状:

程序员说“我们的代码写完了,现在问题是你的了!”夸张一点的一个『手榴弹』扔了过来。

这些代码在你接在手里会不会炸?肯定会!!!但是你可能不知道在什么时间、什么情形下。

运维人员是用职业生涯在趟雷救火。大家想一想,这样的情况是否真实存在?

DevOps:从全局视角看运维



在DevOps的时代,是大家对于一件事情的整体理解发生了改变

传统的形态下,开发人员认为老板给钱,就是让我快速迭代开发一个软件,实现一个功能。

运维的使命是说,我的职责是为了让系统更稳定,减少不确定性变更。

这两者天然存在着矛盾和对立,尤其是在开发一贯的加班加点赶工的情况下,缺少文档、缺乏完备测试,比如不断将不稳定性引入线上。

但是今天我们看到,大家最终认识到必须把我们的目标统一在企业的共同目标之下:

大家如何让一个系统变得更稳定、为用户提供更好的服务,这才是根本的目标。

只有企业目标实现了,这两伙人的目标才能最终实现。

所以,我们认为DevOps更重要的是让大家树立一个全局的观点,从全局的观点去看运维

以前我们国家有一个成语叫盲人摸象,如果每个人都只是从自己的角度看一小块内容的时候,这时候很多看法难免是矛盾和对立的。

运维抓到的是尾巴以为程序很单薄,而程序员认为手里是稳健的柱子。



我引用了一页老王的PPT,我觉得非常有意思,和我刚才所传达的思想也是一致的。

传统情况下,我们看到运维如果着眼在生产环境的稳定性上,和开发的关系难免是矛盾甚至是对立的,双方在墙的两面互相用力,这就总是对立的。

那么,如何改变这种问题呢?

我觉得老王概括得非常好,他说有两点:

  1. 拆墙。要把中间的隔阂拆掉,让互相的反作用力变成循环的推动力。
  2. 换舞台。把这个基础环掉,换成如何实现商业和用户的价值。
所以,跟我前面简单的描述是非常接近的,大家要把目标统一到为商业和用户价值去服务,这样可以从全局的角度去改变很多事儿。

云带来的数据库运维改变

落地到Oracle数据库的角度来说,大家都在谈DevOps。

DevOps在Oracle的领域中将来会是一件什么样的事情?

首先我们来看一下在传统的数据库运维中,尤其是在Oracle的数据库运维中我们面临的是一些什么样的问题?



这是一份来自于内部的统计数据,代表DBA在运维Oracle时的问题分布

我们看看上一个时代运维人员最大的困扰之处,或许你会惊讶的看到,作为一个DBA,面临一个最主要的问题居然是安装

今天在社群里的讨论,也会经常看到很多人装Oracle装不上,出现各式各样的错误,你可能很难想象,一个有着40年历史的领导者软件,在用户安装的时候还会遇到大量的问题。

你可能也会知道,成功安装一套RAC集群环境,一直被认为是一个高端技能。

从问题分布来看跟安装相关的还有:平台的认证相关、OSD相关的问题。除此之外还有其他跟管理相关、跟Performance等相关,有这样一系列的分布。

所以,如果说未来在DBA领域会发生什么样的变化,其实一目了然,我们认为中间一系列的问题将来在云上会被消灭掉,这也是以前在传统的运维模式上最大的困扰。

如何去部署环境,简单的例如:如何安装一套单机数据库;复杂的,例如:如何安装部署一套RAC集群,然后你要再为它搭一套DG作为灾备,这些工作就很复杂。

但是这一系列的问题我们相信将来在云上带来的变革,几乎完全会被替代掉。进一步,跟数据库管理层相关的,我相信至少有一半的传统工作会被消灭掉。

但是这里面唯有极小的一部分工作,可能那20%的问题将来要花80%的精力去解决,就是跟Performance相关的,这3%跟性能相关的任务我们未来要集中去面对和解决。



在传统的运维领域或者服务领域,尤其是在Oracle领域,我们的DBA是怎么划分他们的工作的?大家在做什么?

长期以来,大家在这个领域里有两类称谓,一类是运维DBA,这是偏后端的,跟数据库的安装、部署、调网络、调主机、调存储、做备份等等这一类事情;

另外一类被称为产品DBA,有时候也被称为开发DBA,它通常是靠前端的,可能跟业务更熟,跟交易流程更熟,跟数据模型更熟,通常要跟开发甚至架构、业务在一起工作的。

在我们的视野里,将来运维DBA这部分需求量会被大大减少或者集中化,集中到云的提供商那里;或者说集中在某一些第三方的服务商里为云提供服务。

所以,这是我们在最近几年就会面临的一些非常重要的变化和改变。

说明:本文为盖国强先生本次演讲的前半部分。如您喜欢,请转发,以鼓励我们发出来后半部分。谢谢


    关注 高效运维


微信扫一扫关注公众号

0 个评论

要回复文章请先登录注册