当前位置: 首页 > article >正文

OceanBase 数据库分布式与集中式 能力

OceanBase分布式数据库与集中式数据库的差异

    分布式数据库能解决金融行业最有挑战的高并发低延迟的核心交易系统的稳定性、扩展性、高性能问题。OB之所以一直强调分布式是说它具备很强的数据处理能力,当然从OB4.0开始也支持集中式了。

在实际业务场景中20%是分布式,80%是集中式      

数据库系统在信息化时代扮演着重要角色,而在数据库设计中,分布式数据库与集中式数据库是两种不同的架构模式。它们在数据存储、处理方式和可扩展性等方面存在显著差异

1. 数据存储方式:

集中式数据库将所有数据存储在单一服务器中,这使得数据管理和维护相对简单,但也造成了单点故障的风险。与之相反,分布式数据库将数据分散存储在多台服务器上,通过分片或分区的方式实现。这种分布式的存储方式提高了数据的可用性和冗余度,减少了单点故障的风险。

2. 数据处理方式:

在集中式数据库中,所有的数据处理都在同一台服务器上进行,因此处理速度受限于单台服务器的性能。而分布式数据库充分利用多台服务器的计算能力,可以并行处理大量数据,从而提高数据处理的效率和速度。

3. 可扩展性:

分布式数据库在面对大规模数据增长时表现出色。通过添加更多的服务器节点,分布式系统可以轻松地进行水平扩展,从而保持高性能和低延迟。相比之下,集中式数据库的扩展性有限,一旦服务器性能达到瓶颈,就需要进行垂直扩展,这往往是昂贵且复杂的。

4. 高可用性:

分布式数据库在高可用性方面具有优势。由于数据在多个服务器上复制,当某台服务器故障时,系统仍然可以从其他服务器中获取数据。集中式数据库在服务器故障时容易导致系统中断,可用性相对较低。

5. 安全性:

集中式数据库可以在单一服务器上实施统一的安全策略,便于管理和监控。分布式数据库由于涉及多台服务器,需要更复杂的安全措施来保护数据的完整性和隐私。

6. 成本:

集中式数据库通常具有较低的初始成本,因为只需要购买和维护单一服务器。然而,随着数据量的增长和性能的需求提升,额外的硬件和资源投入可能会显著增加。分布式数据库虽然初始投入较高,但随着需求的增长,其成本增长相对较稳定。

7. 复杂性:

分布式数据库的设计、部署和管理通常比集中式数据库更复杂。需要考虑数据分片、负载均衡、数据一致性等诸多因素。而集中式数据库的维护和管理相对较为简单,适用于小规模应用。

在国产数据库中,OceanBase数据库作为一种典型的分布式关系型数据库,其核心特点在于分布式能力,具备极高的可扩展性和高可用性。采用shared-nothing架构,各个数据节点之间完全对等,每个节点都有自己的 SQL 引擎、存储引擎、事务引擎,可以在普通 PC 服务器组成的集群之上,运行有高扩展、高可用要求的应用。OceanBase 分布式集群的多台机器同时提供数据库服务,并利用多台机器提供数据库服务高可用的能力。在上图中,应用层将请求发送到代理服务(Obproxy),经过代理服务的路由后,发送到实际服务数据的数据库节点(OBServer 节点),请求的结果沿着反向的路径返回给应用层。整个过程中不同的组件通过不同的方式来达到高可用的能力。在数据库节点(OBServer 节点)组成的集群中,所有的数据以分区为单位存储并提供高可用的服务能力,每个分区有多个副本。一般来说,一个分区的多个副本分散在多个不同的 Zone 里。多个副本中有且只有一个副本接受修改操作,叫做主副本(Leader),其他叫做从副本(Follower)。主从副本之间通过基于 Multi-Paxos 的分布式共识协议实现了副本之间数据的一致性。当主副本所在节点发生故障的时候,一个从节点会被选举为新的主节点并继续提供服务。

综上所述,分布式数据库和集中式数据库在数据存储、处理方式、可扩展性、高可用性、安全性、成本和复杂性等方面存在明显的差异。选择合适的数据库架构应根据具体业务需求和规模来进行权衡,以实现最佳的性能和效益。

如需要系统学习交可以联系:竺老师 

0001 0101 0001 0110  0111 0001 0001 0110 0011 0000 0010


http://www.kler.cn/a/443056.html

相关文章:

  • StarRocks Awards 2024 年度贡献人物
  • 深入理解 Python 的多进程编程 (Multiprocessing)
  • Ubuntu问题 -- 硬盘存储不够了, 如何挂载一个新的硬盘上去, 图文简单明了, 已操作成功
  • Three.js教程015:全面讲解Three.js的UV与应用
  • 30天开发操作系统 第 12 天 -- 定时器 v1.0
  • SSM-SpringMVC-请求响应、REST、JSON
  • 【使用LLM搭建系统】1语言模型,提问范式与 Token
  • MySQL创建及增删改查
  • VisionPro 机器视觉控件篇 之 CogBlobTool 斑点工具
  • php-fpm.conf 部分参数说明新手教程
  • 电脑蓝牙修复工具:一键解决蓝牙连接问题
  • ES6学习模板字符串、解构赋值(三)
  • web自动化测试框架playwright
  • 【自然资源】“三区三线”,旅游开发相互冲突怎么办?
  • 12月22日!蓝桥杯MWORKS新赛道「智能装备数字化建模大赛」总决赛暨颁奖典礼即将启幕
  • 利器 | AppCrawler 自动遍历测试工具实践(一)
  • 02-2.python入门语法一变量与数据类型2
  • C语言(结构体练习)
  • 游泳溺水识别数据集,对9984张原始图片进行YOLO,COCO JSON, VOC XML 格式的标注,平均识别率在91.7%以上
  • 高校成人教育学籍管理系统设计与实现
  • 流量分析总结(实战[INSHack2019]Passthru)
  • Linux驱动开发(15):Framebuffer子系统–LCD驱动实验
  • 【Qt】加载MySQL数据库驱动失败的解决方法
  • linux 安装redis
  • 【每日一题 基础题】[蓝桥杯 2020 省 AB3] 乘法表
  • 2025年入职/转行网络安全,该如何规划?网络安全职业规划