技术解读 | KunDB助力头部金融机构关键系统的Oracle国产替代

news2024/11/17 7:45:09

图片

星环科技自主研发的分布式交易型数据库KunDB助力头部金融机构实现了关键系统的Oracle国产化替代。

通过可视化迁移工具完成了对象与数据的平滑迁移,将原先两套Oracle系统(一套Oracle单机系统,一套Oracle RAC系统)统一迁移到一套KunDB集群。

并且基于常规国产服务器使得每日增量数据处理性能提升了1倍,并发处理性能提升了2倍,结合全新的分布式架构,增强了弹性扩展能力,充分满足企业未来业务发展需求。

KunDB3.2以满足金融业务极致稳定的要求为核心,在高可用、Oracle兼容、一体化、智能运维、云化部署、多场景应用支持等六大关键能力实现了升级

可支撑各类OLTP应用需求,同时兼顾OLAP数据处理要求,可用于各行业国产化替代升级和分布式架构转型,帮助企业筑牢数字化发展根基。

图片

KunDB 3.2 

六大关键能力升级

图片

关键能力一:

基于Paxos协议的高可用与跨数据中心容灾

在传统主备模式中,底层采用主备复制的方式,存储出现故障时,会实行集群管理组件通过检测节点存活情况再做切换。

这种模式存在两个问题:

  • 数据同步,一般情况下会由最大保护退化为最大可用,可能会出现RPO不等于0

  • 主备切换,探活和仲裁比较复杂,一般需要等待超时才能做出判断,RTO在分钟级

(RPO指系统能够容忍的最大数据丢失量,RTO指系统能够容忍的服务停止最大时间)

KunDB3.2基于Paxos协议实现高可用和跨数据中心容灾。

存储引擎基于Paxos协议进行数据复制,元数据服务也基于一致性算法做数据复制,计算引擎采取无状态方式,拓展非常方便,再配合上层的SLB,可实现全链路的高可用。

基于全链路混沌测试,针对服务器故障、数据库故障、资源负载故障等20多项故障的测试中,KunDB能够有效保证全链路所有故障情况下RPO=0,即没有丢失数据。在大多数场景下RTO=0,即业务无中断,主节点故障场景下,RTO<30s。

在同城双机房容灾场景中,采用3+2部署模式,Paxos组件会感知机房属性,每个机房都有强同步副本,保证RPO=0。

当同城机房出现数据库组件、服务器、网络等故障时,主机房达到多数派,保障RTO=0。

而当主机房数据库出现故障时,底层Advisor会实时感知并自动切换,保障RTO<30s。

在两地三场景容灾场景中,主集群采用3+2节点部署,异地集群采用3个节点,两个集群采用异步复制的模式。

故障情况下通过切换可以做到城市级故障转换,同时提供高效实时备份能力,支持全量和增量备份,用户可以根据业务需要恢复到任一过去时间点,基于全局时间戳保证全局事务一致性。

在国标GB/T 20988-2007《信息安全技术 信息系统灾难恢复规范》中,将灾难恢复能力划分了6个等级,最高等级6级要求RPO=0,RTO控制在分钟级。而在金融领域有更高的要求,最高等级要求同城RPO=0,RTO控制在1分钟内。KunDB容灾能力已经达到并且超过上述两个容灾标准

关键能力二:

高度兼容Oracle和MySQL,支持应用快速迁移

KunDB3.2支持MySQL和Oracle双语法模型,高度兼容Oracle对象与语法,完整支持Oracle PL/SQL,极大降低了企业业务迁移成本。

图片

Oracle兼容性主要分为3个层次,语法和驱动、PLSQL和高级包、完善的应用开发对接生态。

首先,KunDB3.2对Oracle数据库对象、数据类型、系统视图等都做到了全部常用功能的兼容。

  • 在语法和驱动方面,KunDB支持绝大部分SQL语法以及方言,支持三百多常用的函数,占到Oracle总函数的85%,同时全兼容ODBC和OBBC驱动,在OCI和OCCI方面做到了常用接口兼容。

  • 在PL/SQL和高级包方面,通过自主原创的PL/SQL编译器,KunDB完整支持PL/SQL,如类型、控制语句,自定义数据类型等全部PL/SQL语法,并且执行性能比解释执行提升一个数量级,解决了Oracle业务迁移到国产化数据库的核心痛点。针对有些场景会使用高级包的能力,KunDB支持DBMS_JOB、DBMS_LOB等11个高级包,可以满足用户高级包常用场景。

  • 在Oracle应用开发生态方面,KunDB支持基于Oracle的业务直接或者通过中间件框架进行连接,包括Java、.NET、C/C++等语言开发的应用,尤其是针对C/C++应用提供兼容Oracle的OCI/OCCI驱动,来保障业务的平滑迁移。

