甲骨文的oracle,mysql数据库以及java产品,中国有成熟的替代品吗?

匪仔153483835


作为一名IT行业的从业者,同时也是一名计算机专业的研究生导师,我来回答一下这个问题。

最近Oracle在全球实施的裁员计划让这家科技企业走上了舆论的风口浪尖,尤其是Oracle陆续裁撤了中国的几个研发中心,更是让人倍感意外。似乎国内各大互联网企业昨天还在以Oracle为榜样,可是今天Oracle就迅速以裁员来回应。

Oracle的崛起得益于在to B端的成功,得益于传统数据库产品的销售业务以及相关的增值服务,但是在云计算业务迅速崛起的当下,Oracle的传统业务在不断被云计算业务蚕食,这也是Oracle目前面临困境的重要原因。随着云计算的不断发展,目前大量的企业开始采用云计算服务来替代传统的数据库产品,而Oracle很明显错过了向云端迁移的最佳时机。

目前国内可以替代Oracle数据库产品的解决方案还是比较多的,各大互联网企业的云计算业务几乎都可以完成Oracle数据库的迁移,最近国内某大型云计算平台甚至宣称24小时随着待命接收Oracle数据库迁移用户,这从侧面说明了Oracle在to B端正逐渐丧失自己的传统优势。

Oracle通过并购Sun公司收获了Java这一“优质资产”,Java目前有大量的用户,而且遍布多个领域,但是在Oracle眼中,始终无法盈利的Java,似乎并不算是优质资产,Oracle也在不断为Java瘦身。虽然Java目前依然是最为流行的编程语言之一,但是近些年来Java呈现出了一个比较明显的下滑趋势,伴随着Python、Go、JavaScript等语言的崛起,似乎Java也发展乏力。

Java目前的主要应用领域包括Web开发,Android开发和大数据开发,而这些领域Java都不是唯一的选择,而且也越来越不是最佳的选择。Web开发可以选择PHP、Python等语言,Android开发可以采用kotlin,大数据开发目前比较常见的选择是Python、R和Go语言。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言!


IT人刘俊明


作为一个本科是计算专业毕业,并且在本领域工作超过17年的我来直接回答吧:

1.oracle

是最牛的关系型数据库,这个没有之一;只有它可以做到不丢数据,其他的什么mysql,什么pg都不能;但是目前云计算越来越成为水电煤一样的基础设施一样的存在的场景下,关系型数据库的作用被弱化了,导致了大量的云原生数据库的存在,替代了oracle,所以在中国有替代产品,比如阿里云的polardb数据库等,其实国外也有,比如aws的云原生数据库aurora;

2.mysql

这种关系型数据库,比如人大金仓等等,但是水平还是不如mysql和pg;

3.java

这种语言,实事求是的说目前还没有可以替代的产品,要成为一种编程语言,并且编程主流的,国人还需要有很长的路要走;

看一下2019年的一个编程语言排行版:

下面先来看看 RedMonk 2019 年 Q3 季度的编程语言排行榜前 20 名:

所以最后一个编程语言是最难的,其实就是一个标准:中国的企业在制定一流的企业标准的过程中还有很大的差距;


码农理财


笔者作为一个从事多年Java服务端的开发人员,根据自己的认知依次对每个产品做下分析:

Oracle

Oracle在数据库产品上是神一样的存在,目前没有听到过有任何产品在综合性能上能够超越它。Mysql在它面前也就是个弟弟一样的存在,但是MySQL却在互联网行业得到了广泛应用,Oracle却没有。为什么呢?最主要一个原因就是Oracle数据库商用费用昂贵,几乎没有几家互联网公司能承受的起这么高的费用。虽然Oracle很牛,没有单个数据库产品可以替代它,但是随着中国互联网的发展,出现了很多非关系型数据库、以及分布式关系型数据库(TIDB)等完全可以替代Oracle数据库的方案,甚至更加灵活更加轻量级。

MySQL

MySQL在互联网行业得到了广泛应用,不但免费,而且开源,成了国内绝大多数互联网公司中的重要数据库产品(包括我所在公司,有实力的公司在MySQL基础上做了二次开发以适应公司需求)。MySQL作为Oracle的弟弟,当然也有它自己的不足,单表超过2000w行查询效率就会变得极低(一般建议单表不要超过500w行),这时候就需要用到数据库中间件(mycat等)进行分库分表带来了额外成本和不稳定性。有合适的替代方案吗?当然,TIDB作为国内组织自研的开源分布式 HTAP数据库,结合了传统的 RDBMS 和 NoSQL 的最佳特性。TiDB 兼容 MySQL,支持无限的水平扩展,具备强一致性和高可用性。所以在数据量上来的时候,可以用TIDB来替代MySQL,由于TIDB实现了MySQL协议,所以在数据库替换的时候应用改动也不会太大。

Java

