WEB开发网
开发学院数据库DB2 DB2 最佳实践: DB2 数据库存储机制 阅读

DB2 最佳实践: DB2 数据库存储机制

 2010-06-23 00:00:00 来源:WEB开发网   
核心提示: EXTENTSIZE 的默认设置(32 个页面,由 DFT_EXTENT_SZ 配置参数指定)大多数情况下应该能提供足够的性能,DB2 最佳实践: DB2 数据库存储机制(9),例如,如果数据库使用 8 KB 的页面,以便为每个容器生成适当数量的预取请求,例如,在不知道 RAID 条块大小方面的

EXTENTSIZE 的默认设置(32 个页面,由 DFT_EXTENT_SZ 配置参数指定)大多数情况下应该能提供足够的性能。例如,如果数据库使用 8 KB 的页面,在不知道 RAID 条块大小方面的详细信息时,使用 32 (8 KB x 32 个页面 = 256 KB )的 EXTENTSIZE 应该足够了。即使对于 4 KB 或 16 KB 的页面,32 的 EXTENTSIZE 仍可以分别得到 128 KB 或 512 KB 的盘区大小,这符合建议的范围。

设置 DB2_PARALLEL_IO 实现最佳 I/O 并行性

默认情况下,在表扫描期间,DB2 for Linux, UNIX and Windows 的 I/O 服务器或预取程序为每个表空间容器执行盘区大小的 I/O 。因此,EXTENTSIZE 不仅是 DB2 的条带化单位,也是预取程序在连续预取期间使用的读 I/O 大小。

如果按照上一节中的最佳实践设置 EXTENTSIZE ,那么在包含每个 DB2 容器使用的文件系统的(单个)RAID 阵列中,应确保一个盘区的数据横跨所有的驱动器,然后就不需要设置 DB2_PARALLEL_IO 了,因为数据库管理器将自动从容器中的所有物理磁盘中并行地预取该盘区。

除了本文提供的方式外,还有其他方式可用于设置 EXTENTSIZE 和设计 DB2 系统的条带化。

在某些配置中,另一种方式是将 EXTENTSIZE 设为使连续数据横跨每个 RAID 阵列中的一个物理磁盘。也就是说,将 EXTENTSIZE 设为条块大小,而不是上一节推荐的条带大小。在这样的配置中,在连续预取期间,每个表空间容器采用单个盘区大小的 I/O 便不适用,因为它只能驱动文件系统所基于的 RAID 阵列中的一个物理磁盘。对于这些系统,如果想让数据库管理器生成多盘区大小的预取请求,并行地驱动用于每个 DB2 表空间容器的物理磁盘,就必须设置 DB2_PARALLEL_IO 。

DB2_PARALLEL_IO 允许用户显式地指定每个容器下的物理磁盘数,以便为每个容器生成适当数量的预取请求。例如,如果每个表空间容器存在于一个由 RAID 5 4+1 阵列支持的文件系统上,那么下面是合适的 DB2_PARALLEL_ IO 设置:

上一页  4 5 6 7 8 9 10  下一页

Tags:DB 最佳 实践

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接