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

22、深入探究 RAC 数据库内部机制

深入探究 RAC 数据库内部机制

1. RAC 数据库概述

RAC(Real Application Clusters)集群由单个数据库和多个实例组成。每个实例都有自己的系统全局区(SGA),其结构与单实例 SGA 相同,包含固定和可变内存区域、缓冲区缓存和日志缓冲区。每个实例都可以访问共享数据库,并可能读取或更新任何数据块。为了维护数据的一致性和完整性,需要在实例之间协调数据块的访问,这个过程称为同步。

为了实现集群中实例之间的同步,引入了两个虚拟服务:全局队列服务(GES)和全局缓存服务(GCS)。GES 控制锁的访问,GCS 控制数据块的访问。

2. 全局队列服务(GES)

2.1 GES 的作用

在 RAC 数据库中,GES 负责实例间的资源协调,管理所有非缓存融合的实例内资源操作。它跟踪所有被多个实例访问的资源的 Oracle 队列机制,用于管理事务、表和其他结构的并发访问,同时还负责死锁检测。

2.2 背景进程

GES 主要通过 LMDO 和 LCKO 两个背景进程来执行活动。一般来说,进程与本地的 LMDO 背景进程通信以操作全局资源,本地的 LMDO 背景进程再与其他实例上的 LMDO 进程通信。LCKO 背景进程用于获取整个实例所需的锁,例如维护字典(行)缓存锁。

服务器进程使用异步陷阱(AST)消息与这些背景进程通信,以避免背景进程在等待远程节点实例的回复时阻塞。背景进程还可以向持有锁的进程发送阻塞异步陷阱(BAST),请求将当前持有的锁降级为限制较小的模式。

2.3 资源和队列

资源是一种内存结构,代表数

http://www.cnnetsun.cn/news/41280.html

相关文章:

  • 5大React动画库生态对比:从入门到精通的全栈解决方案
  • 2、Oracle Real Application Clusters (RAC):特性、成本与效益解析
  • Phi-2模型完全攻略:让27亿参数的小巨人成为你的AI助手
  • 30分钟掌握Tauri:用Rust构建你的第一个桌面应用
  • WeChatTweak-macOS开源项目深度参与指南
  • NootRX:让AMD RDNA 2显卡在macOS上完美运行
  • DBeaver崩溃救星:3步紧急恢复SQL脚本的完整方案
  • 项目效率翻倍,做对了什么?
  • 少儿编程考试路径规划:考级与竞赛时间如何平衡?
  • 火星漫游车Rocker-Bogie悬挂系统核心技术深度解析与实战指南
  • ImmortalWrt网络流量监控完全指南:快速排查网络异常与优化带宽分配
  • 青少年编程考级的三大核心价值:目标建立与能力提升
  • 大疆(DJI)前端开发岗位面试经验总结与备战指南
  • AI难?看涂鸦智能、Lark和德勤中国如何借亚马逊云科技突围
  • Kimi-K2-Instruct模型部署指南:从快速入门到生产级优化
  • 企业级系统监控UI架构设计与性能优化实战
  • 多模态智能体如何重塑人机交互:UI-TARS-1.5的三大技术突破与应用前景
  • 快速排序:10分钟掌握高效算法精髓
  • windows著名漏洞——Zerologon(零登录)
  • 6、技术写作风格与在线文档写作指南
  • 文章查重率超出限制?五个步骤轻松降低至安全线
  • 12、技术文档创作与信息管理全解析
  • 9大AI论文平台对比:智能生成开题框架与完整论文内容
  • 学术写作利器:9款AI工具测评,精准生成开题报告与论文初稿
  • 20、文档制作全流程指南
  • GPT-20B无限制版:本地部署大模型的技术革命与实战指南
  • MPK(Mirage Persistent Kernel)源码笔记(4)--- 转译系统
  • 中国地形数据完整指南:5分钟快速上手ArcGIS地形分析
  • 为什么我的应用会卡顿?垃圾回收中的STW难题与破解之道
  • 深入解析 JuiceFS 垃圾回收机制