首页 > 其他分享 >GaussDB如何给世界一个更优选择?

GaussDB如何给世界一个更优选择?

时间:2023-06-05 17:06:11浏览次数:46  
标签:更优 GaussDB 交易 选择 OLTP 华为 数据库


GaussDB如何给世界一个更优选择?_存储引擎

华为云CEO张平安


11月7日,华为全联接大会2022第一天,华为云CEO张平安在主题演讲中,专门有一页PPT谈到了GaussDB信息量很大,不仅特别强调“GaussDB云原生交易数据库,给世界一个更优选择”,同时,还分享了2个案例和一些数据。

华为云特别强调“云原生交易数据库”而非常规的“云原生数据库”,多出“交易”两字,不会是无意义的行为,这个小细节上的变化意味着什么?给世界一个更优选择,是哪些方面更优?背后有怎样的技术创新?这是本文要探讨的重点。


强调“交易”

意味着什么


众所周知,数据库按应用方向的不同,主要分为2大场景:OLTP(交易)和OLAP(分析)。从中国市场看,OLTP仍然是国外厂商占据最大市场份额,是国产化替换的主要市场,反而OLAP中国公司有一定商业基础。


Gartner预测,“到2025年,中国分析型数据库市场来自海外厂商将只剩下30%,交易型数据库市场海外厂商市场也只会剩下50%左右。”这对国内数据库厂商而言意味着巨大的市场机会。在这样的背景下,张平安特别强调“交易”,难道是华为云释放的将发力OLTP场景下的国产替代信号吗?


数据库是所有应用的核心组件。大家知道,交易型数据库是最难的,在关键行业的核心应用领域,交易型数据库基本上都是来自美国的数据库。演讲中,张平安分享了2个案例,这两个案例共同点很显然,都是交易型场景替换。


一个是华为内部实践,华为集团流程IT ERP系统部署GaussDB后,各项性能和指标超过预期,采购履行耗时从90分钟下降到15秒;端到端订单履行耗时从23分钟下降到9秒;在历史峰值5倍压力下性能依然稳定不下降。


不要小看这个内部实践案例,华为集团流程IT ERP系统是个非常复杂的系统,该系统涉及170多个国家和地区,500+外围应用、3万+个外围集成点,对数据库容量、性能以及可靠性都有极高要求。如:数据量大,单一个业务场景数据体量就高达百亿,而ERP总共有上百个业务,且数量还在持续增长;每分钟30万次库存查询请求及数万笔并发交易事务处理,区别于银行和互联网的交易事务,华为ERP关联系统众多,完成一笔入库交易比完成一笔秒杀交易在场景复杂度、技术复杂度、外部依赖等方面差异很大,华为ERP系统万级TPS比互联网的百万级TPS更难处理。据了解,该系统底层数据库过去20多年一直使用的是Oracle,因为众所周之的原因,现在替换为GaussDB。


另外一个是邮储银行案例,新一代分布式核心系统基于GaussDB为全行6亿多个人客户提供日均20亿笔的处理能力,联机交易处理效率提升1倍,批处理效率提升33%,在9月底的三季度结息中,新系统仅用23分钟就完成了原来Oracle系统70分钟才能完成的操作。


张平安还提到,“GaussDB已经在工行、招行、邮储等大型银行的核心业务系统上线使用,承担越来越多的业务负载。基于GaussDB,新意科技打造了“证券业务核心系统”,服务于兴业证券、 南方基金等客户。”


显然,在OLTP场景下,GaussDB已经可以实现国外数据库的完全替代,GaussDB接下来将发力OLTP场景下的国产化替代,而金融行业肯定是重点。


如何理解

“更优选择”


“GaussDB云原生交易数据库,给世界一个更优选择”,这其中“更优选择”指的哪些方面?华为云的论据是什么?


演讲中,张平安说:“为了给全球客户提供一个更优选择,华为云全新打造了全球领先的云原生交易数据库GaussDB,更快、更稳、更可信。”


显然,“更优选择”包含3个方面:更快、更稳、更可信。


而这3个“更优选择”,据老鱼了解,对标的是“O”记。


更快对应性能,数据显示,GaussDB比厂商O在公有云上同规格测试快45%。


更稳对应高可用,华为云去年首先创新推出“同城双集群”方案,即在两个数据中心部署两套独立的数据库软件,任何软硬件故障完全隔离RPO等于0。


