ITPub博客

首页 > 数据库 > Oracle > Oracle 11g体系结构

Oracle 11g体系结构

原创 Oracle 作者:ywxj_001 时间:2017-12-26 01:35:51 0 删除 编辑
Oracle 11g体系结构:


oracle运行原理:
高效处理数据
内存机制:
核心内存3大组件:
Shared Pool
Database Buffer Cache
Redo Log Buffer

Shared Pool:
提升SQL语句在解析阶段的效率。
Data Dictionary Cache数据字典高速缓冲区提升SQL语句解析阶段里的语义解析效率。
把数据字典信息全弄到内存里,下次不需要读磁盘了。效率高。
生成执行计划放在Library Cache里面,下次不需要生成执行计划了。直接软解析。提升解析效率。

Database Buffer Cache:
数据库高速缓冲区提升SQL语句在执行阶段效率而存在的。

Redo Log Buffer:
查询语句一般情况下不会生成redo。
除非是延迟块清除的特殊情况下会生成redo,大查询语句不会生成redo。

增删改、DML操作,为了保证ACID特性。要让数据具备恢复能力。每次修改动作都要记录数据变化性的信息。
每时每秒都要记录大量的日志信息。如果这些日志信息每产生一条都写入磁盘,磁盘开销压力会很大。
为了缓解磁盘写入redo的压力,所以引入了高效组件redo log buffer这个组件,以便提升日志写出效率。
磁盘写出喜欢顺序写还是随机写?喜欢顺序写。
磁盘擅于顺序写和随机写,所以要引入raid0和ASM。
所以要积攒一定数据再写出,提高写出效率。所以引入了数据库redo日志的缓冲区Redo Log Buffer。

数据库的高效通过oracle的instance实例,通过instance的内存结构组件实现的。
数据库的处理数据是通过oracle的instance实例中的各种进程组件来实现的。
PMON:专门清理异常进程的
SMON:专门处理实例挂起后实例恢复的
DBWR:处理脏数据写出到数据文件的database writer
LGWR:处理日志信息集中写出的Log Writer
CKPT:有统一数据文件、控制文件、日志文件保持一致性的CheckPoint CKPT进程,每一个进程都在做一个独立方向的事情

数据库高效处理数据的数据存放在数据文件里,数据文件存在哪里,日志文件存在哪里由控制文件决定。
高效处理数据的数据部分由各种各样的文件组成,数据存放在数据文件里,数据文件和日志文件存放的位置由控制文件指定。
高效处理数据的数据部分是通过数据库的各种核心文件来实现的。高效处理数据
instance  高效处理   内存+进程
数据       数据库

数据挂了:数据文件、控制文件、日志文件这3个文件哪个挂了。
数据库挂了应该说是数据库实例挂了。

































来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/22996654/viewspace-2149261/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
在零售、金融、互联网行业从事数据库相关工作10余年,有丰富的数据库管理和架构的相关经验。 涉及SQLServer、Oracle、MySQL、PostgreSQL等多种数据库。 目前在一家互联网公司担任DBA经理。 负责整个集团数据库的架构设计和管理工作。

注册时间:2010-01-19

  • 博文量
    247
  • 访问量
    436205