`
jackiezy
  • 浏览: 43838 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
最近访客 更多访客>>
社区版块
存档分类
最新评论

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

阅读更多

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

TOP.jpg
(此书中文名字还未敲定,要不大家帮着命名一下?)



段头块的争用

每个表和索引段都会有一个头数据块(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)的时候才是有用的。大谬。空闲列表组在任何数据库中都是有用的。之所以特别强调这一点是因为我看到听到这种错误信息太多次了。


其实我一直想尝试用一点比较新的语言,比如最后一句,用"这种事儿我都听过N次了",效果可能更好。但,还是放弃了。

--EOF--
分享到:
评论

相关推荐

    MapReduce编程之求Top3(TopN)

    在分布式计算领域,MapReduce是一种广泛使用的编程模型,尤其在处理大数据时表现出高效性和可扩展性。本案例中,我们面临的问题是利用MapReduce来找出分布在多个文件中的正整数的最大三个值,即求解“Top 3”。这个...

    Creo 2.0从入门到精通视频教程下载第12章 TOP-DOWN设计.zip

    《Creo 2.0从入门到精通:深入解析TOP-DOWN设计》 在三维建模软件领域,Creo 2.0是一款广泛使用的工具,尤其在产品设计和工程行业中。本教程旨在帮助初学者快速掌握Creo 2.0的基础操作,并重点讲解TOP-DOWN设计方法...

    Linux 系统top源码包

    2. **内存管理**:`top`会展示物理内存(RAM)和交换内存(Swap)的使用情况,包括总内存、已用内存、空闲内存和缓存。了解内存分配可以帮助优化内存使用,防止系统因内存不足而变得缓慢。 3. **进程信息**:`top`...

    TIPTOP與其他系統之WebService接口資料

    【TIPTOP与其他系统之WebService接口资料】 在IT行业中,集成不同系统间的数据交换和功能调用是一项常见的任务。TIPTOP系统作为一个重要的业务处理平台,可能会与其他多种系统进行交互,以实现数据共享和流程自动化...

    top 源代码 top 源代码top 源代码

    top 源代码top 源代码top 源代码top 源代码top 源代码top 源代码

    Linux下使用python调用top命令获得CPU利用率

    本文定位:想通过python调用top命令获取cpu使用率但暂时没有思路的情况。 如果单纯为了获得cpu的利用率,通过top命令重定向可以轻松实现,命令如下: 复制代码 代码如下: top -bi > cpuHistory.log 或 复制代码 代码...

    TOP264vg规格书_中文

    TOP264vg规格书的封装形式多样,包括eSIP-7C、eDIP-12、eSOP-12等,能够满足不同的设计需求。 TOP264vg规格书是一款高效率、灵活性强、保护功能丰富的离线式开关IC产品,能够满足不同应用领域的需求。

    linux top命令源代码

    Linux中的`top`命令是系统监控工具,它实时显示系统中各个进程的资源占用状况,如CPU使用率、内存使用量、虚拟内存、进程状态等。`top`命令的源代码解析可以帮助我们深入理解其工作原理,对于系统管理员和开发者来说...

    tiptop TOPGP-5.3数据字典.chm

    鼎捷ERP tiptop TOPGP5.3数据库字典

    程序员编程艺术第一 ~二十七章

    - **第十二~十五章:中签概率,IP访问次数,回文等问题** - 覆盖了一系列实用的编程问题,包括统计和数据分析方面的内容。 - **第十六~第二十章:全排列,跳台阶,奇偶排序,第一个只出现一次等问题** - 包含了...

    top853编程驱动器驱动盘

    【标题】"top853编程驱动器驱动盘"指的是针对特定型号的编程驱动器——TOP853的驱动程序集合。在计算机硬件系统中,编程驱动器是一种用于编程、调试或更新微控制器(MCU)的设备。TOP853编程驱动器是一款常见的工具...

    电子商务头部top页面样式表

    电子商务头部top页面样式表

    c#调用topsdk、调用topapi最新C#调用淘宝sdk_demo

    在本文中,我们将深入探讨如何使用C#调用TopSDK,特别是通过淘宝API来实现功能。首先,让我们了解什么是TopSDK以及它在C#中的应用。 TopSDK是淘宝官方提供的一个开发工具包,用于帮助开发者方便地与淘宝平台进行...

    豆瓣电影top250爬虫

    "豆瓣电影top250爬虫"项目是一个专门针对豆瓣网站上电影Top250排行榜的数据抓取程序。这个爬虫的独特之处在于,它没有依赖像BeautifulSoup这样的成熟的HTML解析库,而是采用了纯字符串搜索的方式来解析网页内容,这...

    弱密码top1000

    弱密码top1000 弱密码top1000弱密码top1000 弱密码top1000

    top指令参数详解

    top指令是 Unix/Linux 系统中最流行的性能分析工具之一,系统管理员可以使用 top 命令来监视进程和 Linux 系统的整体性能。下面是 top 指令的详细参数解释: -d [delay]:改变显示的更新速度。例如,top -d 5 将每 ...

    tophat变换matlab代码

    在MATLAB中,我们可以使用`imtophat`函数来执行Tophat变换。这个函数的基本语法是: ```matlab outputImage = imtophat(inputImage, structElement) ``` 其中,`inputImage`是待处理的原始图像,`structElement`是...

    Solaris系统上top工具top-3.6.1-sol10-x86-local

    系统使用X86的Solaris 9,所以从下载top-3.5.1-sol9-intel-local.gz # gzip -d top-3.5.1-sol9-intel-local.gz # pkgadd -d top-3.5.1-sol9-intel-local 上面是简单的过程,下面介绍详细的。 top这个软件是不在...

    top指令源代码

    "top"是一个经典的Linux系统监控命令,用于实时显示系统中各个进程的资源占用情况,如CPU使用率、内存使用量、虚拟内存状况等。这里提到的是"top3.5beta13"的源代码,这代表了该版本的top命令在开发阶段的一个里程碑...

    K8S容器云平台查询容器TOP真实使用情况工具之Topic

    K8S容器云平台查询容器TOP真实使用情况工具之Topic,方面容器docker内部查询自己的top

Global site tag (gtag.js) - Google Analytics