更可信对应安全与自主可控,安全上,GaussDB内核是目前唯一通过国际CC EAL4+级认证的国产数据库。而自主可控上,GaussDB代码自研率非常高,其研发历程可以追溯到2007年,投入之大积累之深,国内可比肩的并不多。另外,华为还积极倡导技术开源,深度参与信创数据库标准制定。因此,说GaussDB是一款完全符合国产化和信创标准的数据库,并不为过。


“更优选择”

背后的技术创新


为什么GaussDB能在性能、高可用、安全3个方面做到更优?背后有哪些内核级的技术创新?


高性能方面,从公开的可查询资料中可以发现,GaussDB有2个方面的关键创新:


其一、是存储引擎,GaussDB全新上线的Ustore存储引擎,又名In-place Update存储引擎(原地更新),这个存储引擎在以前的文章中,老鱼有过介绍。这是个行存储引擎,在以前版本的GaussDB内核中使用的行存储引擎是Append Update(追加更新)模式,追加更新对于业务中的增、删以及HOT(Heap Only Tuple) Update(即同一页面内更新)有很好的表现,但对于跨数据页面的非HOT UPDATE场景,垃圾回收不够高效。Ustore存储将“有效数据”与“垃圾数据”分离存储,同时采用多版本索引技术,有效提升了存储空间的效率和性能。官方数据显示,相比常规引擎,性能抖动降低70%,同时,整体性能提升10%以上。


另一个,是软硬协同Numa-Aware,鲲鹏服务器多CPU-socket架构下跨NUMA内存访问延迟存在严重的不对称,相比x86内存访问时延高50%、并发控制原语代价高2-3倍,在数据库中以进一步恶化OLTP瓶颈,此外鲲鹏架构下CPU物理核心数相比x86有了大规模的提升,如何优化NUMA带来的访问时延问题,如何充分利用众核CPU解决并发控制问题成为了鲲鹏上优化数据库OLTP负载性能的主要挑战。因此,软硬协同Numa-Aware应运而生,通过内核线程调度NUMA亲和、关键数据NUMA化分布、LSE ARM指令级性能优化等关键技术优化,GaussDB实现了鲲鹏环境下性能40%以上的提升。


据内部人士透露,2021年,在21个金融政府大客户(涵盖银行、保险、公安、大型国企等)现场POC测试中,GaussDB在性能上平均领先对手50%,在人行、邮储等POC测试中,更是完胜竞品。


高可靠方面,当前谈的比较多的是通过一套数据库集群拉远,通过不断增加数据中心的方式,来提高可用性。从同城两中心到两地三中心,再到三地五中心,但是实际很少有应用企业能提供类似三地五中心这么高规格的基础设施,“中心”增加带来的可靠性收益逐步降低。


华为云认为,不管几个中心,只要整体一套软件(集群),就无法做到软硬件故障的完全隔离。数据库软件bug,导致即使有同城备中心,切换也没有用,因为备中心是同一套软件。


去年底, GaussDB首先创新推出了 “同城双集群”方案,这是一个重大的内核新特性。简单的说,就是同城的两个数据中心完全部署两套独立的数据库软件,任何软硬件故障完全隔离,支持版本轮换升级、应用灰度升级,主中心升级时应用还可以访问备中心正常开展业务,支持RPO=0 、RTO<60s的同城双集群切换,尽最大可能保障企业用户的核心业务7x24小时无中断。老鱼获悉,今年,这个方案已经在工商银行的5A级核心全球信贷系统完成上线,并联合工行向其他银行进行规模推广。


高安全方面,就在上月,GaussDB成为中国首个获得国际CC EAL4+级别认证的数据库产品。很多人可能不知道CC EAL4+意味着什么?CC认证是国际公认计算机维度的高级别安全认证,也是国际范围内30多个国家官方认可的通用标准。其中,EAL4+认证难度有多大?对比目前国外常见数据库主流版本通过的EAL2认证来说,EAL2为结构测试级,开发者可递交设计信息、测试结果进行评估,而EAL4作为系统设计、测试和复查级,评估程序更为严谨,有对评估对象模块底层设计和实现子集的分析,更有对产品代码的审视和对产品研发环境的站点审计等。


而GaussDB能拿到CC EAL4+主要的关键技术有2个:全密态和防篡改。这方面最近披露的资料比较多,就不在这里过多赘述,需要强调的是,2022年GaussDB由纯软全密态全新升级为软硬结合全密态,据说相比竞品纯硬件方案性能优20%。另外,GaussDB还是业内首个以最高分通过信通院防篡改数据库基础能⼒评测的数据库产品。