好的兼容能力是实现Oracle、MySQL快速替代的基础,在实际迁移时,是否有完备的迁移工具和迁移方案将决定迁移的效率。

数据库迁移一般可分成四步:对象迁移、数据迁移、业务迁移、特殊故障时的容灾回切。KunDB提供专业的语法转换、数据迁移、数据实时同步等工具,可以帮助用户实现自动化迁移,大幅提升迁移效率。

关键能力三:

分布式和集中式的一体化,集中式可快速扩容成分布式

一些发展中的中小型企业或者非核心业务系统,目前没有非常庞大的数据量,考虑到投资成本压力、未来业务量增长导致集中式数据库无法满足需求、以及担心从Oracle、MySQL迁移到国产分布式数据库过程中影响业务等问题,用户在集中式与分布式数据库中间选型左右为难

KunDB3.2实现了集中式和分布式一体化,整个系统采用同一套代码,集中式可以一键扩容成分布式架构,并且性能线性扩展比达到90%以上,满足高并发、大流量的访问。

集中式和分布式一体化主要带来三个方面业务价值:

第一,“应用”不重写。

从Oracle、MySQL迁移到KunDB,高度兼容语法及数据对象,无需业务重写应用。

当从集中式扩容到分布式时,支持透明分布式自动分片,对业务做到透明,无需业务重写应用,为企业提供便捷的弹性扩展,很好地满足IT架构未来得发展。

第二,“扩展”不困扰。集中式模式下,KunDB单机TPC-C性能达到188万tpmC,具有比传统集中式数据库更强的性能。

通过可视化管理平台,可一键扩展成分布式,并且性能线性扩展比超90%,,降低扩展及运维管理成本。

第三,“功能”不妥协。集中式支持小规模部署,可在4核8G资源下稳定运行,并且集中式在功能上和分布式一样,没有衰减,支持完整功能,包括高可用、运维管理、数据安全、异构混合部署等能力。

关键能力四:

一站式监控运维管理

数据库运维对于企业来说是非常关键的,尤其是分布式系统,安装、监控、报警、故障处理等给企业带来了很大的挑战。

KunDB提供一站式的运维管理平台Advisor,提供集群管理、监控告警、故障分析、巡检管理等能力,用自动化和可视化的方式解决当前企业数据库运维的痛点,降低企业数据库运维门槛和成本。

图片

  • 集群管理,可以进行容灾管理、强制切换、优雅切换、日志查看等,例如在会话管理方面,传统方式需要到每个节点上查看会话,KunDB3.2可以在Advisor上统一查看所有节点上的会话情况

  • 监控告警,包括负载指标监控、SQL监控、AAS监控、告警规则设置、实时告警等。KunDB提供类AAS的DBA分析工具,契合Oracle运维专家原来的使用习惯,实现运维的无缝迁移

  • 故障分析,通过对各种日志的记录、采集、分析,辅助运维人员进行各类故障的分析

  • 巡检管理,自动进行系统的监控巡检,健康状态分析,自动生成巡检报告,对实例状态进行健康评估

相比于传统集中式数据库,分布式数据库的性能监控及调优对于运维管理人员来说是非常困扰的事情。

KunDB3.2可通过统一平台Advisor实现负载监控、TopSQL、慢查询SQL、AAS监控等,分析集群的负载情况,帮助运维人员洞察性能瓶颈。

关键能力五:

DBPaaS云化部署优化,多实例池化管理,提升资源利用率

KunDB基于星环数据云平台TDC可实现分布式架构与容器技术的有效结合。

实现数据库组件的服务化和灵活编排,不捆绑IaaS和硬件平台并支持X86和ARM混合部署,兼顾私有化部署和云化部署场景,实现了资源隔离、快速扩缩容和弹性调度,充分利用硬件资源。

KunDB3.2在DBPaaS上做了很大的提升。

例如,利用反亲和部署,机器故障时可把数据库服务快速转移到健康节点,从而保障服务的连续性。

多租户模型提供系统租户服务、元数据服务和租户服务。

如租户服务利用独立的数据库实例为应用提供数据库服务,租户之间是物理隔离的,与多实例部署相比,多租户方案在资源上更加经济,在运维安全和便利性上有明显优势。每个数据库实例具有高可用(不分片)、分布式(分库分表)等部署形态,并且全链路高可用、按需扩缩容。

