数据库管理 │ 浅谈从集中式到分布式数据库的转型要点

简介: 数据库管理 │ 浅谈从集中式到分布式数据库的转型要点

银行传统上使用的Oracle、Db2等商业数据库,都属于集中式架构。集中式数据库安装在单台服务器上,供本地用户和远程用户访问。

image.png


01、和传统集中式数据库的区别


与集中式数据库相比,分布式数据库有以下区别。

性价比:较传统集中式数据库,性价比更高;

性能上:整体性能优于传统集中式数据库;

可靠性:集中式数据库通常选择IBM小机,IBM小机可靠性高,分布式数据库组成x86服务器集群提升可靠性;

扩展性:集中式数据库通常纵向扩展(增加CPU个数、增加内存),分布式数据库可以纵向与横向同时扩展。


02、分布式数据库特点


扩展性:能够按照需求变化进行动态伸缩,支持横向与纵向扩展。

可靠性:不存在单点,服务不会因为单点失效问题而中断,切换机制要更丰富、整体容灾能力更强,数据可靠性、服务可用性有较高质量的保障。

高性能:由多台物理服务器组成,性能与数量成正比,基本呈线性增长。


03、分布式架构的局限性


分布式数据库带来了数据去中心化、负载分摊的优势,同时也带来了某些局限性。不单需要从架构上解决,还需要通过应用和规范来解决。

(1)分布式架构带来的复杂性,比集中式数据库运维难度大。

解决方案:通过平台化运维的新思路,统一上报告警及统计信息、统一日志中心、自动化监控、自动化运维、自动化巡检等。

(2)X86服务器可靠性低。

解决方案:服务器和数据都进行冗余配置,当出现节点故障时,通过主备切换保证服务的持续可用性。

(3)应用设计复杂度高。

解决方案:设计层面需合理设置分发键、增加冗余字段、减少多表关联、尽可能减少跨节点交互。

(4)分布式事务一致性维护成本高。

解决方案:分布式依赖网络,网络问题会导致事务一致性提交时间变长,因此应用编写的SQL语句应尽可能带分发键,减少跨节点事务数量。


04、分布式数据库设计与运维需要注意的点


从集中式数据库转型到分布式数据库后,需要从以下几方面关注设计开发和运维方面带来的新问题。


1●设计开发方面

设计开发方面主要涉及SQL兼容性问题、性能问题、异地一致性问题等。

(1)SQL兼容性问题。

GoldenDB完全兼容MySQL语法。但部分语句在分布式环境下执行代价过大,通过产品迭代,完善执行效率、逐步放开代价过大的SQL语句功能。

(2)性能问题。

由于数据切分到多个数据节点,涉及网络通信的交互次数和交换的数据量较多时,存在SQL语句性能慢、锁冲突、多分片访问不均匀问题,需要采取针对性的优化方案。

(3)异地数据一致性。

由于网络时延、网络带宽等问题,异地数据可能存在一致性问题。异地对外提供服务前,分布式数据库会进行业务数据一致性对齐,自动恢复到最新的一致性时间点。、


2●运维方面

运维方面主要涉及用户安全问题、数据安全问题、扩展性问题等,


(1)用户安全。

分布式数据库中涉及多种用户,包括Linux操作系统用户、数据库用户,对这些用户如何进行管理是个难题。需要按照相关规范控制用户权限:。

(2)数据安全。

数据的安全问题是重中之重,从设计、部署到日常运维均需要保障。

(3)扩展性。

扩展性包括纵向扩展和横向扩展,纵向扩展增加硬件,横向扩展增加数据分片。横向扩容之后需要重分布,重分布之前规划磁盘空间,确保空间足够。

(4)运维中的性能问题。

通过监控及时发现性能问题并进行优化。

(5)监控问题。

分布式数据库组件众多,通过单一种类的监控定位问题比较困难,需要一套或者多套监控体系配合来精准定位到故障节点。

(6)巡检问题。

需要开发一键式巡检脚本,通过生成的巡检报告展示分布式数据库运行趋势,从而配合监控更早定位出问题。

(7)备份恢复问题。

对数据备份和一致性恢复要求高,目前使用NBU软件进行备份恢复。

(8)读写分离问题。

为了提升交易处理的吞吐量,将读操作分流到备机。

(9)自动化应急。

分布式数据库涉及的组件多,必须实现自动化应急,真正做到“预防为主,处置高效”。


目录
相关文章
|
存储 关系型数据库 分布式数据库
喜报|阿里云PolarDB数据库(分布式版)荣获国内首台(套)产品奖项
阿里云PolarDB数据库管理软件(分布式版)荣获「2024年度国内首版次软件」称号,并跻身《2024年度浙江省首台(套)推广应用典型案例》。
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
阿里云PolarDB云原生数据库在TPC-C基准测试中以20.55亿tpmC的成绩刷新世界纪录,展现卓越性能与性价比。其轻量版满足国产化需求,兼具高性能与低成本,适用于多种场景,推动数据库技术革新与发展。
|
存储 NoSQL MongoDB
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
499 8
MongoDB数据库详解-针对大型分布式项目采用的原因以及基础原理和发展-卓伊凡|贝贝|莉莉
|
存储 监控 分布式数据库
ClickHouse分布式数据库动态伸缩(弹性扩缩容)的实现
实现ClickHouse数据库的动态伸缩需要持续的维护和精细的操作。从集群配置到数据迁移,再到监控和自动化,每一步都要仔细管理以确保服务的可靠性和性能。这些活动可以显著提高应用的响应性和成本效率,帮助业务根据实际需求灵活调整资源分配。
674 10
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
|
存储 关系型数据库 分布式数据库
【赵渝强老师】基于PostgreSQL的分布式数据库:Citus
Citus 是基于 PostgreSQL 的开源分布式数据库,采用 shared nothing 架构,具备良好的扩展性。它以插件形式集成,部署简单,适用于处理大规模数据和高并发场景。本文介绍了 Citus 的基础概念、安装配置步骤及其在单机环境下的集群搭建方法。
1109 2
|
SQL 存储 分布式数据库
分布式存储数据恢复—hbase和hive数据库数据恢复案例
分布式存储数据恢复环境: 16台某品牌R730xd服务器节点,每台服务器节点上有数台虚拟机。 虚拟机上部署Hbase和Hive数据库。 分布式存储故障: 数据库底层文件被误删除,数据库不能使用。要求恢复hbase和hive数据库。
656 12
|
SQL NoSQL 关系型数据库
超强数据库管理软件推荐-没有之一-还在用Navicat管理本地数据库的吗?还在为Navicat寻求绿色版或者购买正版的费用望而却步吗?DBeaver让你解决所有数据库本地编写问题-优雅草央千澈-DBeaver下载和安装
超强数据库管理软件推荐-没有之一-还在用Navicat管理本地数据库的吗?还在为Navicat寻求绿色版或者购买正版的费用望而却步吗?DBeaver让你解决所有数据库本地编写问题-优雅草央千澈-DBeaver下载和安装
1343 18
超强数据库管理软件推荐-没有之一-还在用Navicat管理本地数据库的吗?还在为Navicat寻求绿色版或者购买正版的费用望而却步吗?DBeaver让你解决所有数据库本地编写问题-优雅草央千澈-DBeaver下载和安装
|
SQL 运维 关系型数据库
体验用分布式数据库突破资源瓶颈,完成任务领智能台灯!
体验用分布式数据库突破资源瓶颈,完成任务领智能台灯!

热门文章

最新文章