公开资料显示,目前,GaussDB已经在超过2500家大客户得到了商用,遍布金融、电商、游戏、汽车、制造、能源等各行各业。尤其是金融行业,已经在工行、招行、邮储银行等30多家金融企业的核心业务系统中广泛应用,GaussDB通过这些案例,不论是技术本身,还是去O的方法论,都得到了较充分的实践。所以,在明确对比对象和具体指标前提下,GaussDB说自己是更优选择,没毛病。不得不说,华为云还是一如既往的严谨,用“更优选择”而非“最优选择”,这是相对与绝对的区别。




标签:更优,GaussDB,交易,选择,OLTP,华为,数据库
From: https://blog.51cto.com/u_16102901/6417893

相关文章

  • GaussDB数据类型介绍
    GaussDB数据库GaussDB是华为基于openGauss自研生态推出的云化企业级分布式关系型数据库,它支持多种数据类型,包括数值、字符、日期等。在使用GaussDB时,可能需要进行数据类型转换,以满足不同的需求。本文将以示例的形式罗列并介绍一些常见的数据类型转换方法等。     数据类型......
  • Element-Ui 根据开关按钮状态选择多选框某一行禁用和按钮禁用
    1、实现效果2、按钮状态改变<el-table-columnlabel="操作"align="center"class-name="small-paddingfixed-width"><templateslot-scope="scope"><el-button:disabled="scope.row.sta......
  • 排序算法中的冒泡和选择排序详解(持续更新系列)
    本系列文章为Java基础入门内容,致力于为大家详细讲解学习Java中的一些难点、常见点等,内容由浅入深。文末有全文重点总结及配套视频资料,更多相关技术问题欢迎和我们一起交流讨论!更多学习资料可点这里获取前言我们要想成为一个优秀的程序员,其实非常关键的一点就是要锻炼培养自己的......
  • python打开文件时的mode选择
    常用:追加:a覆盖:wModeDescriptionExamplerReadmode.Opensthefileforreading(defaultmode).Ifthefiledoesn’texist,anerrorwillberaised.file=open('example.txt','r')wWritemode.Opensthefileforwriting.Ifth......
  • python tkinter scale 滑动选择刻度条
    tkinter.Scale(d_f,from_=0,to=20,tickinterval=5,orient="horizontal")1.参数汇总归纳总结Scale组件中一些常用的参数以及用法。 2.方法汇总coords(value=None)获得当前滑块的位置对应Scale组件左上角的相对坐标如果设置value参数,则返回当滑块所在该位置......
  • 如何选择 CMS – 内容管理系统的技巧
    如果您是企业家或开发人员,您很可能会在某个时候使用内容管理系统(CMS)。在为您的用例选择正确的选项时,了解如何分析CMS选项的众多功能非常重要。在本文中,我将解释CMS存在的原因、它们帮助解决的问题,并且我还将提供有用的指导,帮助您根据需要选择合适的CMS。(更多优质教程:jav......
  • CSS选择器笔记
    [color=red][b]一、基本选择器[/b][/color][table]序号选择器含义|1.|*|通用元素选择器,匹配任何元素|2.|E|标签选择器,匹配所有使用E标签的元素|3.|.info|class选择器,匹配所有class属性中包含info的元素|4.|#footer|id选择器,匹配所有id属性等于footer的元素[/table]......
  • jQuery选择器大全(48个代码片段+21幅图演示)
    一、基本选择器1.id选择器(指定id元素)将id="one"的元素背景色设置为黑色。(id选择器返单个元素)$(document).ready(function(){$('#one').css('background','#000');});2.class选择器(遍历css类元素)将class="cube"的元素背景色设为黑色$(document).ready(......
  • 有许多UPnP软件可供选择,以下是一些常见的UPnP软件
    UPnP是通用即插即用(UniversalPlugandPlay)的缩写,它是一种网络协议,可以让设备在网络中自动发现和连接到其他设备,从而实现设备间的互联和数据共享。UPnP最初是由微软等公司推出的,它的主要功能是允许设备自动进行端口映射,从而实现网络服务的远程访问。UPnP协议还支持设备控制、事件......
  • 以下是一些注册表编辑器,注册表编辑器都具有不同的功能和特点,可根据用户的需求和个人偏
    以下是一些注册表编辑器:注册表编辑器都具有不同的功能和特点,可根据用户的需求和个人偏好进行选择RegCool:RegCool是一款开源的注册表编辑器,拥有强大的搜索和替换功能、快速寻找更改、备份、还原等常见注册表操作。它支持导入和导出某个部分或整个注册表,以及在键值中执行批量修......