基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
分布式数据库的概念与应用
本文将以 OceanBase 分布式数据库为例,分析分布式数据库的基本概念、与集中式数据库的核心差异、系统架构设计、关键特性以及其在实际应用场景中的表现。
什么是分布式数据库
分布式数据库系统的设计目标主要包括:性能、可扩展性、高可用性、容错性和一致性。通过将数据分布在多个节点上,分布式数据库可以通过增加节点来扩展系统的存储和计算能力,解决单机数据库在处理海量数据时的性能瓶颈。此外,分布式数据库还通过冗余和副本机制提高了系统的容错性和可靠性,确保即使某些节点出现故障,系统仍能正常工作。
总的来说,分布式数据库是为了应对大规模数据存储和高并发访问等需求而设计的,它通过分布式存储和并行处理技术,实现了比传统集中式数据库更高的性能、可扩展性和可用性。
分布式数据库与集中式数据库的区别是什么
分布式数据库系统架构
OceanBase 分布式数据库采用无共享(Shared-Nothing)分布式集群架构,各个节点之间完全对等,每个节点都有自己的 SQL 引擎、存储引擎、事务引擎,运行在普通 PC 服务器组成的集群之上。
OceanBase 在服务器上会运行叫做 observer 的单进程程序作为数据库的运行实例,使用本地的文件存储数据和事务 Redo 日志。
用户存储的数据在分布式集群内部可以存储多个副本,用于故障容灾,也可以用于分散读取压力。在一个可用区内部数据只有一个副本,不同的可用区可以存储同一个数据的多个副本,副本之间由共识协议保证数据的一致性。
OceanBase 内置多租户特性,每个租户对于使用者是一个独立的数据库,一个租户能够在租户级别设置租户的分布式部署方式。租户之间 CPU、内存和 IO 都是隔离的。
OceanBase的数据库实例内部由不同的组件相互协作,这些组件从底层向上由存储层、复制层、均衡层、事务层、SQL 层、接入层组成。
更详细介绍,可以参考文档《OceanBase 分布式数据库整体架构》
分布式数据库有哪些特点
分布式数据库的应用场景
高并发
金融级高可用
海量数据场景技术降本
分库分表一体化升级
分布式数据库的应用案例
● 金融TPS(每秒处理事务数)提升 6 倍
● 跑批效率提升超过 7 倍
● 处理能力提升 1000 倍
● 新品上线提速 80%
● 外部渠道接入效率提升 6 倍
● 稳定支撑 节假日流量洪峰
● 系统实时分析算力提升 45%
● 同等配置轻松应对 4 倍流量
● RPO=0