Java作为一门面向对象高级编程语言,由于其简单、安全以及跨平台移植等特性被广泛应用。反观国内编程语言的发展差了很多,更别说跟Java这种排名前3的语言进行比较了。但是JavaJDK的开源(OpenJDK)让很多有实力的公司(如阿里)在OpenJDK基础上根据公司内部场景需要进行了二次开发,补足了JDK场景的单一。虽然国内编程语言发展不好,但是国内二次创新的能力是极强的,相信不久的将来,国产编程语言也会走向世界的舞台。

最后,虽然大家对Oracle、MySQL、Java等产品认可度很高,但是国内的相关技术也在不断发展,很多在二次创新的基础上已经超过了这些产品原有的功能。

笔者是一位热爱互联网、热爱互联网技术、热于分享的年轻人,如果您跟我一样,我愿意成为您的朋友,分享每一个有价值的知识给您。喜欢作者的同学,点赞+转发+关注哦!


Java读书笔记


作为从事IT的人来说,

金融行业用oracle的还很多的,Mysql是互联网和小公司来替代oracle的产品,毕竟免费,开源,如果有实力可以在mysql上面二次开发。

再说java,Java就是个编程语言,它能做的,其他好多语言都能实现的。为什么这么多人用,因为它的生态已经形成。Java能很快速的构建一个高并发高扩展的应用。


Java猿


数据库的替代产品,阿里云的【PolarDB】

啥也不多说了,直接了当给答案!

先来吹爆一个人、一个团队

王坚,很欣慰的是中国有王坚院士,才有了阿里云,才有了PolarDB。

11月22日上午,2019中国工程院院士增选结果正式公布。在工程管理学部的6人名单中,出现了阿里巴巴技术委员会主席王坚的名字。

10年前,他“忽悠”了马云10个亿,烧钱无数,却一事无成,被千夫所指,怒骂“骗子”。

10年后,他不但还给马云5000亿,还被选为中国工程院院士。

吹爆一下。作为一个本行业的从业者,我们深刻了解到,方方面面被国外科技公司卡住脖子太多。数据库作为IT底层架构之一,曾几何时,是梦醒也要迈过去的大山。如今我们已经跨了第一步。目前我已有客户,一个民营企业的客户,主要要求将数据库更换为PolarDB,而且于12月初更换成功,距今稳定运行一个月有余。

再来,聊一聊PolarDB

POLARDB是阿里云自研的下一代关系型云数据库,有三个独立的引擎,性能远超MySQL。特定情况下,是MySQL的6倍,性能也优于同类型的 AWS Aurora。为了确保商用,他100%兼容MySQL、100%兼容PostgreSQL、高度兼容Oracle语法。存储容量最高可达100TB,单库最多可扩展到16个节点,适用于企业多样化的数据库应用场景。

下面是官方优点摘录

您可以像使用MySQL、PostgreSQL、Oracle一样使用POLARDB,此外,POLARDB还有传统数据库不具备的优势:
  • 容量大。最高100TB
  • 高性价比。POLARDB的计算与存储分离
  • 分钟级弹性。
  • 读一致性。
  • 毫秒级延迟(物理复制)。
  • 无锁备份。

关于Java的替代品

目前还没有,这是一门编程语言,国外的编程语言诞生都是各位技术大牛对现有技术不满而自己创造的,我们到目前为止还缺乏这方面的思维和底蕴,是整个IT行业持续发展的一个自然而然的产物。

最后

我们目前的技术能力和国外的对比,还是缺乏底蕴的,美国的数据库工业已经发展了四五十年,IT技术历史更久远,我们要认清自己的差距,努力把短板一块块的补齐,加油!


顾问鑫水大师


目前还没有,虽然有一些国产的产品,但是还不足以满足需求。也许未来还是会有替代品出现,不过还需要经过很长的一段时间。

数据库方面目前仍然是oracle、MySQL和MSSQL、DB2等占据了主要地位,编程语言我们还是有易语言的,真正的国产!其实还是有那么一群人热衷于中文编程,所以易语言也仍然在不断的发展,不过太过于小众,难以成为主导的编程语言。


陆柏熺


翻看了一下其他答案,看样子都没回答是否有成熟的替代品。


甲骨文的 oracle 数据库, 基本上现在市面上能找到的云端数据库产品,都是使用postgresql 做的, 这是一款开源的数据库产品, 它的 sql 语言标准是 pl/pg sql, 也是兼容 oracle 的 sql 语句的。 最近华为云发布了一款数据库产品, 可以平滑地使用户从 oracle 数据迁移过来, 有兴趣的话,可以去看看他们的一些介绍。


MySql 数据库本来就是开源的, 现在大家使用都不受什么限制。 当然遇到极端的情况,如果不能使用的话, 其实也可以使用 postgresql 数据库的, 只不过有些 sql 语句的写法不太一样,需要一定的迁移成本的。


