【AntDB 数据库】国产分布式数据库发展趋势与难点

引言:

日前,为更好地满足亚信科技客户对于数据管理的需求,提高通用型数据库的产品服务能力与业务拓展能力,亚信科技分布式数据库AntDB发布V7.0版本产品,助力运营商核心系统实现全方位的自主可控与业务系统的平稳上线。面向未来,国产数据库发展仍任重道远,分布式数据库也将在这一过程中扮演重要角色,分析、讨论国产分布式数据库发展趋势与难点,不仅对AntDB数据库的发展,也对国产数据库的发展具有一定的参考和借鉴意义。

一、国产数据库正处在发展机遇期

信创产业即信息技术应用创新产业,是我国近年来的一项国家战略,也是当今形势下经济发展的新动能,随着相关政策陆续出台,信创改革大潮下,推动探索安全可控的核心技术与产品渐成趋势。在数据库领域,党政机关明确将全部采用国产数据库,2020年已在金融行业先行试点。国产数据库厂商紧随趋势加速打造各自的拳头产品,从2020年至今,国产数据库已经从党政、金融等领域,渗透到通信、能源、交通、工业物联网等领域,市场前景十分可观。

2022年6月,达梦数据、星环科技等数据库厂商陆续递交招股书,在国内科创板块以7亿营收撬动几百亿市值,这一“信号”表明国产数据库的发展已进入快车道。一方面,国产数据库发展恰逢政策机遇,过去国内数据库市场被Oracle、IBM 等企业垄断,近年来受益于政策的加速推进,国产数据库企业的市场份额得以显著提升。另一方面,国产数据库发展也处在市场机遇期,数据库等基础软件的服务方式逐渐向云化发展,随着云计算的大规模应用,数据库也迎来新的发展契机。

二、分布式数据库的发展机遇与挑战并存

数据库最早诞生在上世纪60年代,IBM实验室提出的”关系模型”理论为风靡全球近50年的关系型数据库技术奠定了基础。随着信息通信技术与移动互联网的高速发展,业务表现出高并发读写、海量数据处理、数据结构不统一的特点,后关系型数据库开始涌现,对传统关系型数据库做出了进一步补充和完善,分布式数据库就在此时蓬勃发展,为人熟知。

相比于传统关系型数据库,分布式数据库具有平滑扩展、高可用、低成本等显著优点,如果将传统关系型数据库、非关系型数据库和分布式数据库对比总结,可以得到表1:

由上表可以看出,分布式数据库属于时代进化的结果,功能几乎结合了传统关系型与非关系数据库的集中优势。但由于发展时间较短,其标准体系及评价体系不够健全,生态体系不够完善,未来我国分布式数据库的发展必将机遇与挑战并存。

2.1、分布式数据库的优势

分布式数据库平滑扩展、高可用、低成本的三大主要优点带来巨大的发展潜力,下面以亚信科技AntDB数据库为例展开论述这三大优点。

一是平滑扩展与高性能,在分布式执行计划中,表数据被分散在多个节点上,这大大降低了单节点的数据量,分布式执行计划还可以做到读写分离,有助于充分利用多个节点的存储与计算资源,有效地提升数据库的吞吐量,目前AntDB数据库可以按需求平滑地进行节点扩展,支持几十万级甚至百万级TPS/QPS[1](吞吐量)处理的核心要求。

二是高可用,这一点对企业数据安全和保障业务连续性至关重要,分布式数据库通过主备架构设计,主节点故障自动切换至备中心(failover),保障核心系统的连续可用;此外,各数据中心通过同步/异步复制来保障数据的一致性和事务的完整性,遇故障切换时不影响业务的正常运行。AntDB数据库通过多副本、分布式事务处理等机制,以及异地多中心的部署方案,以保证高可用性。

三是低成本,分布式数据库是基于通用的 PC 服务器和操作系统的,在硬件成本上有非常明显优势,此外,AntDB数据库 与Oracle数据库的兼容率高达96%,有效降低了程序迁移的风险,减少了重写应用的成本。

2.2、分布式数据库发展存在的问题

由于分布式数据库节点多,集群结构复杂,也有其自身的短板,加之分布式数据库发展时间不长,仍有许多问题亟待解决。一是根据CAP理论[2],分布式数据库无法完美满足客户多重特性需求,如某些金融核心应用既要求高一致性,又要求高可用,有可能造成客户不得不舍弃或降低某些需求。二是分布式数据库运维管理较复杂,根据业务节点需要,分布式数据库通常由多台服务器组成,软硬件的运维和管理往往很复杂。三是分布式数据库产品成熟度待提高,如针对分布式数据库的优化器、数据类型、复杂查询、自定义函数和存储过程等高级特性参差不齐。