数据库实例也可以选择按照Oracle方言模式、MySQL方言模式部署,更好的对接业务应用。

关键能力六:

KunCDC打通数据库与数据仓库,对接应用生态

传统分布式关系型数据库底层数据单独存储到不同节点,从底层采集数据无法保证分布式事务强一致。

KunDB3.2采用基于全局时间戳的事务处理框架,KunCDC基于TSO提供binlog日志保证全局事务一致性,实现整个分布式数据库对外输出逻辑日志强一致。

用户可以将KunDB与企业大数据平台、数据仓库等对接,实现数据实时同步和计算,以及在并轨运行场景中将数据实时回流到原平台。

如Oracle、MySQL中,来判断原系统的运行状况。在实际交易型场景测试当中,数据库40万tpmC情况下,KunCDC性能吞吐量达到100兆/秒,延迟控制在1秒内,处于行业领先水平。

图片

此外,KunDB3.2也进一步加强了安全能力,覆盖用户标识与身份鉴别、访问控制、数据存储安全、数据通信安全、安全审计等多个方面

比Oracle的安全能力更全面。例如,在权限分立方面,KunDB3.2支持四权分立,无超级管理员。

在数据存储安全方面,支持国密算法的透明存储加密和备份文件加密,并且拥有Oracle不支持的隐私计算能力。

在数据流通等场景中,通过KunDB的数据脱敏和隐私计算能力,能够充分保障数据库内的数据存、算、用安全。

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

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

相关文章

运动戴什么耳机好?怎样选运动耳机?2024年运动蓝牙耳机推荐

​运动耳机作为运动人士的得力助手&#xff0c;不仅要求佩戴舒适&#xff0c;还需要在音质表现、防水性能、通话质量等方面有出色表现。下面我为大家推荐几款性能全面的运动耳机&#xff0c;希望能满足不同需求的运动爱好者&#xff0c;来看看吧。 1.南卡开放式耳机&#xff08…

02-TiDB部署本地测试集群

基于v7.5版本 1、下载并安装 TiUP curl --proto https --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh 下载后路径/root/.tiup&#xff0c;已自动将环境变量写入文件中&#xff0c;需要手动执行source source /root/.bashrc 2、在当前 session 执行以下命令…

深入理解3D扩散生成式模型

Stable Dreamfusion 上的这个存储库启发了这个博客。 我认为 3D 扩散和 3D 生成似乎是每个人心中的下一件大事。 Stability AI 开始招聘才华横溢的 3D AI 工程师&#xff0c;谷歌和学术界每天似乎都在进行令人印象深刻的即时 3D 模型生成器研究。 然而&#xff0c;虽然我对这些…

GuitarPro和Earmaster那个适合新手

许久没发文了&#xff0c;最近在网上刷到了一位音乐UP主从容Free&#xff0c;他把自己对GuitarPro和Earmaster这2款软件的使用感受进行了详细分享&#xff0c;还没看过的朋友可以戳下面的链接跳转到小破站看完整的&#xff1a; 我不允许还有人不知道这个学吉他的神器&#xff…

专业140+总分420+复旦大学957信号与系统考研经验复旦电子信息与通信

今年专业957信号与系统140&#xff0c;数二140&#xff0c;总分420&#xff0c;顺利上岸复旦大学&#xff0c;回顾这一年的复习&#xff0c;有起有落&#xff0c;也有过犹豫和放弃&#xff0c;好在都坚持下来了&#xff0c;希望大家考研复习要不忘初心&#xff0c;困难肯定是很…

深度学习(5)--Keras实战

目录 一.Keras基础概念 二.如何跑通Keras项目 2.1.在cmd上跑通 2.2.在PyCharm上跑通 一.Keras基础概念 Keras是深度学习中的一个神经网络框架&#xff0c;是一个高级神经网络API&#xff0c;用Python编写&#xff0c;可以在TensorFlow&#xff0c;CNTK或Theano之上运行。 …

【labVIEW】学习记录

【labVIEW】学习记录 一、简介二、安装及激活三、使用 回到目录 一、简介 labVIEW&#xff08;Laboratory Virtual Instrument Engineering Workbench&#xff09;是一款由美国国家仪器公司&#xff08;National Instruments&#xff09;开发的可视化编程环境和开发平台。LabV…

Windows在局域网内开启共享文件夹

