文本版|topic 高级搜索
   名人堂 帮助 论坛制度 意见反馈 | 首页 博客 周新贴 专题 求职 读书
RSS 底部
 
社区导航: 专家门诊   网络技术   操作系统   数据库   程序设计   系统应用   考试认证   CIO及信息化   站长交流   综合交流   下载基地  51CTO产品服务 设为首页 | 收藏本站
51CTO技术论坛» DB2 » 教你提高商业智能环境中的DB2查询性能       [ 打印]  [ 订阅]  [ 收藏]  [ 推荐给朋友]   [ 本帖文本页]

论坛跳转:
     
标题: [转载] 教你提高商业智能环境中的DB2查询性能  ( 查看:428  回复:0 )   
 
ronginy
新新人类  点击可查看详细



帖子 5
精华 0
无忧币 25
积分 25
阅读权限 20
注册日期 2007-9-29
最后登录 2007-11-4 离线

[查看资料]  [发短消息]  [Blog
       
发表于:2007-9-29 00:57   标题:教你提高商业智能环境中的DB2查询性能
上一帖 |
本文主要讨论可以使决策支持系统(DSS)中的大型查询高效地执行的一些方法。这些查询通常都是访问较多数据的单纯 select 查询。下面是我们要讨论的一些方法:
1、建立适当的参照完整性约束;

2、使用物化查询表(MQT)将表复制到其它数据库分区,以允许非分区键列上的合并连接;

3、使用多维集群(MDC);

4、使用表分区(DB2® 9 的新功能);

5、结合使用表分区和多维集群;

6、使用 MQT 预先计算聚合结果。

本文中的例子针对 Windows  平台上运行的 DB2 9。但是,其中的概念和信息对于任何平台都是有用的。由于大多数商业智能(BI)环境都使用 DB2 Database Partitioning Feature(DPF,DB2 数据库分区特性),我们的例子也使用 DPF 将数据划分到多个物理和逻辑分区之中。


数据库布局和设置

本节描述用于在我们的系统上执行测试的数据库的物理和逻辑布局。

星型模式布局

本文使用如下所示的星型模式:



清单 1. 星型模式
其中的表的定义如下:


事实表 SALES_FACT 包含 2006 年的总体销售信息。它包括产品售出日期、产品 ID、销售该产品的商店的 ID、售出的特定产品的数量,以及产品的价格。事实表中还添加了 TRANSACTION_DETAILS 列,以便在从事实表中访问数据时生成更多的 I/O。

1、维度表 DATE_DIM 包含商店开放期间的惟一的日期和相应的月份、季度和年份信息。

2、维度表 PRODUCT_DIM 包含公司所销售的不同产品。每种产品有一个惟一的产品 ID 和一个产品描述、型号以及质地。

3、维度表 STORE_DIM 包含不同的商店 ID 和商店的位置、所属街区以及所属区域等信息。

数据库分区信息




各表都位于它自己的分区组中。3 个维度表都比较小,所以它们位于一个数据库分区上。而事实表则跨 4 个分区。

表空间信息




缓冲池信息

本文中的测试所使用的默认缓冲池是 IBMDEFAULTBP,该缓冲池由 1,000 个 4K 的页面组成。在本文的测试中,所有表空间共享这个缓冲池。在通常的 BI 环境中,会创建不同的缓冲池。

[ 本帖最后由 ronginy 于 2007-9-29 01:00 编辑 ]



论坛活动:测测你对IT技术大会的了解指数(赠微软礼品、无忧币)
2007-9-29 00:571楼
[ 顶部 ]
     
论坛跳转:  

| | |

标记已读 · 删除论坛Cookies · 文本版 · WAP
 
| 诚征版主 | 版主堂 | 意见建议 | 大史记 | 论坛地图
Copyright©2005-2008 51CTO.COM  Powered by Discuz!
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系。
京ICP备05051492号