三、亚信科技AntDB数据库实践分享

和国外成熟稳定的商业数据库相比,国产数据库在性能、稳定性、生态等方面存在一定差距,我国数据库的自主可控替换,也不是简单的以库换库,而是用新体系替换旧体系,在架构、研发、上线、运维等方面,全面降低对特定数据库的依赖,这将是一个持续且艰难的过程。在这一过程中,亚信科技推出国产分布式数据库AntDB,核心团队攻坚不断,2015年增加Oracle兼容特性、2017年实现秒级在线扩容、2019年增加内核级读写分离等功能、2022年支持内存与磁盘双引擎等等。AntDB数据库的应用领域也从通信向金融、交通、能源等行业拓展。

作为阶段性成绩,亚信科技AntDB数据库在运营商自主可控替换项目中落地,具有重要意义:一是探索出自主可控的数据库架构,通过研发微库架构,在架构层面消除应用对特定数据库的依赖;二是验证数据库软硬件全自主可控的可行性,目前,亚信科技AntDB数据库及华为鲲鹏服务器的组合解决方案,可以在运营商核心的交易场景替代国外商业解决方案。三是探索出基于灰度发布[3]能力的数据库割接方案,实现不停服、零故障的数据库割接,将数据库国产化替换的业务影响降至最低。

AntDB分布式数据库解决方案在通信行业大规模的商用落地并且获得客户的广泛好评。另外我们判断不仅在通信行业,也可同时推广至如金融、党政、能源、邮政等重要的关键基础设施行业领域中,加速推动各行业的数字化转型升级。

在金融行业,AntDB应用在北方某保险公司的大数据系统中,成功商用落地,其成功经验可以同样推广至以分析型业务为主的其他金融或证券业务系统中。

在政企行业,AntDB应用在南方某省高速的高速ETC计费与大数据平台,同样该成功经验可以推广至其他类似高数据并发的行业,如IoT物联网场景等。

面向未来,随着AntDB数据库不断增强通用性、标准性和安全性,为更好地服务亚信科技的行业客户,AntDB数据库将继续加强产品研发的投入,实现一套数据库对多种数据类型、多种业务场景的统一支持,并确保数据可靠,不丢、不错、不重,为客户提供高质量的数据库产品。

​关于亚信安慧 AntDB 数据库

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

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

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

相关文章

nodejs微信小程序+python+PHP北京地铁票务APP-计算机毕业设计推荐 -安卓

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

web漏洞的攻击及抓取攻击流量

以dvwa靶场为例,使用wireshark抓取攻击流量,并定位关键字段 SQL注入 攻击 在sql注入攻击 1 and 12 union select version(),2#流量特征 在数据包中可以清晰的查看源IP和目的IP 在Wireshark选中Ethernet0网卡 点击Submit,进行抓包 利用…

【STM32】TIM定时器编码器

1 编码器接口简介 Encoder Interface 编码器接口 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度 接收正交信号&#…

达梦数据库dm8守护集群部署手册

环境说明 操作系统:liunx-centos7.6 服务器:3台虚拟机(主备数据库各一台,监视器一台(可选)) 达梦数据库版本:达梦V8 一、安装前准备工作 参考达梦官方文档:https://eco.dameng.com/documen…

记一次堆内外内存问题的排查和优化

为优化淘宝带宽成本,我们在网关 SDK(Java)统一使用 ZSTD 替代 GZIP 压缩以获取更高的压缩比,从而得到更小的响应包。具体实现采用官方推荐的 zstd-jni 库。zstd-jni 会调用 zstd 的 c 库。 背景 在性能压测和优化过程中&#xff0…

基于 Gin 的 HTTP 中间人代理 Demo

前面实现的代理对于 HTTPS 流量是进行盲转的,也就是说直接在 TCP 连接上传输 TLS 流量,但是我们无法查看或者修改它的内容。当然了,通常来说这也是不必要的。不过对于某些场景下还是有必要的,例如使用 Fiddler 进行抓包或者监控其…

Git 五分钟教程速度入门

Git 五分钟教程速度入门 分类 编程技术 许多人认为 Git 太混乱,或认为它是一种复杂的版本控制系统,其实不然,这篇文章有助于大家快速上手使用 Git。 入门 使用Git前,需要先建立一个仓库(repository)。您可以使用一个已经存在的…

HLS实现图像膨胀和腐蚀运算--xf_dilation和xf_erosion

一、图像膨胀和图像腐蚀概念 我们先定义,需要处理的图片为二值化图像A。图片的背景色为黑色,即像素值为0。图片的目标色为白色,即像素值为1。 再定义一个结构元S,结构元范围内所有的像素为白色,像素值为1。 1、图像的…

