Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11682080
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-09-05 12:44:43

在数据仓库系统中,系统I/O性能是系统整体性能很关键的因素,往往很多时候,我们在思考在采用数据库,IBM pServer和IBM存储 style="COLOR: #000000" href="" target=_blank>存储的的情况下,系统的I/O该怎么配置。

    本文将在这方面进行技术的探讨。

非共享体系的概念

    一个数据库包括一个或者多个数据库分区(Partition)。每个分区在本质上就是一个小型的数据库:拥有且只拥有自己的数据、日志、锁以及其它的组成数据库的基本要素。所以,DB2多分区数据库也称为是基于非共享(Share Nothing)或者海量并行处理(MPP)构架的数据库。

    在一些OLTP和ERP的环境中,由于数据量相对小,而且每次只是查询很少比例的数据。而在数据量很大,要求针对大量数据的并发查询的环境,比如数据仓库的环境,就需要多分区数据库。
基于分区的、非共享的结构的好处是:

-减少了对共享资源(内存,I/O通道,存储)的访问冲突,提高并行度;
-分区内(SMP)并行和分区间(MPP)并行的完美结合。

系统配置BCU(Balanced Configuration Unit)概念

    一个系统应该是均衡的系统,是指把处理器、内存、存储和DB2数据库的Partition(分区)、配置参数等合在一起,作为一个可扩展的基本建设单元。通过多个单元复制生成大型系统。

    每个单元BCU是最小的、可复制的硬件和软件的组合。针对BI系统,单元保证了基础构架上扩展性,提供了磁盘I/O,内存、处理器、网络的优异扩展性能。如下图:

     一般的,在计算机系统中都会有瓶颈存在。比如一个 style="COLOR: #000000" href="" target=_blank>可以驱动峰值为28800IOs/sec的存储系统,然而配置的存储子系统只能达到14440IOs/sec。 那么处理I/O要求高的负荷时,最多将有50%的时间处于I/O等待。所以,合适比例的HW/SW组织到一起,是BCU成功的关键。

    通过对客户现有的BI系统配置经验、平均负荷分析,以及组成BCU的各个部分的专家工作下,考虑各个部分之间的平衡,同时也考虑一定的性价比等因素,形成BCU。这样的BCU在保证性能的前提下,提供了高的性价比。

    BCU在保证性能的前提下,提供了高的性价比。

BCU和数据库分区

    在BCU之下,还有一个BPU的概念。所谓BPU,是一个逻辑的概念,是指服务于一个数据库分区所需的资源。BPU在进行数据仓库的容量规划时,非常有用。由于在不同的数据库分区之间平均分配数据和资源,所以从处理器、内存、I/O等的角度看,确定了BPU的系统需求,那么就可以利用这个信息来计算整个数据库的硬件的配置。

    BPU在系统的设计和实施阶段也非常有用。可以在BPU层次来设计物理硬件、存储、数据库参数配置等,然后把该BPU的配置复制到整个BCU。这样就大大简化了系统的初始系统设计、配置,管理、维护,未来的系统升级等等。

系统I/O性能估算原则

    由于采用非共享体系结构,因此我们只需估算一个分区(BPU)的性能,然后线性增加即可。

    按IBM的BCU的经验,一个理想的系统:
    - 一个BCU
          -分区BPU与CPU 比率
          -Power5 processors = 1 -2 BPU/CPU 
          -而在AIX power5的机器上,一般是一个CPU对应一个以上BPU,考虑到本次测试p570 power5+ 1.9GHz,我们建议,采用BPU数目略微多于CPU数目

    -内存与分区BPU比率 
          - 4-8GB/BPU 
    - I/O 容量与BPU 比率 
          -BCU – 8DP, 600MBs -1200MBs,则DP 75MBs-150MBs
    即一个分区BPU,使用0.5或1块2G FC卡

    举例估算:两台p570运行数据仓库系统,应该配置多大存储带宽
 -主机p570 16C 64GB 两台
          -采用16个BPU,即数据库分区, 
          -BPU内存比是1:4
 -主机光纤卡 16 
          -每台机器有16个分区BPU,则一个BPU,使用1块2GB FC,可以达到150MBs(按照一般测试值估算)
 -磁盘 
          -数据库非共享的,因此每个BPU,应使用一个或多个独立的盘包 
          -磁盘整体数量,应该和光纤卡匹配,跟经验,1块146GB 1K磁盘大概能够达到10MBs的速度.,则每个分区需要15块磁盘. 
          -则总共需要15*16=240块磁盘,I/O性能才是匹配的 
          -磁盘阵列,也应要匹配16块光纤卡所需要的带宽.

总结:本文中,我们是采用系统配置要平衡的概念进行I/O配置评估,即看待一个系统时,其CPU和内存,主机I/O带宽,存储带宽应是平衡和一致的。合理的配置是保证系统整体性能的关键。

阅读(533) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~