亚信安慧AntDB受邀分享核心业务系统全域数据库替换实践

近日,亚信安慧AntDB数据库凭借丰富的核心业务系统升级替换能力和经验,受邀参与IT168组织的第三期“国产软硬件升级替换之路”的直播沙龙。

亚信安慧AntDB数据库相关负责人发表《基于AntDB的CRM全域数据库替换实践》的精彩演讲,通过通信行业率先完成CRM全域数据库替换的创新实践,与业界同仁共同探讨,核心软硬件替换升级过程中有哪些可供借鉴的方法论以及如何在实操层面有效填坑避雷。

01丰富的国产化升级改造经验

亚信安慧AntDB数据库是亚信科技控股有限公司(下称“亚信科技”)自主研发的一款数据库产品,于 2008年正式上线为通信运营商核心计费系统提供数据管理能力和服务,同时亚信安慧AntDB数据库也是亚信科技投身信创产业的战略性产品。

图片

图1:亚信安慧AntDB数据库演进历程

截至目前,亚信安慧AntDB数据库已经完成了8次大的版本升级,在通信运营商核心业务系统平稳运行15年,服务终端用户超过10亿,每秒处理的通信核心交易数据超百万,是通信行业业务系统升级改造的见证者和参与者,不仅助力通信行业客户实现多个业务系统在行业内完成“首个”升级改造的突破,还帮助交通等行业客户率先完成核心业务系统的升级改造。

图片

图2:亚信安慧AntDB数据库典型客户

在本次“国产软硬件升级替换之路”的直播沙龙中,针对国产化过程中的难点,亚信安慧AntDB数据库负责人从实操层面做了倾情分享,为国产软硬件的升级替换之路提供了实实在在的方法和经验。

02核心业务系统数据库升级改造难点

亚信安慧AntDB数据库负责人表示,虽然国产软硬件正在从“基本可用”向“好用易用”持续演进,但对于客户来说,国产软硬件升级替换,某种程度上还是在用不成熟的产品替换成熟产品,为了减少升级替换的风险,短期内也必将面临并行期双边投入的问题,所以怎么替,从哪儿开始替就显得非常重要。

核心业务系统数据库是关系企业命脉的重要基础软件,找到其顺利升级的方法,业务系统全域数据库升级实现起来就会非常轻松。那么,核心业务系统升级改造的难点有哪些呢?亚信安慧AntDB数据库负责人根据实际的升级替换经验,从研发、工程、运维三个层面来解读。

研发-应用系统改造量大:对象属性差异、字段属性差异、语法差异、物理模型改造以及应用改造和数据库割接、配套的数据交换能力建设等;

工程-割接业务影响大:数据库是IT系统的核心服务,数据库的跨库割接涉及数据准确性问题、数据持久化安全、跨库割接技术复杂、数据校验耗时久、停机窗口长,核心库割接业务影响极大;

运维-成熟度不足稳定性风险:发展晚、积累少,无大规模的高并发实践;SQL优化器相对弱,对复杂SQL支持弱;跟硬件环境,系统环境都有待进一步磨合;日志、性能视图、运维工具等相关配套的运维能力不完善。

针对这些难点,亚信安慧AntDB数据库负责人也提出了亚信安慧AntDB在实践中的迁移替换思路与大家探讨,如图3。

图片

图3:亚信安慧AntDB在实践中的迁移替换思路及时间规划

03CRM系统全域数据库替换为什么选亚信安慧AntDB?

通信行业CRM系统承载运营商支撑系统中面向客户管理的核心,涉及市场营销、销售实现、客户服务等多个领域。电信CRM系统数据库替换有用户规模大、业务繁多、流程复杂等特点。CRM系统作为运营商核心交易系统,数据库使用场景相对固定,更加侧重性能以及稳定性,中国移动某省公司从自主维度、技术维度、生态维度三个方面综合评估,最终确定了使用亚信安慧AntDB数据库进行CRM系统数据库的升级改造。

从自主维度说,亚信安慧AntDB是应运营商核心业务场景的需求而诞生的数据库产品,第一代产品的每一行代码都源自于亚信安慧AntDB数据库的工程师,满足核心数据库升级改造自主创新层面的要求;

从技术维度说,亚信安慧AntDB诞生并直接应用于通信行业核心系统,,是在运营商核心系统的生产环境成长起来的数据库产品,能够随着通信技术的发展和通信行业场景需求的变化进行产品技术的迭代升级;

从生态维度说,亚信安慧AntDB不仅支持全球影响力大、社区繁荣、开放度高、生态增长迅速的PG内核,对上下游国产软硬件的适配程度也极高。

04基于亚信安慧AntDB 的CRM业务系统全域数据库替换方案

在本次演讲中,亚信安慧AntDB负责人带来了中国移动某省CRM业务系统全域数据库替换方案,并对方案中的技术创新进行了详细说明。


