oracle数据库技术实用详解(一)

1.1 Oracle10g网格计算:

 

        oracle10g支持网格计算

        网格运算技术主要体现在:存储、数据库服务、应用、管理四个方面。

        存储:自动存储管理,ASM(Automatic Storage Management).

        数据库:实时应用集群,RAC(Real Application Cluster)

        应用:流复制

        管理:图形界面管理

1.2 Oracle体系结构

        oracle服务器由两部分组成:oracle数据库和oracle实例。

        oracle数据库:硬盘上实际存放数据的文件,这些文件组织在一起, 成为一个逻辑整体,即为Oracle数据库。在oracle看来,数据库是指硬盘上文件的逻辑组合,必须要与内存里的实例合作,才能对外提供数据管理服务。

        oracle实例:位于物理内存里的数据结构。由一个共享内存池以及多个后台进程组成,共享内存池可以被所有进程访问。用户要读取数据库里的数据(硬盘上的文件),必须通过实例才能实现,不能直接读取硬盘上的文件。

        oracle服务器想要对外提供数据管理的服务,必须先启动实例。实例启动时会在内存里分配一块共享空间SGA(System Global Area或Shared Global Area),分配SGA后,oracle会启动一组后台进程,这时数据库实例已经生成。

        实例启动后,oracle软件将已经启动的实例与某个数据库关联,这个过程叫mount.下一步就可以打开数据库所包含的物理文件,用户可以开始读写数据了。

        任何一个时刻,一个实例只能与一个数据库相关联,一个实例只能mount或者打开一个数据库。这种情况即为单实例数据库;而一个数据库同时可以被多个实例关联,被多个实例mount或者打开,这种即为RAC数据库(多实例)。

        oracle数据库包含的文件分为两大类:一类是关键文件(Key File),另一类:非关键文件(Non-key File)。如果丢失关键文件,需要进行介质恢复(Media Recovery)一会才能使用。如果丢失非关键文件,只需要重建丢失的文件即可,不要介质恢复,重建之前,数据库仍然可以继续使用。

        关键文件分为三类:

                数据文件(datafile)

                        实际存放用户数据的地方。

                联机日志文件(online redo log file)

                        存放了数据库里发生的所有变化过程。

                控制文件(control file)

                        数据库的自我描述信息,数据库文件、联机日志位置、数据库运行状态等信息。

        非关键文件分为几类:

                参数文件(parameter file)

                        包含启动实例时参照的各个参数信息。

                密码文件(password file)

                        如果使用密码认证SYSDBA权限时,存放了以系统管理员身份登录数据库的密码。

                归档日志文件(archived redo log file)

                        联机日志文件副本,

                告警文件和跟踪文件(alert file、trace file)

                        数据库重要的事件都会记录到告警文件和跟踪文件中。

                备份文件(backup file) 

                        备份数据后的文件。包括RMAN(专用备份工具)所产生的特殊格式的备份文件以及操作系统复制命令生成的文件。

SGA本身是一块内存区域,根据作用的不同,可以分为多个不同的内存池。

        共享池(Shared pool)

                Shared pool主要作用在于提高SQL语句和PL/SQL代码执行的效率。

        大池

        Java池

        数据块缓冲区

        重做日志缓冲区

        流池

        系统监控进程

        进程监控进程

       数据块写进程

        日志写进程

        检查点进程

        以上五个进程是oracle实例正常工作必需的,任何一个进程停止,实例都将强行关闭。

        归档进程(ARCn)是生产库应该启动的。归档进程是将当前写满了的联机日志文件复制到指定的目录中, 即为归档。

        当LGWR进程将log buffer中的数据写入当前的联机日志文件时,如果该日志满了,无法写入,则LGWR会切换到下一个联机日志文件接着写,这个过程叫做日志切换(log switch)。如果数据库配置了ARCn进程,则当LGWR进行日志切换时,会唤醒ARCn进程对当前已经写满的日志文件进行归档。这里和DBWn一样,也有个n,表示数据库可以启动多个ARCn进程进行归档。

1.3 Oracle数据库存储简介

        逻辑存储:将数据在物理文件里存放的位置等信息都以数据行的形式存放在相关表里。

        为了更有效的管理逻辑结构,oracle对整个物理结构在逻辑上进行了分组。

        首先,最大的逻辑分区叫数据库(Database)。它是数据文件、控制文件、联机日志文件的逻辑组合。

        其次,在数据库这个最大的逻辑组合之下,又可以划分为多个较小的组,叫做表空间(Tablespace),表空间对应的物理结构就是数据文件。我们可以把一个或者多个数据文件在逻辑上组合起来,他们在逻辑上组成一个表空间。一个表空间可以对应多个数据文件,一个数据文件只能对应一个表空间。

        第三,在表空间下,在逻辑上又可以分成多个更小的逻辑,称为段(Segment)。段,是指表和索引。例如在销售类相关的表空间下,可以创建多个与销售业务相关的表,每个表存放不同的销售数据,比如A表存放销售合同,B表存放销售明细记录等。实际上,A和B里的数据是存放在数据文件里的。那么数据文件里有关A的所有物理数据对应的逻辑结构就叫做段A,表B则对应段B。一个段可以分布在多个数据文件里,比如一个很大的表,达到20GB,我们可以把这个大表分布到10个数据文件里,每个数据文件里分别放2GB的数据。

        第四,在段下,还可以划分更多的逻辑组,称为区(Extent)。Extent表示的是在逻辑上连续的一段空间,段的增加和减小都是以extent为单位。也就是说,当我们往一个表里不停的插入数据,导致该表所占的物理空间变大,则在扩大段的时候,其增长的单位是一个或者多个extent,同时删除数据,导致表空间缩小时,也是以extent为单位。由于extent是逻辑上连续的空间,所以一个extent不能跨越多个数据文件。

        最后,在extent下,还可以划分成多个最小的逻辑组,叫做数据块(Block)。数据块是不能再细分的逻辑组,他是Oracle向操作系统发出一个I/O请求的最小单位。也就是一次I/O至少要获取一个数据块(一个到多个,但只能是整数个)。

        在物理层面上,一个数据文件也是由多个操作系统块组成的。那个Oracle里的一个数据块会对应多个操作系统块。在大部分操作系统里,一个块为512个字节。而Oracle里的数据块的可选大小为2KB、4KB、8KB、16KB和32KB。因此,即使我们选择了最小的2KB作为一个数据块的大小,也会使得一个Oracle数据块包含4个操作系统块。这样可以在进行I/O时效率高一些。

        Oracle会把以上所描述的这些逻辑结构、逻辑结构之间的对应关系(比如某个表在表空间里,同时该表对应的段会由多个extent组成,而每个extent又由多个block组成)及逻辑结构与物理文件的对应关系(比如某个表的表空间包含哪些数据文件、改表对应的段包含的extent以及extent所包含的block位于数据文件的什么地方等)存放在自己的核心数据表(数据字典)里。这样查询sql的时候,就能够在数据字典里找到该表段所包含的所有的extent,进而可以找到每个extent所含有的数据块及数据块的地址。

                             

                

        

        

           

         

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值