Oracle的块尺寸应该定义多大?
对性能影响较大(开发人员和部署人员重点关注)
作为DBA,必须确定Oracle块的大小并设置Oracle初始化文件init.ora文件中的DB_BLOCK_SIZE参数。块尺寸是处理Oracle的更新、选择或插入事务的最小单位。
当用户从表中选择数据时,选择操作将从数据库文件中以Oracle块为单位读取或提取数据。
理想情况下,Oracle块尺寸应该为磁盘块尺寸的背负,否则在每个IO中为只使用部分数据,可能会浪费时间去读写全体的磁盘快。
Oracle建议:
如果行比较小且访问随机,则选择较小的块尺寸
如果行比较小且访问主要是连续的或者是随机连续的,或者如果有较大的行,则选择较大的块尺寸。
如果处理的行较小且要进行大量的索引查找,那么应该选择较小的块尺寸
当扫描大表时,应该选择较大的块尺寸,这适用于报表应用程序。
如果不能确定使用多大的块尺寸大小,对于大多数处理大量事务的系统来说,oracle建议选择块尺寸为8KB。
Jesse注解:
由于当前大多数系统在规划设计时,一般会采用双机热备、RAC等,而会将其数据库文件、控制文件等放置到磁盘阵列上或者Raid空间上。一定要考虑RAID的块大小和Oracle表空间的块大小等要匹配。