最近,DB-Engines 发布了2018年9月份的全球数据库排名,排名前六的一如既往还是 Oracle、MySQL、Microsoft SQL Server、PostgreSQL、MongoDB 和 DB2。 ![]() 然而,尽管Oracle常年稳居第一宝座,但摆在眼前的事实却是许多科技巨头公司弃用Oracle,纷纷投入排名第二的MySQL的怀中。 亚马逊2020年出彻底移除Oracle数据库 ![]() 据外媒 CNBC 报道,随着亚马逊在数据中心技术方面的崛起,其已将 Oracle 在内的长期供应商列入竞争对手的行列。 现在,亚马逊将再一次打击 Oracle。据知情人士透露,亚马逊已经将其大部分内部基础设施迁移到亚马逊云服务上(AWS),并计划在 2020 年第一季度前彻底移除 Oracle 的专有数据库软件。 这一转变是亚马逊在企业计算领域迅速崛起的另一个迹象,并进一步表明了在企业将工作负载转移到云计算并抛弃传统数据中心时,Oracle 在努力跟上这一趋势。 据知情人士透露,其实早在四五年前,亚马逊就开始移除 Oracle,但是这一项目一直处于保密状态。不过亚马逊的一些核心购物业务仍依赖于 Oracle,整个转移过程大概需要 14 到 20 个月。此外,还有知情人士表示亚马逊考虑移除 Oracle 良久,彼时需要耗费太多人力及精力,且收益不容乐观,所以才会有所拖延。 支付宝的核心交易流量已完全不依赖 Oracle 数据库 ![]() 冯春培 早在2012年,支付宝数据平台负责人、阿里巴巴首席DBA冯春培就指出:淘宝最早用的MYSQL,后来向ORACLE迁移。由于PHP当时在数据库方面的问题,淘宝当时从MYSQL切入到了ORACLE。在这个过程中,由于架构是处于雏形阶段所以,技术能力以及架构能力都是偏弱的。 然而互联网企业的DBA承受的压力非常大,在2004年时开始,数据库经常出问题。后来, 随着业务的发超速发展, ORACLE的优化还是承载不了业务的发展,于是开始拆分。 于是在2006年开始,阿里巴巴便考虑ORACLE和企业之间的联系。当时了解到国内某银行使用服务商的全套产品(硬件+软件)以后,无法替换,因此我们在预测一旦由一家服务商绑定,我们的风险有多大,于是我们准备了向MYSQL的转移。 在“去 IOE (IBM、Oracle、EMC)化”浪潮中,蚂蚁金服也于 2015 年表示,支付宝的核心交易流量已经完全不依赖 Oracle 数据库,100% 由阿里巴巴自主研发的数据库产品。 2017年阿里更是向MySQL分支 MariaDB 投资了 2700 万美,彰显了这家互联网巨头对于数据库领域的野心。 如今为什么越来越多的科技选择弃用Oracle 数据库呢? Oracle、MySQL的区别 其实,Oracle和MySQL都属于Oracle公司旗下的产品,但是最终用户在进行产品选型时,需要对它们进行各种比较,从而选择最合适的产品。同样,从业者在学习数据库技术时,也需要决定学习哪种产品。 ![]() 通过对比,我们不难得出这样一个结论:如果把Oracle比作数据库产品中的贵族,那么MySQL就是一个彻底的草根。 然而令人奇怪的是,MySQL在数据库领域的市场占有率越来越高,相关从业人员的工资也逐年见涨,甚至超过了Oracle从业者。这些现象无疑对新用户以及即将踏入这个领域的从业者造成很大的困惑。 出现现象的原因: 1、投资成本 Oracle产品是以用户数或者CPU数来收费的,购买一套软件的费用是相当高的。另外,Oracle数据库一般运行在小型机上,首选的小型机是IBM的POWER系统,而数据一般需要存储在盘阵这种存储设备上。粗略算下来,仅这样一套软件、硬件的投资就可达100万元人民币左右。在国内,似乎只有大中型企事业单位才负担得起这样的投资。 MySQL更像是植物界的仙人掌,在任何地方都能存活,它对运行环境没有苛求。MySQL数据库一般运行在Linux操作系统中,硬件平台选择普通的PC Server即可,而数据则存储在PC Server的本地硬盘上。假设一台PC Server的售价为3万元人民币,那么100万元足以建成一个豪华阵容的数据库。 ![]() Oracle 联合创始人兼董事长 Larry Ellison 2、数据库性能 如果把Oracle数据库的战斗力比作一只老虎,那么MySQL只能算一头狼,甚至连狼也算不上,充其量是一只胡狼。当MySQL数据库的数据量达到百万行时,数据的访问速度将明显变慢,而Oracle数据库可以不动声色地处理同等数量的访问。 在很多情况下,性能问题是产品选型时需要考虑的首要因素。比如,如果在网上下订单所需要的时候过长,那么电商就会失去大批的粉丝。 ![]() 3、分布式应用环境的部署 为了保证数据库的高可用行、可扩展性,以及用户访问的分开,数据库的结构应该是分布式的。至此,MySQL赢来了彻底翻盘的机会。分布式环境首先意味着更多的硬件投资,单机环境的硬件设备需要克隆多次。小型机的单价远远高于PC Server,所以在投资成本方面,PC Server占尽了优势。试想一下,用户有多少人民币可用来购买一台又一台的小型机和盘阵?相比之下,购买PC Server则容易很多。 另外,Oracle的分布式环境配置很麻烦,而MySQL的分布式环境却很容易配置。现在,MySQL亮出了自己的底牌:利用廉价的硬件设备和免费的软件,很容易地部署分布式环境,通过狼群战术战胜Oracle这只大老虎! 数据库的分布式环境包括集群和数据同步两种。两种数据库产品都有自己的解决方案。 Oracle的集群产品叫做RAC(Real ApplicationCluster),需要单独购买。这是一个非常优秀的集群产品,在一般的数据库应用环境中无人可比。在每个服务器(下图中的Node)中运行一个数据库实例,而数据则位于共享的盘阵上。盘阵采用RAID技术,可有效防止硬盘损坏,从而保证数据的安全。前台应用程序,如Application Server中的JAVA程序,Web Server中的PHP程序等,可连接任何一个实例,对数据进行访问。这里所说的Node,指的是物理服务器,即小型机。由于数据的存储和处理都是集中式的,所以这种结构不适合用在对批量数据进行处理的环境中。 ![]() 4、学习成本 Oracle数据库的体系结构是非常复杂的,这就导致Oracle的学习之路必然是一个漫长而艰辛的过程。MySQL的结构非常简单,非常容易掌握。然而,当你真正掌握这两种产品的管理方法之后,你会惊讶地发现:Oracle的管理非常容易,而MySQL的管理则非常繁琐。这是因为,Oracle公司非常了解用户的心理,对Oracle产品进行了很多优化,加入了很多默认的配置,数据库按照默认的方式即可高效运行。另外,在数据库实例中运行很多自动化的任务,实现数据库的自动管理。而MySQL是由很多爱好者开发的,它充分体现了开发者的个性,用户需要迎合开发者的心理。 ![]() 综上所述,Oracle数据库主要应用于传统的大型行业,如银行、通信、证券等,这些行业对国家经济有重大影响,数据的安全是必须考虑的因素。另外,因为资金雄厚,这些行业有能力购买高档设备和软件,通过更多的投资来保证数据库的安全和性能。MySQL主要应用于互联网行业,通过使用大量的廉价设备,构建大规模的分布式应用环境,从而提高数据库的性能,保证数据的安全。互联网行业主要强调对批量数据的并行处理,与大数据进行衔接,为大数据提供源数据。 在目前IT界去IOE(IBM、Oracle及EMC)的大趋势下,MySQL确实获得了越来越多的市场份额,但不可否认的是,在很多重要行业中,Oracle的霸主地位还是无法撼动的。 ![]() 对编程感兴趣,想了解更多的编程知识,关注头条号一起玩转编程 更多编程资讯、干货持续更新中~ |
| 本文出处: https://www.toutiao.com/a6600906847555682830/ |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|