数据库管理-第238期 23ai:全球分布式数据库-架构与组件(20240904)

news/2024/9/17 7:20:14/ 标签: 数据库, 分布式, 架构

数据库管理238期 2024-09-04

数据库管理-第238期 23ai:全球分布式数据库-架构与组件(20240904)

作者:胖头鱼的鱼缸(尹海文)
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。
除授权转载并标明出处外,均为“非法”抄袭

演示文稿1_01.png

又穿插了好几期其他的,今天继续挖这个坑。

1 架构

Oracle全球分布式数据库架构如下:
image.png

2 分片数据库与分片

分片数据库是一组分片的集合。是一个Share-nothing架构的在水平分布在由Oracle数据库作为分片组成的数据库池中。每个分片是独立的存放分片数据库的部分数据,跨分片是不需要依赖共享存储的。分片可以以任意方式部署,包括单实例与集群数据库,看部署在物理机、任何云平台、Exadata一体机、虚拟机等等。
分片可以放在一个区域或多个区域,对于全球分布式数据库来说,每个区域可以是一个数据中心也可以是网络相临近的多个数据中心。
全球分布式数据库的分片可以使用基于Raft的原生复制或DG实现高可用和灾难恢复。

3 Shard Catalog

Shard Catalog,分片目录,是一个支持Oracle全球分布式数据库自动分片部署、集中化管理并支持多分片查询的Oracle数据库
分片目录有以下用途:

  • 充当整个分片数据库的管理服务器
  • 存储数据库schema的黄金副本
  • 使用多分片查询协调器coordinator管理多分片查询
  • 存储复制表数据的黄金副本

分片目录是一个专用的Oracle数据库,是分片数据库配置数据的持久存储,在分片数据库的集中管理中起着关键作用。所有配置更改,如添加和删除分片或全局服务,都是在分片目录上执行的。分片数据库中的所有DDL都是通过连接到分片目录来处理的。
分片目录还包含分片数据库中所有复制表的主副本。分片目录使用物化视图自动将更改复制到所有分片中的复制表中。分片目录数据库还充当查询协调器,用于处理多分片查询和不指定分片键的查询。
出于高可用性的目的,可以部署多个分片目录。建议使用Oracle Data Guard实现分片目录的高可用性。
在运行时,除非应用程序使用基于键的查询,否则需要分片目录将查询定向到分片。基于分片键的事务继续由分片数据库路由和处理,不受目录中断的影响。
在完成到备用分片目录的自动故障转移所需的短暂时间内,停机时间会影响执行维护操作、更改模式、更新复制表、运行多分片查询或执行其他操作(如添加分片、移动块等)的能力,这些操作会引发拓扑变化。

4 Shard Director

Shard Director,这里译作分片控制器,是基于分片键实现高性能连接路由的网络监听。
Oracle Database 12c引入了全局服务管理器,根据数据库角色、负载、复制延迟和位置来路由连接。为了支持Oracle全球分布式数据库,全球服务管理器支持基于数据位置的连接路由。在Oracle全球分布式数据库的上下文中,全局服务管理器被称为分片控制器。
分片控制器是全球服务管理的具体实现,它充当连接到分片数据库的客户端的区域监听器。控制器维护分片数据库的当前拓扑。根据连接请求期间传递的分片键,控制器将连接路由到适当的分片。
对于典型的分片数据库,每个区域的可以使用专用于分片控制器的低端服务器安装了一组分片控制器。为了实现高可用性和可扩展性,部署多个分片控制器。在给定的区域中,最多可以部署五个分片控制器。
以下是分片控制器的关键功能:

  • 维护有关分片数据库配置和分片可用性的运行时数据
  • 监控自身区域和其他区域之间的网络延迟
  • 充当客户连接到分片数据库的区域监听
  • 管理全球服务
  • 连接负载平衡

5 Global Service

