Solaris 10 操作系统上的 Oracle 11g 数据库块大小

Posted

技术标签:

【中文标题】Solaris 10 操作系统上的 Oracle 11g 数据库块大小【英文标题】:Oracle 11g database block size on Solaris 10 OS 【发布时间】:2015-01-22 08:01:33 【问题描述】:

我正在设计一个新的 Oracle 11g 数据库以在 Solaris 10 上运行。在研究 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】:

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

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

除非你有一个非常具体的原因,并且有很多时间来测试它,否则你最好把时间花在担心其他事情上。

【讨论】:

感谢您的肯定——这就是我所追求的。 :)

以上是关于Solaris 10 操作系统上的 Oracle 11g 数据库块大小的主要内容,如果未能解决你的问题,请参考以下文章

Vmware Workstation 安装Oracle Solaris 10

在Sun Unix solaris 下安装Oracle8i 最好能给完整的安装步骤

Solaris 10下Qt编译Oracle 10g驱动

哪个 xarch 用于 Solaris 上的 SHA 扩展?

Solaris 10 SPARC 64 上的 Protobuf-2.6.1 编译错误

solaris下安装oracle 11g与11g rac