图4:高可用方案架构

高可用方案

  • 每套国外商用数据库均采用单机版亚信安慧AntDB数据库替换(部署架构为一主两备)。

  • 数据库节点分布于两个机房,并使用 adbhamgr + adbdcs 组件进行高可用管理,主节点故障时能自动切换,adbhamgr+adbdcs确保高可用。


图5:异构数据库迁移方案

异构数据库迁移方案:

  • 增量同步:在停机之前,先使用同步工具将国外商用数据库数据全量同步到亚信安慧AntDB数据库中;后续同步工具持续将Oracle中的增量数据同步到亚信安慧AntDB数据库中;在割接时,只需要同步最后一次增量,即完成数据同步。

  • 方案结论:96%高兼容度的亚信安慧AntDB数据库,与国外商用数据库原库语法、函数等高度兼容,节省了迁移的成本和代价,为客户节约成本,迁移后国产数据库性能相比原环境提升13%,并实现上线后0故障率。

05CRM系统全域数据库替换带来的技术创新

在方案实施过程中,亚信安慧AntDB数据库有以下几个创新点值得关注:

1. 构建SQL解析引擎,极大提升国外商用数据库的兼容性

亚信安慧AntDB 6.0在割接试点过程中实现了6次版本升级,在原生Postgresql语法解析基础上构建了独立的国外商用数据库语法解析器,实现对国外商用数据库的语法、函数、特性的多方面兼容能力,减少了超过2万处代码修改,大幅降低应用适配改造的工作量。

2.数据库读写分离,提升数据库承载容量

基于AntDB+DBProxy实现读写分离架构,实现现有单体数据库无法突破的瓶颈,读写分离全面上线后,从库承担约75%查询量,主库CPU负载下降53%,大大提升整体性能。

图片

图6:读写分离架构图

除了以上技术创新,为解决割接过程中出现的子事务性能问题、从库读与主库冲突、ARM服务器 lse原子指令、等问题,亚信安慧AntDB数据库性能也得到极致优化和大幅提升(详情可关注公众号下载演讲PPT)。

06结语

在本期“国产软硬件升级替换之路”的直播沙龙中,亚信安慧AntDB的分享的升级替换实战经验和方法得到了各位演讲嘉宾和直播观众的一致关注和好评,增强了与会人员对国产软硬件升级替换的信心,相信亚信安慧AntDB升级替换方案将助力更多行业企业实现数据库的创新升级。

关于亚信安慧AntDB数据库

亚信安慧AntDB数据库始于2008年,在运营商的核心系统上,为全国24个省份的10亿多用户提供在线服务,具备高性能、弹性扩展、高可靠等产品特性,峰值每秒可处理百万笔电信核心交易,保障系统持续稳定运行近十年,并在通信、金融、交通、能源、物联网等行业成功商用落地。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

cocos creator [Window] Cannot read property ‘dump‘ of null

写脚本的时候,出现了如下的问题, [Window] Cannot read property dump of null 原因:在下图中,方式一是正常的,而方式二则会爆出此错误,所以需要初始化,给它赋值

如何提高Pycharm的使用体验?

汉化 文件---设置---插件---chinese---安装---重启ide 代码补全 tabnine 文件---设置---插件---tabnine---安装---重启ide 重启ide后生效,补全效果如下 自定义背景 文件---设置---外观---背景图像---选择图片---调整透明度保存即可 设置头部声明 英文版…

Python 网络爬虫(四):初识网络爬虫

《Python入门核心技术》专栏总目录・点这里 文章目录 什么是爬虫爬虫的工作原理应用场景反爬虫合法和道德问题Robots 协议练习爬虫的一些网站总结 大家好,我是水滴~~ 在当今数字化时代,互联网上充斥着大量的数据和信息,而我们常常需要从这个…

python笔记:dtaidistance

