段头块的结构和包含的信息

转载 2013年12月03日 09:28:48

TOP 第十二章 之 段头块的争用

继续贴出 Troubleshooting Oracle Performance 一书第十二章《优化物理设计》的翻译稿的部分节录。最近真是筋疲力竭。翻译不止是考验技术水平、英文水平、中文驾驭能力,还有耐心和信心。



段头块的争用

每个表和索引段都会有一个头数据块(header block)。这个数据块包含以下元数据:关于这个段的高水位(highwatermark)的信息,组成这个段的区间(extent)的列表以及关于空闲空间的信息。为了管理空闲空间,根据使用的段空间管理方式的不同,头数据块会含有一个空闲列表(freelist)或者一组包含自动段空间管理(automatic segment space management)的信息的数据块。比较典型的情况是,段头数据块在多个进程并发地修改其内容时会发生争用。注意,头数据块在以下几种情形下将会发生修改:

  • 插入语句使得有必要提高高水位
  • 插入语句使得有必要分配新的区间
  • 删除、插入或更新语句使得有必要修改空闲列表

解决这些问题的一个可能思路是,对这个段进行分区以将压力分布到多个段头块上去。虽然有时候根据负载以及分区键值(partition key)其它的分区方式也可以实现,但是在大部分时候,可以通过散列分区实现这一点。然而,如果是由于第二或第三种情形导致这个问题,还可以使用其它的解决办法。对于第二种情形,可以使用更大的区间(extent)来解决。这样,新的区间分配将很少发生。对于第三种情形,空闲队列(freelist)可以被空闲队列组(freelist group)移动到其它数据块,这对于使用自动段空间管理模式(automatic segment space management)的表空间不适合。事实上,在使用多个空闲列表组的时候,空闲列表就不再被存储在段头数据块(segment header block)中了(它们被分布到与参数FREELIST GROUPS数量一致的数据块中,这样在它们上面的争用将减少,而不仅仅是将争用移往别处而已)。另一个可能是使用自动段空间管理的表空间而不是空闲列表段空间管理的表空间。

注意:长期存在一个关于Oracle数据库引擎的神话是,空闲列表组只有在使用RAC(Real Application Cluster)的时候才是有用的。大谬。空闲列表组在任何数据库中都是有用的。之所以特别强调这一点是因为我看到听到这种错误信息太多次了。

dump段头数据块信息

新建一个表空间和一表 SQL> CREATE SMALLFILE TABLESPACE tbs_dumptest   2  DATAFILE  '/u01/app/oracle/oradata/o...
  • zuixinnet
  • zuixinnet
  • 2013年05月07日 12:51
  • 573

菜鸟之dump段头数据块信息

新建一个表空间和一表 SQL> CREATE SMALLFILE TABLESPACE tbs_dumptest   2  DATAFILE  '/u01/app/oracle/oradata/o...
  • haiross
  • haiross
  • 2014年11月19日 13:34
  • 627

ELF文件-段和程序头

可执行文件和共享目标文件(动态链接库)是程序在磁盘中的静态存储形式;要执行一个程序,系统就要先把相应的可执行文件和共享目标文件装载到进程的地址空间中,这样就形成一个可运行进程的内存空间布局,称为进程镜...
  • u011210147
  • u011210147
  • 2017年01月05日 13:53
  • 397

oracle的逻辑结构包括表空间、段、区和数据块

oracle的逻辑结构包括表空间(tablespace),段(segment),区(extent),数据块(data block) oracle数据库在逻辑上是由多个表间组成的,表空间中存储的对象叫...
  • haiross
  • haiross
  • 2013年10月16日 15:39
  • 7093

5.oracle的dump理解五 数据块理论

5.oracle的dump理解五 数据块理论 欢迎转载,转载请标明出处: 前两篇描述了我们在操作层面看到的一些东西,但是没有理论指导,看到越多我们只会越迷糊。所以,蛤蟆从官方文档上摘取一些老少皆宜...
  • notbaron
  • notbaron
  • 2016年04月23日 21:47
  • 35055

HTTP响应头信息和请求头信息详解

HTTP响应头信息和请求头信息详解
  • qq_35718410
  • qq_35718410
  • 2016年10月27日 16:58
  • 472

计算机网络试卷(计算机网络_谢希仁__第五版)

答案仅供参考 一、选择题 1.网络的基本分类有两种:一种是根据网络所使用的传输技术,另一种是( C ) A 网络协议        B 网络的拓扑结构  C 覆盖范围与规模  D 网络服务的操...
  • hy2011034628
  • hy2011034628
  • 2013年07月02日 23:33
  • 2151

音频头信息格式

首先需要知道的是,MP3文件的文件信息都放在文件最后的128个字节里面,这128个字节分别存储的信息如下:(ID3V1) char Header[3];    /* 标签头必须是"TAG"否则认为没...
  • liu149339750
  • liu149339750
  • 2016年03月03日 10:44
  • 374

TCP数据段格式

摘自:《深入理解计算机网络》 王达著 机械工业出版社 相关知识链接 1. IPV4数据报头部格式 2. IPv6数据报头部格式 3. IPv4数据报的封装与解封装 4. IPv4数据报的分段...
  • u011784495
  • u011784495
  • 2017年05月18日 17:28
  • 526

『ORACLE』表空间、段、区和块简述 (11g)

文章转载自:http://blog.itpub.net/17203031/viewspace-682003/ 在Oracle学习过程中,存储结构,表段区块可能是每个初学者都要涉及到的概念。表空...
  • qq_38815172
  • qq_38815172
  • 2017年05月31日 15:52
  • 1175
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:段头块的结构和包含的信息
举报原因:
原因补充:

(最多只允许输入30个字)