热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

抬头看天,低头看路,五一看人:云时代的DBA,何去何从?

本文根据〖2016全球运维大会•深圳站〗现场演讲分享内容整理而成。感谢“高效运

编辑手记:本文根据〖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这部分需求量会被大大减少或者集中化,集中到云的提供商那里;或者说集中在某一些第三方的服务商里为云提供服务。

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

说明:本文为盖国强先生本次演讲的前半部分。后半部分在整理之中。

如何加入"云和恩墨大讲堂"微信群

搜索 盖国强(Eygle)微信号:eeygle,或者扫描下面二维码,备注:云和恩墨大讲堂,即可入群。每周与千人共享免费技术分享,与讲师在线讨论。

近期文章

诗和远方:云和恩墨大讲堂期刊第四期

删繁就简-云和恩墨的一道面试题解析

用SQL解一道数学题:Gauss和Poincare

2015 Oracle 十大热门文章精选

Oracle 12c ASM 防火防盗新特性揭秘

DBA入门之路:学习与进阶之经验谈

资源下载

关注本微信(OraNews)回复关键字获取

2016YHEMSZ ,云和恩墨大讲堂深圳交流会;

2016GOPSZ,2016深圳全球运维大会PPT;

DBALife,"DBA的一天"精品海报大图;

12cArch,“Oracle 12c体系结构”精品海报;

DBA01,《Oracle DBA手记》第一本下载;

YunHe“云和恩墨大讲堂”案例文档下载;




推荐阅读
  • 为何Serverless将成为未来十年的主导技术领域?
    为何Serverless将成为未来十年的主导技术领域? ... [详细]
  • MongoDB核心概念详解
    本文介绍了NoSQL数据库的概念及其应用场景,重点解析了MongoDB的基本特性、数据结构以及常用操作。MongoDB是一个高性能、高可用且易于扩展的文档数据库系统。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • NoSQL数据库,即非关系型数据库,有时也被称作Not Only SQL,是一种区别于传统关系型数据库的管理系统。这类数据库设计用于处理大规模、高并发的数据存储与查询需求,特别适用于需要快速读写大量非结构化或半结构化数据的应用场景。NoSQL数据库通过牺牲部分一致性来换取更高的可扩展性和性能,支持分布式部署,能够有效应对互联网时代的海量数据挑战。 ... [详细]
  • RocketMQ在秒杀时的应用
    目录一、RocketMQ是什么二、broker和nameserver2.1Broker2.2NameServer三、MQ在秒杀场景下的应用3.1利用MQ进行异步操作3. ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • 基于iSCSI的SQL Server 2012群集测试(一)SQL群集安装
    一、测试需求介绍与准备公司计划服务器迁移过程计划同时上线SQLServer2012,引入SQLServer2012群集提高高可用性,需要对SQLServ ... [详细]
  • 在当今的软件开发领域,分布式技术已成为程序员不可或缺的核心技能之一,尤其在面试中更是考察的重点。无论是小微企业还是大型企业,掌握分布式技术对于提升工作效率和解决实际问题都至关重要。本周的Java架构师实战训练营中,我们深入探讨了Kafka这一高效的分布式消息系统,它不仅支持发布订阅模式,还能在高并发场景下保持高性能和高可靠性。通过实际案例和代码演练,学员们对Kafka的应用有了更加深刻的理解。 ... [详细]
  • 2021年Java开发实战:当前时间戳转换方法详解与实用网址推荐
    在当前的就业市场中,金九银十过后,金三银四也即将到来。本文将分享一些实用的面试技巧和题目,特别是针对正在寻找新工作机会的Java开发者。作者在准备字节跳动的面试过程中积累了丰富的经验,并成功获得了Offer。文中详细介绍了如何将当前时间戳进行转换的方法,并推荐了一些实用的在线资源,帮助读者更好地应对技术面试。 ... [详细]
  • 提升Android开发效率:Clean Code的最佳实践与应用
    在Android开发中,提高代码质量和开发效率是至关重要的。本文介绍了如何通过Clean Code的最佳实践来优化Android应用的开发流程。以SQLite数据库操作为例,详细探讨了如何编写高效、可维护的SQL查询语句,并将其结果封装为Java对象。通过遵循这些最佳实践,开发者可以显著提升代码的可读性和可维护性,从而加快开发速度并减少错误。 ... [详细]
  • Spring Boot与Redis的高效集成方案
    本文探讨了Spring Boot与Redis的高效集成方法,详细介绍了如何在Spring Boot项目中配置和使用Redis,以提升应用性能和数据处理能力。同时,文章还涉及了Go语言社区的相关资源,为Golang开发者提供了宝贵的技术交流平台。 ... [详细]
  • 本文将深入探讨MySQL与MongoDB在游戏账户服务中的应用特点及优劣。通过对比这两种数据库的性能、扩展性和数据一致性,结合实际案例,帮助开发者更好地选择适合游戏账户服务的数据库方案。同时,文章还将介绍如何利用Erlang语言进行高效的游戏服务器开发,提升系统的稳定性和并发处理能力。 ... [详细]
  • nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
author-avatar
1500799277_a9483d_353
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有