局域网内多台电脑开启共享文件夹可以提高使用舒适度&#xff0c;而共享文件夹的设置方式也非常简单。 1、开启网络共享 1.1 确定网络类型&#xff1a;公用or专用 首先我们需要确定自己的网络类型&#xff0c;首先从网络和共享中心可以看到我的电脑连接了一个wifi&#xff0c…

snmp网管服务MIB Browser使用

MIB Browser 软件打开显示界面&#xff0c;首先需要配置地址、端口号、团体名、snmp版本点击Advanced&#xff0c;弹出配置界面 配置成功后双击走测列表信息就可以查看交换机端口状态、版本号等信息&#xff1b; 例如&#xff1a;我的交换机8号端口是正常&#xff0c;其他端口是…

基于FPGA的高效除法器

FPGA可以通过除号直接实现除法&#xff0c;但是当除数或被除数位宽较大时&#xff0c;计算会变得缓慢&#xff0c;导致时序约束不能通过。此时可以通过在除法IP中加入流水线来提高最大时钟频率&#xff0c;这种方式提高时钟频率也很有限。如果还不能达到要求&#xff0c;就只能…

牛客刷题之列表

文章目录 生成数字列表列表的长度添加列表元素append() 列表尾添加insert(index,elem) 在任意位置插入 删除列表元素pop(index) 删除下标为index 的元素并返回remove(x) 删除指定元素 生成数字列表 方法一&#xff08;普通方法&#xff09; num input() newnum num.split() a…

Flutter中实现中国省份地图

效果展示(这里只展示局部&#xff0c;完全展示违规)&#xff1a; 可以点击省份改变颜色&#xff0c;更多功能可以自行拓展。 注&#xff1a;非完整中国地图&#xff01;&#xff01;&#xff01; 本文用于记录在Flutter项目中安卓端实现中国地图&#xff0c;因为实现过程是通过…

vue项目中debugger不生效问题解决

Vue中使用debugger在chrome谷歌浏览器中失效问题&#xff08;已解决&#xff09;_vue debugger不生效-CSDN博客 卡了半天,最后解决了

Python中安全删除列表元素的实用技巧详解

概要 在 Python 中&#xff0c;列表是一种常用的数据结构&#xff0c;用于存储一组有序的元素。然而&#xff0c;有时候需要从列表中删除特定的元素&#xff0c;以满足需求。本文将介绍一些安全删除列表元素的实用技巧&#xff0c;以及如何处理各种情况下可能出现的异常。 使用…

​第20课 在Android Native开发中加入新的C++类

​这节课我们开始利用ffmpeg和opencv在Android环境下来实现一个rtmp播放器&#xff0c;与第2课在PC端实现播放器的思路类似&#xff0c;只不过在处理音视频显示和播放的细节略有不同。 1.压缩备份上节课工程文件夹并修改工程文件夹为demo20&#xff0c;将demo20导入到Eclipse或…

代码随想录算法训练营29期|day30 任务以及具体安排

332.重新安排行程 class Solution {private LinkedList<String> res;private LinkedList<String> path new LinkedList<>();public List<String> findItinerary(List<List<String>> tickets) {Collections.sort(tickets, (a, b) -> a.…

Spring基于dynamic-datasource实现MySQL多数据源

目录 多数据源实现 引入依赖 yml配置文件 业务代码 案例演示 多数据源实现 引入依赖 <dependency><groupId>com.baomidou</groupId><artifactId>dynamicdatasourcespringbootstarter</artifactId><version>3.5.0</version> &…

Java玩转《啊哈算法》排序之桶排序

过去心不可得&#xff0c;现在心不可得&#xff0c;未来心不可得 目录在这里 楔子代码地址桶排序代码核心部分优缺点 完整代码演示 升级版核心代码完整代码演示 楔子 大家好&#xff01;本人最近看了下《啊哈算法》&#xff0c;写的确实不错&#xff0c;生动形象又有趣&#x…

AR 自回归模型

文章目录 总的代码ADF 检验(是否平稳)差分操作拟合AR 模型预测可视化总的代码 import pandas as pd import numpy as np import matplotlib.pyplot as plt from statsmodels.tsa.ar_model import AutoReg from statsmodels.tsa.stattools import adfuller# 生成一个示例时间序…

【开源】基于JAVA语言的假日旅社管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统介绍2.2 QA 问答 三、系统展示四、核心代码4.1 查询民宿4.2 新增民宿评论4.3 查询民宿新闻4.4 新建民宿预订单4.5 查询我的民宿预订单 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的假日旅社…