`

Oracle内存体系结构

 
阅读更多

Oracle 中的基本内存结构包括

  • 系统全局区(System Global Area,SGA),此区域由所有的服务进程(server process)和后台进程(background process)共享。
  • 程序全局区(Program Global Areas,PGA),此区域是每个服务进程和后台进程所私有的;即每个进程都有一个 属于自己的 PGA。

图1 中间为 SGA。其中包括 Java 池,数据缓存区,重做日志缓冲区,共享池,数据流池,及大型池。在 SGA 之外,存在服务进程,后台进程,及 Oracle 进程,她们能够和 SGA 交换信息。同时每个进程还需与其 PGA 通信。

 

SGA 中包含了多个内存组件(component),每一组件都可以被看作为一个内存池,用于满足特定类型的内存分配请求。举例来说,内存组件中包括共享池(shared pool)(为 SQL 及 PL/SQL 的执行分配内存),Java 池(java pool)(为 Java 对象及 Java 程序的执行分配内存),及数据缓存区(buffer cache)(用于缓存磁盘上的数据块)等。所有 SGA 组件都是以预设的粒度(granule)为单位进行内存的分配与回收的。Oracle 数据库通过记录每个 SGA 组件使用的粒度单位的数量来掌握整个 SGA 的内存使用情况。

 

手动与自动SGA管理

  • 手动管理SGA,DBA 需要手工地设置 SGA 各个组件的容量,可能根据应用的改变,需要重新分配各个组件的大小
  • 自动管理SGA,无需向系统中添加额外的资源,也无需增加手工维护的工作量,就能提高系统的负载能力。比如,在 SGA 手工管理模式下,一个已编译的 SQL 语句可能会因为共享池空间不足而被频繁的移出共享池,导致系统性能降低。而使用了 SGA 自动管理后,Oracle 内部的调优算法将监控系统的负载情况,如果发现增大共享池有利于减少重复的 SQL 解析(parse)操作,就会对相关的 SGA 组件进行调整,为共享池分配更多的内存。

数据缓冲区的管理方式

——通过两个列表管理:

  1. 待写列表(write list)。待写列表中记录的是脏缓冲区(dirty buffer),即其中数据已被修改且尚未写入磁盘的缓冲区。
  2. 最近最少使用列表(least recently used(LRU)list)。最近最少使用列表中记录的是可用缓冲区(free buffer),锁定缓冲区(pinned buffer),及还没被移入待写列表的脏缓冲区。可用缓冲区内的数据无需继续保留,可以用于存储新数据。而锁定缓冲区是正在被访问的缓冲区。

重做日志缓冲区概念

  • 重做日志缓冲区(redo log buffer)是 SGA 内一块被循环使用的缓冲区,用于记录数据库内的数据变化信息。这些信息以重做条目(redo entry)的形式进行存储。Oracle 利用重做条目内的信息就可以重做由 INSERT,UPDATE,DELETE,CREATE,ALTER,及 DROP 等操作对数据库进行的修改。重做条目可以被用于进行数据库恢复(database recovery)。

 

1
4
分享到:
评论

相关推荐

    Oracle数据库体系结构( 中文详细版)

    本文将详细解析Oracle数据库的体系结构,帮助读者深入理解其内部工作原理。 Oracle数据库的核心架构可以分为以下几个主要部分: 1. **数据文件**(Data Files):数据文件是Oracle数据库存储实际数据的地方,包含...

    Oracle 12c数据库体系结构图文详解手册

    Oracle 12c数据库体系结构图文详解手册是 Oracle 12c数据库管理系统的核心组件之一,该手册详细介绍了 Oracle 12c数据库的体系结构、实例、数据库、内存结构、后台进程、控制文件、重做日志文件、数据文件等概念。...

    Oracle 体系结构 说明

    【Oracle 体系结构详解】 Oracle数据库的体系结构是其高效管理和优化数据操作的关键。这个复杂的架构设计主要目的是为了有效地管理数据库系统中的稀缺资源,特别是内存,以提高性能并确保数据的完整性和可用性。 1...

    oracle体系结构、ocp笔记

    "Oracle体系结构与OCp笔记" ...本节笔记对Oracle体系结构进行了详细的讲解,涵盖了数据库、实例、Oracle网络架构和Oracle内存架构等方面的知识点,为读者提供了一个系统的Oracle体系结构知识框架。

    OracleDB体系结构

    ##### 3.2 Oracle内存结构 Oracle数据库的内存结构主要由以下部分组成: 1. **系统全局区(SGA)**:SGA是所有服务器进程和后台进程共享的一个内存区域,用于存储数据库的控制信息和数据。 - **数据库缓冲区高速...

    Oracle11g体系结构图

    标题:“Oracle11g体系结构图” 描述:“Oracle11g体系结构图,oracle结构清清楚楚” **一、Oracle11g体系结构概览** Oracle11g是Oracle公司推出的一款高性能、高可用性和高安全性的关系型数据库管理系统。其体系...

    oracle 体系结构详解

    在Oracle体系结构中,SGA区是实例的一个关键内存结构,其中包括数据库缓冲区、共享池、重做日志缓冲区等重要组成部分。数据库缓冲区用于暂存从数据文件中读取的数据块,以减少对磁盘的I/O操作,提高数据库访问效率。...

    Oracle体系结构简介

    Oracle 体系结构是一个复杂而精细的设计,旨在提供高效、安全且可扩展的数据库管理解决方案。以下是对Oracle体系结构主要组成部分的详细说明: 1. **数据库**:数据库是Oracle的核心,它是一个逻辑数据集合,包含了...

    Oracle数据库体系结构(详细版)

    总的来说,Oracle数据库体系结构复杂而强大,涵盖数据存储、内存管理、并发控制、安全性和高级特性等多个方面。对于新手而言,理解和掌握这些基础概念是进一步学习Oracle数据库管理和开发的前提。通过深入学习Oracle...

    Oracle体系结构概述

    Oracle数据库是一种广泛使用的大型关系型数据库管理系统,其复杂的体系结构是保证高效稳定运行的基础。本文将深入探讨Oracle体系结构的各个关键组成部分。 首先,我们关注物理结构,这是Oracle数据库在磁盘上的实际...

    oracle数据库体系结构

    Oracle数据库体系结构是Oracle软件的核心部分,负责管理和存储数据以供用户和应用程序使用。Oracle数据库体系结构主要由以下几部分构成:Oracle数据库服务器、Oracle实例、Oracle数据库的物理结构和Oracle数据库的...

    oracle体系结构8.09

    ### Oracle体系结构8.09知识点详解 #### 一、Oracle体系结构概述 Oracle数据库的体系结构主要包括几个关键部分:数据库实例(Instance)和数据库文件(Database Files)。其中,数据库实例由内存结构(Memory ...

    oracle数据库体系结构之一【内存结构】.docx

    Oracle数据库的内存结构是其高效运行的关键组成部分,主要分为系统全局区(SGA)、程序全局区(PGA)、排序区、大池和Java池。本文将重点讨论SGA,它是Oracle数据库中最为重要的共享内存区域。 系统全局区(SGA)是...

    Oracle体系结构图以及分析

    Oracle数据库是一种广泛使用的关系型数据库管理系统,其体系结构设计复杂且高效。Oracle 体系结构主要由Oracle实例和Oracle数据库两大部分组成。 Oracle实例是访问Oracle数据库的入口,它包括了系统全局区(SGA)和...

    Oracle体系结构详解

    ### Oracle体系结构详解 Oracle体系结构是理解Oracle数据库工作原理的关键。本文将深入解析Oracle的基本组成、实例(Instance)结构以及内存结构等核心概念。 #### 一、Oracle基本组成 Oracle的基本组成部分包括...

    Oracle安装和体系结构

    ### Oracle安装和体系结构知识点详解 #### 一、Oracle市场地位及发展趋势 - **市场概况**:根据2008年的数据显示,中国商用数据库市场的总体规模达到28.25亿元,相较于上一年度实现了30%的增长。在这个快速增长的...

    深入oracle体系结构

    深入地分析Oracle数据库体系结构,包括文件、内存结构以及构成Oracle数据库(database)和实例(instance)的底层进程。讨论锁定、并发控制、事务、redo和undo,分析数据库这的物理结构,如表、索引和数据类型,并...

    oraclex体系结构下载

    总之,Oracle数据库的体系结构是一个深奥且重要的主题,涉及数据存储、内存结构、进程架构和网络通信等多个方面。这份“oraclex体系结构下载”的资源,结合练习与答案,无疑是深入学习Oracle数据库体系结构的宝贵...

    Oracle Database 12cR2 Architecture体系结构图 高清版

    Oracle Database 12cR2 的体系结构设计旨在提供一个强大、灵活且高度可扩展的平台,满足现代企业对数据存储、处理和安全的需求。通过理解这些核心组件和原理,管理员和开发人员能够更好地优化其数据库环境,实现更高...

    强烈推荐 Oracle 体系结构(高清完整中文版)

    Oracle 的基本体系结构主要包括内存结构、进程结构以及存储结构。 #### 二、内存结构详解 Oracle 的内存结构主要由 PGA (Program Global Area) 和 SGA (System Global Area) 组成。 ##### PGA - 私有内存 - **...

Global site tag (gtag.js) - Google Analytics