Global Service,全局服务,是用于访问Oracle全球分布式数据库分片数据库中的数据的服务。
全局服务是对传统数据库服务概念的扩展。全局服务支持传统数据库服务的所有属性。对于分片数据库,为全局服务设置了其他属性,例如数据库角色、复制延迟容忍度、客户端和分片之间的区域关联性等。对于读写事务工作负载,创建了一个全局服务来访问分片数据库中任何主分片的数据。对于使用Oracle Active Data Guard的高可用分片,可以创建单独的只读全局服务。

6 管理界面

Oracle全球分布式数据库可以使用GDSCTL和EMCC来实现来配置、部署、监控和管理。

总结

本期简单介绍了Oracle 23ai全球分布式数据库架构和组件。
老规矩,知道写了些啥。


http://www.ppmy.cn/news/1522577.html

相关文章

RT-Thread 使用HTTP固件下载方式进行OTA远程升级

参考资料:RT-T官网资料如下链接所示 STM32通用Bootloader (rt-thread.org) 1.app程序env配置过程 参考上述资料中"制作 app 固件"章节,分区大小根据自己设备而定,以下是我以407VET6为例设置的fal分区 notes:上述分区是由片内flash(on-chip)…

科研绘图系列:R语言差异基因四分图(Quad plot)

文章目录 介绍加载R包导入数据数据预处理画图参考介绍 四分图(Quad plot)是一种数据可视化技术,通常用于展示四个变量之间的关系。它由四个子图组成,每个子图都显示两个变量之间的关系。四分图的布局通常是2x2的网格,每个格子代表一个变量对的散点图。 在四分图中,通常…

2024数学建模国赛选题建议+团队助攻资料(已更新完毕)

目录 一、题目特点和选题建议 二、模型选择 1、评价模型 2、预测模型 3、分类模型 4、优化模型 5、统计分析模型 三、white学长团队助攻资料 1、助攻代码 2、成品论文PDF版 3、成品论文word版 9月5日晚18:00就要公布题目了,根据历年竞赛题目…

clickhouse-v24.1-离线部署

部署版本 数据库版本:24.1.1.2048 jdk版本:jdk8 4个文件(三个ck的包): OpenJDK8U-jdk_x64_linux_hotspot_8u382b05.tar clickhouse-client-24.1.1.2048.x86_64.rpm clickhouse-common-static-24.1.1.2048.x86_64.…

Unity之获取Avpro视频画面并在本地创建缩略图

一、效果 获取StreamingAssets文件夹下的所有视频(包含其子文件夹),获取指定时间的视频画面,然后将图片保存到本地磁盘中。 二、关于Avpro的事件监听 当指定视频时间进度时会触发FinishedSeeking,代表加载完成这时我们…

muduo 网络库学习项目引入 Boost 依赖

