为什么银行单位几乎都用Oracle?

为什么银行单位几乎都用Oracle?,第1张

不开源 安全性高 高效稳定 支持高并发

第一,几十年前银行系统建设的时候只能选择IOE,根本没有其他的选择。

第二,目前中国的IT基础设施还无法满足银行的业务需求。

具体说oracle,他的一致性,稳定性,成熟度不是其他软件可以比拟的,你总不会希望你银行,交易所里面的钱有异常吧

因为回扣大

因为是大型商用库,说白了有售后

我的回答:银行单位选择oracle数据库,有很多的原因。

1.oracle数据库是世界上第一个商用闭源关系型数据库,是比较成熟的产品。oracle具有先进的、成熟的市场经验。产品遍布各行各业,oracle的产品和技术已经广泛用在金融、电信及通信、证券、保险、能源、高 科技 、生产制造、以及政府等行业,oracle技术具有强大的领先优势。

2.oracle具有高可用的架构优势,可以使用oracle rac、DataGuard、MAA等架构保障业务的稳定性、可靠性、连续性。oracle可以满足业务的高并发需求,满足OLTP各种事务处理。具有低成本、高性能、易伸缩、高可用、安全和集中管理等特点。

3.oracle可以使银行提高客户服务水平、规避和控制金融风险、保证银行业务和利润的持续增长。oracle有一系列成熟的配套软件和专业的服务,可以满足银行单位的业务发展需求。尽管随着金融领域业务的变化,有去IOE和云化的变化,但是oracle的稳定性肯定是银行业务的首选,可以促进金融行业的业务转型与升级。

这样想,银行单位选用oracle数据库,合情合理!

不以泪水博同情,要以汗水赢掌声。你能作茧自缚,必能破茧成蝶!

你这问题放在五年前差不多 现在你再看看有多少 现在去IOE去的差不多了

因为早,

外国数据库比中国发展早,

当然用外国的多

为什么不换?

这个数据量,大了去了,

想换?工作量要上天

只能一步一步替换!很漫长!

您好,Oracle软件的拷贝和克隆是有区别的,拷贝只是将原有的Oracle软件复制到另一台服务器上,而克隆则是将原有的Oracle软件进行完整的复制,包括数据库结构、数据库内容、配置文件等。拷贝只是将原有的Oracle软件复制到另一台服务器上,而克隆则是将原有的Oracle软件进行完整的复制,包括数据库结构、数据库内容、配置文件等。克隆可以将原有的Oracle软件完整地复制到另一台服务器上,从而实现软件的快速部署,减少了重复的安装和配置,提高了软件的部署效率。此外,克隆可以将原有的Oracle软件复制到另一台服务器上,从而实现软件的快速部署,减少了重复的安装和配置,提高了软件的部署效率。此外,克隆还可以帮助您实现灾难恢复,在系统出现故障时,可以快速恢复系统,减少系统停机时间,提高系统的可用性。

其实早期得互联网公司曾经不仅是Oracle   客户,还都是大客户,最典型的代表有两个,一个是亚马逊,一个是阿里巴巴,后来两者都纷纷去掉了O,可见并不是什么ZZ因素,一定有一些原因,我们一起来逐步拨开看看:

 1.Oracle数据库到底是为什么设计的? 

Oracle数据库的理论源于1970年的一个论文,   "A Relational Model of Data for Large Shared Data Banks".   在这个论文中,提出了一个数据库的经典模型,也就是今天所谓的关系行数据库 Relational Database.   这个论文,在当时验证了关系模型的一些优势。后来IBM基于这个论文开发了一个东西,叫SQL语言。   但是很奇怪的是,IBM没有更快的基于SQL语言去开发一个数据库,而Oracle在1979年第一个开发了商业级支持SQL语言的数据库产品。   当时,数据库主要处理的一个核心问题,就是几个特点ACID,鉴于篇幅,我们无法论述其中的意思,但是其中最有意思的就是一致性的C。什么意思呢,就是以银行交易为例,你如果在取钱的一瞬间查询余额有500,这个时候你取款,但是你恰好也告诉你家人在同一时间查询,如果查询到有500,他们也同时取款,会不会都成功呢?这个一致性的问题,对于银行要求是强一致性,也就是不能有半点差错。

2. 互联网时代需要的数据库是什么?  

