写点什么

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

作者:星环科技
  • 2024-01-25
    上海
  • 本文字数:3655 字

    阅读完需:约 12 分钟

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

星环科技自主研发的分布式交易型数据库 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 的数据脱敏和隐私计算能力,能够充分保障数据库内的数据存、算、用安全。

用户头像

星环科技

关注

还未添加个人签名 2020-10-22 加入

领航大数据与人工智能基础软件新纪元

评论

发布
暂无评论
技术解读 | KunDB助力头部金融机构关键系统的Oracle国产替代_oracle_星环科技_InfoQ写作社区