第五十九期:商用数据库之死:Oracle 面临困境

  作者:John Freeman、Fred McClimans 和 Zach Mitchell

  我们预计到 2021 年,年产值 296 亿美元的商业数据库市场会收缩 20% 至 30%,认为 Oracle 无法让收入来源足够快地实现转型(从传统的商业数据库转向基于云的订购产品),以抵消这个市场下滑的颓势,这个市场是 Oracle 收入的一大传统核心。

  这二十年来,商业数据库市场仍然是 IT 行业最稳定、最具黏性的领域之一,Oracle、IBM 和微软三家厂商瓜分了 80% 的份额。然而,我们认为这个领域衰退的速度和幅度可能会让许多投资者大吃一惊。

  已经影响数据库市场的通货紧缩压力刚刚开始体现,包括:

  • 迁移到软件即服务(SaaS),大多数产品使用免费开源数据库;
  • 社交媒体、物联网和非结构化/半结构化数据等使用场合迎来更快速的增长,这些使用场合不适合 SQL 标准,而数据库寡头们恰恰有赖于这项标准;
  • 众多的免费开放源代码选项日益稳定、功能日益强大,其中大多数选项是“Not Only SQL”(NoSQL),因此极其适合上述使用场合;以及
  • 由于摩尔定律带来了处理器、内存、固态存储和网络吞吐量等方面的改进,NoSQL 数据库继续获得异常显著的好处――这些改进提升了同时快速处理 NoSQL 使用场合和 SQL 使用场合的能力,并逐渐使纯 SQL 数据库沦为边缘化,正如纯 SQL 数据库在 80 年代末和 90 年代使基于大型机的数据库沦为边缘化。)

  来自数据库软件的收入占 Oracle 2016 财年总收入的约 36%,占其营业利润的约 55%。

  注意:数据库软件和内部部署型应用软件包括许可证收入和维护收入。

  该公司预计的数据库收入下降是明摆着的,此外其内部部署型应用软件的收入也在下降,这块收入占 2016 财年总收入的约 25%,占营业利润的约 39%。

  微软和 IBM 将只是略微受到伤害,因为数据库软件只占每家厂商总收入的区区5% 左右。

  如果不采取积极的行动来大幅提高非数据库收入,我们认为 Oracle 无法足够快地抵消商业数据库收入即将下降的颓势,以保持其目前的市值。

  具体来说,我们认为 Oracle 需要实行更激进、更快速的组织转型和文化转型,变成一家“云优先”的企业,激励销售队伍和客户向云积极迈进。该公司还需要整合各种自家开发和收购而来的云/ SaaS 产品,整合到单个平台,以便将来获得经营杠杆效应。未来几年,这些项目会在几个方面带来痛苦,尤其是财务方面。为了部分抵消痛苦,Oracle 应该剥离剩余的硬件及其他非核心业务。

  主题说明  

  对于那些对技术深究更有兴趣的人来说,下面从历史的角度更深入地解释了五个相互关联的趋势,这些趋势愈演愈烈,将共同导致商业数据库市场到 2021 年收缩 20% 至 30%。

  企业继续迁移到 SaaS/云

  除了几款建立在 Oracle 数据库基础上的初期 SaaS 产品(即 Salesforce.com、NetSuite 和 Oracle 本身)外,很难找到使用任何商业数据库的 SaaS 提供商。对于 2005 年以后创办的公司而言,这个数字几乎为零。

  如今绝大多数的 SaaS 提供商使用开源数据库,或者像 SaaS 人力资本管理(HCM)提供商 Workday 那样,开发自己的数据库。许多用户之前使用内部部署型企业应用软件,包括五个核心客户端/服务器应用软件类别中的一个:ERP(企业资源规划)、CRM(客户关系管理)、HCM(人力资本管理)、SCM(供应链管理)和 BI(商业智能)应用软件,改用 SaaS 模式后,消除了商业数据库席位(seat),因而消除了原本带来的维护/支持收入和未来升级收入。连改用 Salesforce.com 的企业席位给 Oracle 创造的收入也将比当初部署在企业内部环境时少得多。

  因此,我们认为企业迁移到 SaaS/云对商业数据库收入而言是非常不利的趋势。此外,我们仍处在从客户端/服务器到 SaaS/云的早期阶段。据不同的研究公司声称,这种迁移只完成了 10% 至 25%,只是刚刚开始影响更重要的关键任务应用软件(比如 ERP),它们更有可能在更高端的 SQL 数据库(包括 Oracle 和 IBM 的那些数据库以及微软的一小部分数据库)上运行。 

  商业 SQL 数据库不是很适合处理最有吸引力的新兴使用场景

  SQL 在 1987 年成为标准后,20 年来它在定义如何组织、搜索和排序数据方面的地位无可撼动。然而,到 2000 年年中,各大科技公司在处理数据的绝对数量和不同结构方面开始遇到了 SQL 数据库存在的限制,它们想按照需要来保留、浏览、分析数据,并将数据提供给用户/客户。

  亚马逊、谷歌、LinkedIn 和 Facebook 各自通过开发和实施自己的数据库软件――这种数据库软件打破了 SQL 标准的制约,解决了自己的扩展问题。

  此外,不久后每家公司都发布了开源版本的数据库。因此,2008 年和 2009 年它们开发出了众多新的开源数据库,导致了《下一代数据库》的作者盖伊·哈里逊(Guy Harrison)所说的“某种寒武纪大爆炸”现象。由于纷纷远离 SQL,这些数据库都属于“NoSQL”这类数据库――尽管大多数数据库彼此大不相同,就像它们跟 SQL 大不相同那样。

  鉴于数据的数量和种类迅猛增长――这归因于更丰富的社交媒体内容、更多的社交媒体用户以及自动获取的物联网数据激剧增多,另外鉴于企业日益渴望分析获取的数据,我们认为,适合 NoSQL 的使用场合其数量很快就会远远超过适合 SQL 的使用场合。

  这些新型使用场合的兴起将推动大企业更多地采用开源 NoSQL 解决方案,结果商业 SQL 数据库成了牺牲品。

  NoSQL 数据库和读时模式(Schema-on-Read)方法遵循摩尔定律

  SQL 数据库和写时模式(Schema-on-Write)未遵循摩尔定律。通常来说,NoSQL 数据库所需的处理器、内存和存储资源比 SQL 数据库密集得多,即使考虑到这一事实:它们放松了 SQL 在数据组织方式方面的许多约束。虽然 NoSQL 数据库架构早在 2005 年就已经存在――至少从理论上来说是这样,但当时根本没有足够的处理能力、内存容量和存储空间,好让它们在学术界之外的领域投入实际应用。

  在处理器/内存/带宽资源相对匮乏的 20 世纪 80 年代和 90 年代,遵守更加严格的 SQL 标准实际上是必须的,那样才能确保企业将应用软件从大型机和小型计算机迁移到更加分布式、依赖网络的客户端/服务器架构所需要的那种性能和可靠性,尤其是那些更重要的关键任务应用软件。

  获得 SQL 尚可接受的性能和可靠性需要付出代价,这主要是由于:

  • 名为模式的数据结构整体上缺乏灵活性;
  • 在部署数据库及相关应用程序之前定义该结构带来的繁重要求;
  • 随着时间的推移,很难改变该结构,以便获取不同类型的数据,以便更好地体现数据结构和企业组织方面的变化;以及
  • 需要写时模式方法,即在输入数据时让数据适合模式,而不是读时模式,只是将数据倒到一只大大的“容器”中,之后将它组织到模式中。

  然而,随着时间的推移,摩尔定律促使处理能力、内存容量及速度、存储容量及速度以及网络吞吐量都得到了提升,这使得用户越来越不需要僵硬的 SQL 标准和写时模式方法,这股势头只会延续下去。因此,伴随着每个摩尔定律周期,SQL 及其节省资源的写时模式方法越来越失去竞争优势,而 NoSQL 及其资源相对低效,但极其灵活的读时模式方法变得日益摆脱当初阻碍它得到采用的约束。

  内存技术(In-Memory)带来了大好前景,消除了传统硬盘的缺点

  SQL 成为标准化时,传统硬盘(HDD)是可以实时访问的唯一具有成本效益的存储介质。因此,写入到 SQL 数据库软件的许多基本代码旨在忍受 HDD 的缺点,比如读取请求的数据并将数据传输到内存中速度很慢,故障率比较高――至少,与系统的主要固态部件(比如 CPU、内存和网络吞吐量)相比是这样。现在由于固态硬盘(SSD)正迅速成为一种具有成本效益的 HDD 替代品,传统 SQL 数据库软件的设计、当然还有大部分代码现在毫无必要了――而当初做出这样的妥协,是为了适应速度慢得多的 HDD。

  相比之下,开发的许多 NoSQL 数据库是为了最大限度地利用 SSD 存储介质,这些数据库可能会得到更新,以便充分利用更新颖的非易失性内存技术,比如英特尔/美光联合开发的 3D xPoint,这种内存正在推向市场。我们认为,鉴于继续遵守 SQL 标准、保持自己的向后兼容性方面有着强烈的需求,SQL 数据库厂商无法像许多开源项目那样迅速针对 SSD 优化其代码,这让它们进一步处于竞争劣势――这是克莱顿·克里斯滕森(Clayton Christensen)所说的“创新者的困境”的一个典型例子。

  市面上 “SQLMethadone” 解决方案越来越多,让企业可以摆脱昂贵的商业数据库

  我们看到越来越多的软件工具和服务旨在帮助企业从商业 SQL 数据库迁移出去。随着时间的推移,连在 Oracle 或 IBM 数据库上运行的最重要的关键任务应用软件也可能日益被包围、“被隔离”、被拆卸,这一幕正如上世纪 90 年代向客户端/服务器架构转型期间许多传统大型机应用软件的遭遇那样。

  虽然来自 Oracle、IBM 和微软等巨头的 SQL 数据库会在一些企业存活好多年――再度酷似大型机,但是它们会日益沦为边缘化,并且它们的成本会尽可能被减少。我们看到许多这样的工具已经在 Hadoop 生态系统里面日趋成熟,该生态系统已经有多种方法可以与 SQL 数据库集成起来,及/或将 SQL 接口和查询功能放在 NoSQL 数据库上。在我们看来,这一幕与上世纪 90 年代初出现将大型机应用软件与 PC 和客户端/服务器应用软件集成起来的多种方法何其相似。


