教你提高商业智能环境中的DB2查询性能

数据库 商业智能
DB2是IBM出口的一系列关系型数据库管理系统,分别在不同的操作系统平台上服务。本文将教你如何提高商业智能环境中的DB2查询性能。

导读:DB2数据库查询功能是DB2数据库中较好的性能,DB2数据库的查询功能展现了DB2数据库的商业智能化。本文主要讨论可以使决策支持系统(DSS)中的大型查询高效地执行的一些方法。这些查询通常都是访问较多数据的单纯 select 查询。下面是我们要讨论的一些方法:

  1、建立适当的参照完整性约束;

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

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

  4、使用表分区(DB29 的新功能);

  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 环境中,会创建不同的缓冲池。

  主查询

  下面的查询用于测试本文中讨论的各种不同的方法。该查询执行一个向外连接,比较二月份和十一月份 10 家商店的销售信息。
 

这就是我要为大家介绍的DB2数据库查询的全部内容,可能有些人觉得还不够,那么以后我会继续为大家介绍着方面的内容,希望能够帮到大家。

【编辑推荐】

  1. DB2查询管理实用程序
  2. DB2查询Table占用实际空间的大小
  3. DB2查询Database里的所有的Container,如何操作?
责任编辑:迎迎 来源: 希赛网
相关推荐

2024-04-08 07:00:00

机器学习

2009-04-16 15:38:18

DB2IMPORT性能

2009-04-10 08:56:16

DB2Insert性能

2011-05-27 16:00:10

DB2

2010-08-18 09:42:11

DB2性能调优

2010-08-04 13:10:02

2010-08-18 09:26:56

DB2性能调优

2011-05-13 10:15:35

DB2专家王云商业智能BI

2010-08-05 15:17:43

DB2提高IMPORT

2010-08-06 13:45:11

DB2提高IMPORT

2010-07-29 10:19:18

提高DB2 IMPOR

2010-08-02 13:05:01

DB2应用

2010-07-28 14:07:51

DB2数据库

2011-03-21 09:51:04

DB2性能优化

2010-09-30 15:52:55

DB2循环查询

2010-09-30 14:44:20

DB2递归查询

2010-07-29 14:54:21

DB2 9 XML

2010-07-27 13:46:08

DB2提高IMPORT

2010-08-17 16:13:32

DB2 并行版本

2010-08-27 11:17:36

DB2管理环境变量
点赞
收藏

51CTO技术栈公众号