Java, 最主要的还是 Java 虚拟机。 市面上除了 Oracle 提供的实现之外, 很多大公司都有这方面的人才储备,以阿里为例, 他们自己就有Java虚拟机团队,专门研究优化自己的Java虚拟机实现。 另外, 也可以参考 Zing® JVM, 这是款美国的产品,他们提供了很多自己的优化实现,号称速度特别快; 其实谷歌的安卓操作系统里就有自己的一套Java虚拟机实现, 名字叫 Dalvik , 安卓程序的运行都依赖于这个虚拟机。


机器元素


依赖于Oracle 数据库产品的企业,很难再去更换其它数据库产品。对数据库产品有需求的,也绝对不止互联网企业。事实上Oracle的客户市场也不在互联网领域。主要是金融、电信、石化、军政、航空航天等对数据管理有严格要求的组织机构。而这些组织机构几乎是不可能脱离现有的oracle产品服务转而去使用mysql等开源产品的。因此,云计算服务对oracle数据库产品形成市场冲击这个观点不成立的。云计算服务对oracle这个商业大公司的增值业务有影响,但是也微乎其微。

另外,java用于构建复杂、大规模的分布式系统应用,对于其他技术语言来说,有着不可比拟的优势,因此说java走向落寞这是无稽之谈。很多前期采用php、python技术构建的互联网应用项目,随着业务规模的扩大,最终都计划将底层技术架构转换为java。为什么说java对于构建大规模的分布式应用系统有不可比拟的优势?这是从多个方面解释:java具有庞大的开源技术社区和资源,特别是web应用方面;java领域有很多全球IT服务产业的领军企业,这些巨头旗下的产品服务的核心技术几乎全部是基于JAVA技术,他们带动java技术在其下游技术供应链上的应用;java有着正规且实力强大的产业技术标准化组织,当然这些组织的主力成员还是软件产业巨头,标准化的重要作用便是让很多优秀的java技产品、中间件等能够更好地协同、融合,这样在一个极其复杂的应用系统中,也能够通过技术标准化实现异构产品融合应用。而其他技术语言看似松散简练的语法结构,在构建大规模应用时,恰恰会成为致命的弱点,最大的问题出在没有严谨的语法规范和标准约束约束,导致在代码量庞大、第三方技术产品产使用增多的时候,架构变得难以维护、产生问题时难以排查。另外,java也有与python 、ruby等语言类似的衍生语言技术,例如jython、groovy等,完全能够满足敏捷开发领域的需求。总之,如今的java,已非一门编程语言那么简单。而oracle公司,并没有对java拥有绝对的主导权。即使oracle不再维护java或者mysql,也会有强大的组织或者软件公司来取代它。注意:oracle只是对其下的jvm、sdk拥有技术产权,而优秀的jvm、sdk不止它一家有、开源的有opensdk、商用的 IBM SDK, Java Technology Edition都可以取代oracle的产品。mysql数据库也是有很多替代方案甚至完全一致的实现。


微捷Kevin


目前国内直接对标oracle的数据库还没有,南大通用的gbase已经开始用在金融领域,算是一种尝试。电信,金融,石化,航空,铁路等行业使用DB2或oracle不仅是因为DB2,oracle是传统关系型数据库管理系统的先驱,而且从技术角度讲因为这些行业的核心业务系统都是属于强一致性事务处理系统,有要求系统绝对稳定可靠,而这正是oracle这类关系型数据库的强项,所以两拍即合。至于oracle能不能在这些行业被取代,目前看这些行业本身虽有意愿去IOE,业务上私有云,但短时间其核心业务不太可能去DB2和oracle。听说中国电信的BSS系统已经使用了mysql数据库,不知是真是假,但这属于前置系统,并非核心业务系统。至于中小型项目,完全没有使用oracle的必要(而且oracle也不在乎这一类),这方面有oracle收购的mysql可以使用,也可以使用免费的mariadb(对标mysql数据库)或postgresql。至于各大行业中面向互联网乃至于未来物联网的应用场景,由于高并发,大吞吐量的要求,一般没有使用oracle这类强一致性数据库的,根据CAP理论,通常使用四大类Nosql数据库,或者将消息中间件与mysql,postgresql相结合,采用最终一致性解决方案,这方面阿里云提供了丰富的云数据存储工具可以购买使用。至于大数据和数据仓库这一块,一般使用开源HBase,Hive或greenplum数据库,使用oracle的也不多。


过客看客过8848


有啊!!!中国的技术研究能力还是很强的。

OceanBase,是阿里巴巴和蚂蚁金服 100% 自主研发的金融级分布式关系数据库。

AliSQL数据库,是基于MySQL官方版本的一个分支,由阿里云数据库团队维护,目前也应用于阿里巴巴集团业务以及阿里云数据库服务。

TiDB 是 PingCAP 公司设计的开源分布式 HTAP (Hybrid Transactional and Analytical Processing) 数据库,结合了传统的 RDBMS 和 NoSQL 的最佳特性。TiDB 兼容 MySQL,支持无限的水平扩展,具备强一致性和高可用性。


分享到:


相關文章: