12 月 1 日,在 2021 LIGHT 开发者云大会上,恒生电子正式发布自主研发的金融分布式数据库 LightDB。LightDB 采用分布式架构,计算和存储分离,支持多存储引擎,多副本高可用,同时内置数据库管理平台,通过与其他数据库连接进行备份。
LightDB 接口分三类:第一种是通常的访问协议;第二种是直连到计算节点的模式;第三种为极速的模式,达微秒级,可以连到可插拔的存储层接口。LightDB 引入了 Coordinator,来负责接收和分析用户的查询请求,并调度到不同的节点上执行。Coordinator 有一主一备,实时同步数据。数据存储可以是行式存储、列式存储,也可以是内存式存储。
LightDB 底层设置了 EM-Agent,来进行运维管理、主机监控、数据库的监控,同时做一些告警和备份修复,还能安排一些定时任务。另外,LightDB 安装了同步复制工具,可以把其他数据库的数据同步复制到 LightDB 当中。
Light DB 架构
据恒生研究院院长白硕介绍,金融领域对数据库的需求主要在两方面:一是技术特性,如稳定、可靠、性能、安全等;二是厂商提供的运维技术支持,如故障诊断、易运维性、易安装性、易迁移性等。企业采购数据库并不是买软件,更多是厂商在运维、配置和优化等方面的服务。新厂商提供的服务必须可以与原来数据库厂商旗鼓相当。
通过需求倒推,恒生电子基于开源的 PostgreSQL 稳定版,研发出了 LightDB。 LightDB 保留了 PostgreSQL 的核心性能,但在稳定性、高性能方面做了进一步优化,恒生电子也自主研发了监控、运维、分析等组件完善数据库的各项功能。官方表示,LightDB 具有金融级稳定性。所谓“金融级稳定性”是指拥有持续的、可预期的高性能,比如能够有效防止 TPS 等指标的抖动。LightDB 除了做数据冗余外,也进行了容灾备份。
数据对一致性需求并不相同。副本必须强一致性,但事务一致性可以多阶段解决。多版本一致性则要看实际情况。整个系统里,可能 20%的数据流量需要保持强一致性,剩下 80%的数据对一致性要求可能没有那么严。因此,LightDB 支持从表、到事务、到实例层面的差异化一致性控制,设立了一致性等级,来确保性能诉求和一致性诉求在解耦基础上的兼顾。
在白硕看来,分布式应该是特性而非属性。分布式架构是为了解决非常大容量的负载均衡问题,而不是一种标签。用户不需要一味追求分布式架构,根据自身情况来定就可以。
企业更换数据库常常面临两个重要限定条件:应用和数据。更换数据库的重点是更换数据库管理系统。不同数据库之间标准不同,实现平滑替换就变得很难,但企业并不想因更换数据库而影响原有应用的运行。
因此,为了更加兼容和易用,LightDB 通过 SQL 解析等方式,兼容了 Oracle 和 MySQL 的常用特性。“它们都有广泛的用户群,用户可能也有自己的研发习惯,通过兼容可以把这些习惯带到 LightDB 当中。”白硕表示。
在运维方面,根据 DBA 提出的一些痛点问题,恒生总结出了一套告警体系,并内置在 LightDB 中。这套预警体系可以帮助 DBA 和运维更快地定位到具体问题,如容量接近上限等,同时对数据库管理系统进行监控和分析。
白硕透露,LightDB 目前优先适配私有部署的应用。当前的云应用都需要在合规前提下进行,因此云应用市场占比份额还比较低,并不是行业重点。“LightDB 未来的发展会和云应用的实际推广步骤相一致,云应用高潮到来之前,我们会做好云版本的准备。”
据悉,LightDB 支持麒麟 Linux、openEuler 等国产操作系统,支持华为鲲鹏 ARM,海光 x86 处理器等国产处理器,并已成功通过中国信通院的分布式事务型数据库基础能力评测。目前,LightDB 已陆续应用于恒生 TA 产品及恒生内部的效能平台等系统,并正与外部金融机构客户一起探索国产数据库应用场景。
LightDB 版本从预览版起步,稳定下来的部分固化为企业版,应用在行业各种场景应用。同时,稳定下来的这部分核心代码也将用来回馈社区,LightDB 将持续兼容社区的新版本。
国内当前数据库主要分三类:主流商业数据库、开源数据库和国产数据库。虽然国产数据库正在发展,但对于技术选型非常慎重的金融行业来说,主流商业数据库仍占据了大部分市场。
根据恒生电子发布的《2022 金融科技趋势研究报告》,在金融行业对低时延等的特别需求下,金融数据库将朝着分布式、多元化、内存化方向发展。关系型数据库保持市场主体地位的同时,内存数据库、时序数据库、图数据库等非关系型数据库的比重将提升,并且开源和国产化数据库也将逐步被应用到金融核心系统。
“目前虽然有国产数据库或开源数据库有替代主流商业数据库的趋势,但也是要一步一步来的。”白硕说道。
评论