Solaris 10 OS上的Oracle 11g数据库块大小

时间:2015-01-22 08:01:34

标签: oracle database-design oracle11g solaris-10

我正在设计一个在Solaris 10上运行的新Oracle 11g数据库。在研究 Oracle's web site上的数据库配置时,我遇到了以下有关数据库块大小的声明:

  

更大的数据块大小可提高磁盘和磁盘的效率   内存I / O(访问和存储数据)。因此,考虑一下   指定大于操作系统块大小的块大小   如果存在以下条件:

     

Oracle数据库位于具有大量计算机系统的大型计算机系统上   内存和快速磁盘驱动器。例如,由...控制的数据库   具有大量硬件资源的大型计算机通常使用数据   块大小为4K或更大。

     

运行Oracle数据库的操作系统使用小型操作   系统块大小。例如,如果操作系统块大小是   1K和默认数据块大小匹配,数据库可能是   在正常操作期间执行过多的磁盘I / O.   为了在这种情况下获得最佳性能,数据库块应包含   多个操作系统块。

在过去,我通常坚持使用8K块大小(我认为是默认值),但在阅读Oracle文档后,注意到我的Solaris OS也有8K块大小,而服务器我是安装上是相当不错的(512Gb的RAM,4CPU * 12核@ 2.4GHz,快速磁盘阵列,NAS和SAN)我想知道我是否应该偏离传统并改为16K块大小。唯一能让我思考的是模式表的平均行大小(几乎不含LOB)确实低于8K,为块头等留下了空间。

因此,如果有可能存在有限的行链接,那么16K块大小是否会提供效率分红,还是会浪费大量空间?

对此主题的任何想法都将不胜感激。

1 个答案:

答案 0 :(得分:1)

不要浪费时间担心块大小。 Oracle文档通常质量很高,但该部分看起来几十年来一直没有更新。

Oracle专家似乎一致认为,更改块大小没有帮助。我从未见过通过更改块大小来显示性能提升的特定测试用例。但我看到使用非默认块大小导致的错误。

除非你有一个非常具体的理由,并且有很多时间来测试它,否则你最好花时间去担心别的事情。