到了互联网时代,情况突然变了。比如我们都喜欢的知乎,微博这些信息流的App。   如果我发帖的瞬间,同时可能有很多人都在发帖,如果我们的App在全世界都在用,瞬间的用量峰值可能会因为某个热点事件突然变得很高,这个和上世纪80年代的企业级应用完全不同,即便是银行,我们还是可以保证当时的峰值大概有多少,因为营业点和ATM机的数量也是有限的,那时候你无法在手机上直接处理任何一笔交易。但是互联网的到来改变了一切,这个峰值不仅难以预估,而且可能和平时的平均值差别巨大。这样为了确保一个峰值,就去购买峰值所需的Oracle的License数量可能特别大。(Oracle是按照一个类似CPU数量或者用户数量来确定价格,你可以简单理解为用的峰值越高,你需要买的license越贵),这是一笔巨大的花费不说,而且还有另外一个问题。

3. 互联网时代的应用需求不同。 

在我之前的一个回答里面写道了,   亚马逊工程师在优化自身的数据库的时候, 他们发现“:”   大约70%的 *** 作是键值类型的,其中只使用主键,只返回一行。大约20%的用户会返回一组行,但仍然只对单个表进行 *** 作。“这是一个伟大的发现——70%的 *** 作竟然都没有使用关系数据库的核心功能!为什么会这样呢?因为互联网时代的应用发生了变化。我举个例子,你如果设计一个类似亚马逊的电商网站的购物车,你允许客户把自己想买的东西放在里面。但是你设想一下,如果突然某个畅销的产品被卖家下架了,但是这个产品被很多的客户放在购物车里,你回想一下,银行交易需要确保的那种强一致性,在这里有必要么?如果你想强一致性,就需要这个商品下架的时候,清空每一个曾经加入购物车的这个商品。这样任何一个修改产品的 *** 作,都可能有无数个关联的交易在那里等着更新,可能商品的目录更新这个事情,就会变得巨慢无比,而且毫无意义。为什么说毫无意义呢,比如我在9点购物车放了一部手机,到10点商家卖光了,把这个产品下架了,这个时候如果商家只是在自己店面的页面更新,但是你的购物车并不实时更新,即使最差的情况是什么呢,就是10点的同时,你提交了一个购买的请求,这个购买的请求是需要保持一致性的,这个时候商家会返回一个失败,因为这个商品不存在。你再刷新一看,哦,卖光了。。。你的用户体验丝毫不受影响。再比如互联网的微博,如果我发一个微博就发上去,更新的时候,我不需要强一致性更新,那么可能和我距离近的朋友第一时间看到了,距离远的朋友可能稍晚一些看到了,有关系么?基本没什么影响,这些叫做分布式处理的方式在互联网应用非常普遍。

4. 互联网时代有了更多选择

一方面开源数据库逐步成熟,MySQL,   Postgre这些后期之辈,陆续成熟且有越来越多的程序员能够熟练掌握,并且利用开源实现接近商业数据库的能力;另外一个方面,云厂商的出现让这个门槛更低,你不敢保证MySQL使用达到商业数据库的可靠性,你可以借助云厂商的产品,比如亚马逊云计算的托管数据库Aurora(兼容MySQL),这里非广告,只是告诉大家这种云厂商的产品让你用开源,性能和商业数据库接近,并且价格低廉,且无需运维或者很少运维成本,这样的情况下,中小互联网厂商就更多采用云厂商的托管开源数据库,自然不用Oracle这么昂贵的产品。

5.   数据发生了变化

前面讲到微博这种信息流的数据格式很明显和银行交易类的关系格式有重大区别。其实互联网时代,日志,物联网等产生了更多奇怪的数据格式,比如时序数据,一个物联网的温度计,可能每一毫秒钟发一个温度信息,你如果拿关系数据库去存,可能很快就爆表了。。。但是物联网就是这样,而且这种数据几乎从不更改,就是按照时间序列一直存。比如股票交易所的大盘数据也是类似,这种特殊数据格式带来的需求在过去可能用关系数据库凑合一下就可以了,但是今天,越来越多的不同类型格式需求,就需要按需设计和采用不同的数据库。这些数据库因为有云的托管,你也不太需要运维,这样采用的成本也不高,比如亚马逊aws的Timestream数据库,官方号称两百万次写入1KB的数据,价格才一美金,于是,越来越多的企业开始按需去采用专门构建的数据库,而且大量采用云上托管,这些都不是Oracle数据库可以做的。

所以,各方面的综合因素,导致今天的Oracle跟不上时代,也就逐步被慢慢取代了。前几天,看到Gartner的全球数据库市场排名,亚马逊AWS取代了Oracle在全球数据库厂商的位置,一个时代就这样慢慢的被改变了,不知道我当时在Oracle   10g某个Package里面的代码是否还在?  


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/9897528.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存