阅读目录(置顶)(长期更新计算机领域知识)https://blog.csdn.net/weixin_43392489/article/details/102380691

阅读目录(置顶)(长期更新计算机领域知识)https://blog.csdn.net/weixin_43392489/article/details/102380882

阅读目录(置顶)(长期科技领域知识)https://blog.csdn.net/weixin_43392489/article/details/102600114

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/424846.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第六十期:华为:希望把VR/AR打造成下个智能手机产业

网易科技讯 10 月 19 日消息,2019 世界 VR 产业大会在江西省南昌市举行。华为轮值董事长郭平发表了《打造 VR/AR 信息高速公路,支撑产业繁荣》的主题演讲。郭平认为,VR/AR 将成为 5G 时代的首批应用,与 5G 产业发展节奏高度匹配并…

【数据结构与算法】字符串匹配 AC自动机

单模式串匹配 BF 算法和 RK 算法 BM 算法和 KMP 算法多模式串匹配算法 Trie 树和 AC 自动机 AC 自动机 AC 自动机实际上就是在 Trie 树之上,加了类似 KMP 的 next 数组,只不过此处的 next 数组是构建在树上罢了。 AC 自动机的构建 将多个模式串构建成…

第六十一期:中国农民花3000块,发明史上最牛输入法!曾火遍中国20年

投递人 itwriter “王旁青头戋(兼)五一,土十二干士寸雨” 如果你还能熟练的背出这段口诀,恭喜你,又暴露年龄了。 倒回到十几年前,在刀哥被老师带到穿鞋套才能进神秘的机房,练习打字的时候,会五笔的人简直是…

第六十二期:腾讯云发布“小程序·云开发十大优秀实践”:猫眼、唯品会等入选

作者:周小白 【TechWeb】10 月 19 日消息,今日,腾讯云首次对外公布了“小程序云开发十大优秀实践”,包括白鹭引擎、千墨科技、腾讯新闻、即速应用、微盟、唯品会、猫眼、香格里拉、微信读书、微信支付等,涉及多个行业。…

[Leetcode][第17题][JAVA][电话号码的字母组合][回溯]

【问题描述】[中等] 【解答思路】 用哈希表/数组存储每个数字对应的所有可能的字母,然后进行回溯操作。 回溯过程中维护一个字符串,表示已有的字母排列(如果未遍历完电话号码的所有数字,则已有的字母排列是不完整的)…

(68)zabbix windows性能计数器使用详解

概述 windows下的性能计数器让zabbix监控更加轻松,直接获取性能计数器的数值即可完成windows监控。性能计数器如下: 1perf_counter["\Processor(0)\Interrupts/sec"]或 1perf_counter["\Processor(0)\Interrupts/sec", 10]获取所有性…

第六十三期:微软与阿里云合作推出“开放应用模型(OAM)”

投递人 itseeker 英文原文:Announcing the Open Application Model (OAM) 原文标题:微软与阿里云合作推出“开放应用模型(OAM)” 用于 Kubernetes 及更多平台的应用开发、运行的开放标准 Kubernetes 已经成为业界领先的容器编排环…

【数据结构与算法】【算法思想】贪心算法

贪心算法 回溯算法 分治算法 动态规划 四种基本的算法思想:贪心算法,分治算法,回溯算法,动态规划,他们不是具体算法,常用来指导我们设计具体的算法和编码等。 一:贪心算法有很多经典应用 霍夫…

第六十四期:微软将不再把 .NET Framework API 移植到 .NET Core 3.0

投递人 itwriter 目前 .NET Core 3.0 拥有的 API 总数约为 .NET Framework API 的 80%,剩下尚未从 .NET Framework 移植到 .NET Core 的 API,微软考虑以开源的形式发布。 微软方面表示,通过 .NET Core 3.0,他们现在已具备轻松移植…

第六十五期:IBM净利润下降38%,旧时代巨头如何自救?

投递人 itwriter 图片来自“123RF” 10 月 17 日,IBM 发布 2019 年第三季度财报,数据显示,其营收为 180.28 亿美元,同比下降 3.9%,其利润为 16.72 亿美元,同比下降约 38%。我们看到 IBM 的营收和利润都呈现…

【数据结构与算法】【算法思想】分治算法

贪心算法 回溯算法 分治算法 动态规划 MapReduce本质就是分治算法,是Google大数据处理的三驾马车之一,另外两个是GFS和Bigtable。它在倒排索引,PageRank计算,网页分析等搜索引擎相关的技术中都有大量的应用。 MapReduce 框架只是…

第六十六期:软件架构之道的一次感悟

张泰峰 6月3日 写在前面 2019悄悄溜走一半,无论是离别的忧愁,还是成长路途的艰辛,都在心中滚烫。 距离上一篇文章已经很久了... 懒惰的博主不能将这一切归结于我的时间、我的规划、我的工作,只能怪自己懒......正所谓学如逆水行…

[Leetcode][第332题][JAVA][重新安排行程][欧拉回路 / 欧拉通路][优先队列][DFS]

【问题描述】[中等] 【解答思路】 递归 复杂度 class Solution {Map<String, PriorityQueue<String>> map new HashMap<String, PriorityQueue<String>>();List<String> itinerary new LinkedList<String>();public List<String&g…

不会配置HTTPS?给我5分钟,手把手教你

本文针对不会配置HTTPS或者小白开发着&#xff0c;请大佬们自动忽略。非广告&#xff0c;心得分享&#xff0c;勿喷&#xff0c;谢谢。 正文开始 01、关于 FreeSSL.cnFreeSSL.cn 是一个免费提供 HTTPS 证书申请、HTTPS 证书管理和 HTTPS 证书到期提醒服务的网站&#xff0c;旨在…

第三十三期:使用wireshark抓包分析-抓包实用技巧

杰哥很忙 7月9日 前言 本文整理一下日常抓包使用的一些方法及抓包分析的一些方法。 本文基于wireshark2.2.6版本进行抓包处理。其他版本使用方式大同小异。 自定义捕获条件 wireshark可以将抓包数据保存到硬盘上。若需要长时间抓包的话&#xff0c;需要防止内存过大&#x…

Floyd判圈算法

leetcode习题287 Find the Duplicate Number 在答案中看到了floyd’s tortoise and hare 算法&#xff0c;知道了如果有限状态机、迭代函数或者链表存在环&#xff0c;那么是需要算法检测环是否存在。检测算法有三种:Floyd龟兔算法、Brent算法、Gosper算法。 Floyd龟兔算法 算…

Idea debug时报错:Command line is too long

问题&#xff1a;git pull下的项目&#xff0c;debug时&#xff0c;报错如下图 解决方法 在项目/.idea/workspace.xml文件中添加一行代码如下 <component name"PropertiesComponent">...<property name"dynamic.classpath" value"true"…

第三十四期:一次非常有意思的sql优化经历

风过无痕的博客 6月24日 场景 我用的数据库是mysql5.6&#xff0c;下面简单的介绍下场景 课程表&#xff1a; create table Course(c_id int PRIMARY KEY,name varchar(10)) 数据100条 学生表: create table Student(id int PRIMARY KEY,name varchar(10)) 数据70000条…

[Leetcode][第657题][JAVA][机器人能否返回原点][数组][HashMap]

【问题描述】[简单] 【解答思路】 遍历方向 看是否回到原点 或者 “上下” “左右”两个方向的数量是否相等 1. 方向 时间复杂度&#xff1a;O(N) 空间复杂度&#xff1a;O(1) class Solution {public boolean judgeCircle(String moves) {int x 0,y 0;int len moves.len…

2019 DDCTF 部分writeup

网上的wp已经很多了&#xff0c;但wp普遍很简略。我尽量写的详细一点。 一、WEB 滴~ 拿到题目后首先右键查看源代码&#xff0c;发现图片是以base64传送的 而且看url发现里面应该是包含了文件名&#xff0c;并且用了某个编码。测试过后是转16进制ascii码后两层bases64 &#xf…