数据库管理-第228期 Oracle全球分布式数据库-初探(20240812)
作者:胖头鱼的鱼缸(尹海文) Oracle ACE Pro: Database(Oracle与MySQL) PostgreSQL ACE Partner 10年数据库行业经验,现主要从事数据库服务工作 拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证 墨天轮MVP、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,HaloDB外聘技术顾问,OceanBase观察团成员,青学会MOP技术社区(青年数据库学习互助会)技术顾问 圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著 名社恐(社交恐怖分子) 公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。 除授权转载并标明出处外,均为“非法”抄袭
感觉这个月是我近一年来写文章最懒的一个月,所以最近准备开始新的系列,对Oracle 23ai的全球分布式数据库(Globally Distributed Database)进行探索。本期将对全球分布式数据库进行简单讲解。
1 概念
全球分布式数据库是一种对数据进行分区以分配计算和存储工作负载的方法,有助于实现超大规模计算。超大规模计算,hyperscale computing,是一种为了满足系统需求可以快速扩展或缩小的计算架构,这种架构创新最初是由运行分布式站点的互联网巨头推动的,并已被大型云提供商采用。
为了实现超大规模计算,一般采用一种叫分片(Sharding)的技术,即将数据段的集合,也就是分片分布存放在运行在大量服务器的多个数据库中。
Sharding使用分片间不共享硬件或软件的share-nothing架构,所有分片组合在一起构成了一个被称为分片数据库(Shared database)的单一的逻辑数据库。
从应用程序的角度来看,分片数据库看起来像一个单一的数据库:分片的数量以及这些分片之间的数据分布对数据库应用程序完全透明。从数据库管理员的角度来看,分片数据库由多个可以共同管理的数据库组成。
其实全球分布式数据库和12.2引入的Sharding有很多相似的地方(这里关于19c Sharding相关文档我做了部分翻译,可以去墨天轮下载:https://www.modb.pro/doc/124393),简单来说就相当于将原来运行在集中式数据库中的分区表,将每个分区分散在不同的数据库中,所有数据库中的数据加起来就是对应表的数据总和。
2 关于全球分布式数据库
Oracle全球分布式数据库是Oracle数据库的一个功能,可以在一个不共享硬件和软件的数据库池中自动分布、复制数据库。Oracle全球分布式数据库提供了成熟RDBMS和NoSQL数据库的最佳特性和功能:
3 分布式分区
分片是一种基于跨多个独立物理数据库对数据进行水平分区的数据库扩展技术。这种配置中的每个物理数据库都称为分片。分片表在分片数据库的所有分片之间进行分区。每个分片上的表分区的使用与非分片Oracle数据库的分区没有区别。

4 Oracle全球分布式数据库的优势
全球分布式数据库的重点优势:
总结
本期对Oracle全球分布式数据库的基本概念进行了简单介绍。
下一期将针对典型场景进行讲解,后面将根据Oracle 23ai实际发布情况尝试进行简单搭建展示。 老规矩,知道写了些啥