1 介绍 用于DTW的库纯Python实现和更快的C语言实现 2 DTW举例 2.1 绘制warping 路径 from dtaidistance import dtw from dtaidistance import dtw_visualisation as dtwvis import numpy as np import matplotlib.pyplot as plts1 np.array([0., 0, 1, 2, 1, 0, 1, 0, 0…

android如何优雅的编写OpenGl的shader代码

通常在android里编写openGl代码的方式是创建一个类,类里面用硬编码的形式引入两个shader,如下图: 这里把glsl语言通过string字符串的形式定义在类里,虽然便于管理,但是不利于阅读和编写 那么有没有比较优雅的解决方案…

详解Python 迭代器介绍及作用

文章目录 迭代器:初探什么是迭代器?通过迭代器进行迭代迭代器 for 循环的工作构建自定义迭代器Python 无限迭代器Python 迭代器的好处总结关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包…

Uncle Maker: (Time)Stamping Out The Competition in Ethereum

目录 笔记后续的研究方向摘要引言贡献攻击的简要概述 Uncle Maker: (Time)Stamping Out The Competition in Ethereum CCS 2023 笔记 本文对以太坊 1 的共识机制进行了攻击,该机制允许矿工获得比诚实同行更高的挖矿奖励。这种名为“Uncle Maker”的攻击操纵区块时间…

基于Java SSM框架实现实现人事工资管理系统项目【项目源码+论文说明】

基于java的SSM框架实现人事工资管理系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个人事管理系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发。在引言中,作者将论述人事…

Vue学习计划-Vue2--Vue组件(一)认识组件

1.0 引入组件 传统方式编写应用 使用组件方式编写应用 1.1 模块 理解:向外提供特定的js程序,一般就是一个js文件为什么:js文件很多很复杂作用:复用js,简化js的编写,提高js运行效率 1.2 组件认识 理解: …

提高工作效率的JavaScript单行代码

摘要: 平时在根据ui设计图处理数据的时候,需要用到js的一些方法!所以这里总结一些提高工作效率的JavaScript单行代码! 目录概览 摘要:1.#生成随机字符串2.# 转义HTML特殊字符3.# 单词首字母大写4.# 将字符串转换为小驼…

第74讲:MySQL数据库InnoDB存储引擎事务:Redo Log与Undo Logo的核心概念

文章目录 1.InnoDB引擎中的逻辑存储结构2.事务的基本概念3.Redo log的核心概念3.1.什么是Redo log3.2.如果没有redo log面临的问题3.3.使用redo log之后是怎样的流程 4.Undo log的核心概念 1.InnoDB引擎中的逻辑存储结构 InnoDB存储引擎的逻辑结构分为以下几层: Ta…

Distilling Knowledge via Knowledge Review 中文版

Distilling Knowledge via Knowledge Review: 通过知识回顾提炼知识 摘要 知识蒸馏将知识从教师网络传输到学生网络,旨在极大提高学生网络的性能。先前的方法大多集中在提出特征转换和损失函数,用于同一级别特征之间的改进效果。我们不同地…

第二十一章 网络通信

21.1 网络程序设计基础 网络程序设计编写的是与其他计算机进行通信的程序。 局域网与互联网 服务器是指提供信息的计算机或程序,客户机是指请求信息的计算机或程序。网络用于连接服务器与客户机,实现两者间的相互通信。 网络协议 网络协议规定了计算…

集成开发环境PyCharm的使用【侯小啾python基础领航计划 系列(三)】

集成开发环境 PyCharm 的使用【侯小啾python基础领航计划 系列(三)】 大家好,我是博主侯小啾, 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

企业如何结合数字化技术实现精益生产

企业要想长远良性发展,就必须不断追求生产效率的极致,才能不断对抗各方各面带来的压力。结合国家大环境趋势,绿色生产已然成为了国家关注的重点,所以老旧耗能的企业生产模式注定会被时代所淘汰。企业只有紧跟国家的发展步伐&#…

QScrollArea的使用

参考&#xff1a; QT的自动滚动区QScrollArea的用法&#xff0c;图文详解-CSDN博客 demo: QScrollArea *scrollArea new QScrollArea;QWidget *pWgt new QWidget();QHBoxLayout *pLayout new QHBoxLayout();for(int i 0; i < 100; i){QPushButton *pBtn new QPushB…

【hacker送书第9期】算法训练营(入门篇)

第9期图书推荐 内容简介作者简介精彩书评图书目录概述参与方式 内容简介 本书以海量图解的形式&#xff0c;详细讲解常用的数据结构与算法&#xff0c;又融入大量的竞赛实例和解题技巧。通过对本书的学习&#xff0c;读者可掌握12种初级数据结构、15种常用STL函数、10种二叉树和…

java基础之循环

Java中有三种主要的循环结构&#xff1a; while 循环do…while 循环for 循环 1、while循环 1.1、结构 while( 布尔表达式 ) { //循环内容 } 1.2、实例 public class TestWhile {public static void main(String[] args) {int x 1;while (x<10){System.out.println("…

面试官:说说webpack的构建流程?

面试官&#xff1a;说说webpack的构建流程? 一、运行流程 webpack 的运行流程是一个串行的过程&#xff0c;它的工作流程就是将各个插件串联起来 在运行过程中会广播事件&#xff0c;插件只需要监听它所关心的事件&#xff0c;就能加入到这条webpack机制中&#xff0c;去改变…

万兆单模光模块SFP-XG-LX:高速长距离数据传输利器

随着企业和个人对高速数据传输的需求不断增加&#xff0c;网络设备需要不断更新换代&#xff0c;以满足更高速、更远距离的传输要求。万兆单模光模块SFP-XG-LX作为一种基于光纤传输的高速网络模块&#xff0c;适用于长距离的数据传输。本文将介绍万兆单模光模块SFP-XG-LX的特点…