自下而上-存储全栈(TiDB/RockDB/SPDK/fuse/ceph/NVMe/ext4)存储技术专家成长路线

数字化时代的到来带来了大规模数据的产生,各行各业都面临着数据爆炸的挑战。 随着云计算、物联网、人工智能等新兴技术的发展,对存储技术的需求也越来越多样化。不同应用场景对存储的容量、性能、可靠性和成本等方面都有不同的要求。具备存储技术知识和技…

HarmonyOS应用开发-闪屏启动页

这是鸿蒙开发者网站的一个应用《溪村小镇》示例代码,把闪屏启动页单拿出来,分析一下代码。 一、先上效果图 这是应用打开时的一个启动页,启动页会根据三个时间段(白天、傍晚、晚上)来分别展示溪村小镇不同的景色。 二…

RocketMQ-RocketMQ高性能核心原理与源码剖析(下)

融汇贯通阶段 ​ 开始梳理一些比较完整,比较复杂的完整业务线。 8、消息持久化设计 1、RocketMQ的持久化文件结构 ​ 消息持久化也就是将内存中的消息写入到本地磁盘的过程。而磁盘IO操作通常是一个很耗性能,很慢的操作,所以,…

MyBatis--07--启动过程分析、SqlSession安全问题、拦截器

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 谈谈MyBatis的启动过程具体的操作过程如下:实现测试类,并测试SqlSessionFactorySqlSession SqlSession有数据安全问题?在MyBatis中,SqlSess…

App备案、ios备案Bundle ID查询、公钥信息、SHA-1值

App备案、ios备案Bundle ID查询、公钥信息、SHA-1值 Bundle ID这个就不说了,都知道是啥,主要说公钥信息和SHA-1值的获取 打开钥匙串访问,找到当前需要备案App的dis证书,如下: #####右键点击显示简介 #####可以看…

ThinkPHP生活用品商城系统

有需要请加文章底部Q哦 可远程调试 ThinkPHP生活用品商城系统 一 介绍 此生活用品商城系统基于ThinkPHP框架开发,数据库mysql,前端bootstrap。系统分为用户和管理员。(附带配套设计文档) 技术栈:ThinkPHPmysqlbootstrapphpstudyvscode 二 …

小米手机锁屏时间设置为永不休眠_手机不息屏_保持亮屏

环境:打开手机自带的锁屏时间设置发现没有 永不息屏的选项 原因:采用了三星OLED屏幕,所以根据OLED屏幕特性,这个是为了防止烧屏而特意设计的。非OLED机型支持设置“永不” 解决方案1:原生系统是支持永不锁屏的&#…

【自定义Source、Sink】Flink自定义Source、Sink对redis进行读写操作

使用ParameterTool读取配置文件 Flink读取参数的对象 Commons-cli: Apache提供的,需要引入依赖ParameterTool:Flink内置 ParameterTool 比 Commons-cli 使用上简便; ParameterTool能避免Jar包的依赖冲突 建议使用第二种 使用Par…

STL(七)(map篇)

### 这里重点学习map ### 在实际做题过程中,multimap几乎用不到### unordered_map拥有极好的平均时间复杂度和极差的最坏时间复杂度,所以他的时间复杂度是不稳定的,unordered_map一般用不到,要做一个了解 1.map map是一种关联容器,用于存储一组键值对(key-value pairs),其中每…

鸿蒙开发组件之Slider

一、Slider控件是鸿蒙开发中的滑动条组建,初始化方式 Slider({min:0, //最小值max:100,//最大值value:30,//默认值step:10,//步长,每次滑动的差值style:SliderStyle.OutSet, //滑块的样式,默认outsetdirection:Axis.Horizontal, //水平方式的…

Transformer 简介

Transformer 是 Google 在 2017 年底发表的论文 Attention Is All You Need 中所提出的 seq2seq 模型。Transformer 模型的核心是 Self-Attention 机制,能够处理输入序列中的每个元素,并能计算其与序列中其他元素的交互关系的方法,从而能够更…

【自定义Source、Sink】Flink自定义Source、Sink对ClickHouse进行读和批量写操作

ClickHouse官网文档 Flink 读取 ClickHouse 数据两种驱动 ClickHouse 官方提供Clickhouse JDBC.【建议使用】第3方提供的Clickhouse JDBC. ru.yandex.clickhouse.ClickHouseDriver ru.yandex.clickhouse.ClickHouseDriver.现在是没有维护 ClickHouse 官方提供Clickhouse JDBC…