文章目录 下载 [Boost 源码库](https://www.boost.org/)编译通过 CMake 引入 Boost 项目Boost 链接库指引文档的问题 muduo 这个项目比较老旧了,但是仍然是学习网络库实现的一个不错的参考,所以还是得看看书自己动手实践一下。 没想到跟着书上的代码练手…

2024国赛数学建模备赛|30种常用的算法模型之最优算法-非线性规划

1.1 非线性规划的实例与定义 如果目标函数或约束条件中包含非线性函数,就称这种规划问题为非线性规划问题。一般说来,解非线性规划要比解线性规划问题困难得多。而且,也不象线性规划有 单纯形法这一通用方法,非线性规划目前还没…

SpringBoot3+Vue3开发商店上货管理系统

系统介绍 上货管理系统是专门为各种类型商店打造的一款进货管理系统。针对整个商店进货流程,提供很多方便功能,帮助店家完成上货流程。比如上货清单管理功能、上货清单确认功能、供货商管理功能、商品管理功能等。 技术栈 后端:SpringBoot…

Spark MLlib模型训练—回归算法 Factorization Machines Regression

Spark MLlib模型训练—回归算法 Factorization Machines Regression 在大数据与机器学习领域,推荐系统、广告点击率预测以及评分预测等应用场景中,经常涉及到高度稀疏的特征数据,这对传统的回归模型提出了挑战。因子分解机(Factorization Machines, FMs)是一种广泛应用于…

python例子:相片处理工具(可视化)

作品名称:相片处理工具(可视化) 开发环境:PyCharm 2023.3.4 python3.7 用到的库:sys、os、cv2、numpy、math和random 作品简介:运行例子后,先选择需要处理的图片,然后可对图片进…

深入了解CSS混合模式

CSS混合模式(也称为CSS Blend Modes)是一种强大的功能,它允许开发者在CSS中控制元素如何与它们的背景或其他元素混合。这些模式类似于图像编辑软件(如Photoshop)中的混合模式,使得开发者能够创建出复杂而富…

vulhub Thinkphp5 2-rce远程代码执行漏洞

1.执行以下命令启动靶场环境并在浏览器访问 cd /vulhub/thinkphp/2-rce #进入漏洞环境所在目录 docker-compose up -d #启动靶场 docker ps #查看容器信息 2.访问网页 3.构造payload 192.168.157.142:8080?s/Index/index/L/${phpinfo()} 4、写入一句话木马,使用…

《JavaEE进阶》----12.<SpringIOCDI【扫描路径+DI详解+经典面试题+总结】>

本篇博客主要讲解 扫描路径 DI详解:三种注入方式及优缺点 经典面试题 总结 五、环境扫描路径 虽然我们没有告诉Spring扫描路径是什么,但是有一些注解已经告诉Spring扫描路径是什么了 如启动类注解SpringBootApplication。 里面有一个注解是componentS…

移动应用门户实现的技术方案

移动应用门户是专为移动设备(如智能手机和平板电脑)设计的应用程序,比如:小程序、APP等,用户可以通过应用商店下载并安装。这些应用程序提供了更好的用户体验,通常具有更高的性能和交互性,可以直…

数据结构的简单认识

数据结构是计算机存储、组织数据的方式。它可以分为逻辑结构和物理结构。 逻辑结构主要有集合、线性结构、树形结构和图形结构。集合中的数据元素间除“同属于一个集合”外,无其他关系;线性结构的数据元素之间存在一对一的关系,如链表、栈和队…

linux系统中,计算两个文件的相对路径

realpath --relative-to/home/itheima/smartnic/smartinc/blocks/ruby/seanet_diamond/tb/parser/test_parser_top /home/itheima/smartnic/smartinc/corundum/fpga/lib/eth/lib/axis/rtl/axis_fifo.v 检验方式就是直接在当前路径下,把输出的路径复制一份&#xff0…

Java | Leetcode Java题解之第386题字典序排数

题目&#xff1a; 题解&#xff1a; class Solution {public List<Integer> lexicalOrder(int n) {List<Integer> ret new ArrayList<Integer>();int number 1;for (int i 0; i < n; i) {ret.add(number);if (number * 10 < n) {number * 10;} els…

【RabbitMQ】基本概念以及安装教程

1. 什么是MQ MQ( Message queue),从字面意思上看,本质是个队列,FIFO 先入先出&#xff0c;只不过队列中存放的内容是消息(message)而已.消息可以非常简单,比如只包含文本字符串,JSON等,也可以很复杂,比如内嵌对象.MQ多用于分布式系统之间进行通信 系统之间的调用通常有两种方式…

揭秘 AMD GPU 上 PyTorch Profiler 的性能洞察

Unveiling performance insights with PyTorch Profiler on an AMD GPU — ROCm Blogs 2024年5月29日&#xff0c;作者&#xff1a;Phillip Dang。 在机器学习领域&#xff0c;优化性能通常和改进模型架构一样重要。在本文中&#xff0c;我们将深入探讨 PyTorch Profiler&#…

基于深度学习的结构优化与生成

基于深度学习的结构优化与生成技术应用于多种领域&#xff0c;例如建筑设计、机械工程、材料科学等。该技术通过使用深度学习模型分析和优化结构形状、材料分布、拓扑结构等因素&#xff0c;旨在提高结构性能、减少材料浪费、降低成本、并加快设计流程。 1. 结构优化与生成的核…