• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >DB2 > DB2 中 MQT 的匹配原理及使用技巧

DB2 中 MQT 的匹配原理及使用技巧

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2017-06-28

匿名通过本文主要向大家介绍了db2 mqt,锚杆钻机 mqt110,mgn mqt82.exe,mqt,mqt气动锚杆钻机等相关知识,希望本文的分享对您有所帮助
</div>

简介

MQT(Materialized Query Table,物化查询表) 物化了涉及一个或多个表或昵称的查询的预先计算结果。而后续的查询可以通过全部或部分匹配 MQT,并由 DB2 来补偿剩余的查询功能,从而达到提高查询性能的目的。本文将会介绍 DB2 中 MQT 匹配的基本原理,并基于此指出如何设计 MQT 从而能使得查询获得更高的匹配率从而提高查询效率。

MQT 匹配原理

MQT 在 OLAP 场景下能够有效提高复杂查询响应时间,尤其是有下面几类数据操作需求的查询:

在一个或多个维度上聚合数据。

在多个表之间连接数据。

数据来自于一个常见的数据访问子集—也就是该子集会被频繁访问,MQT 能够避免重复计算。

MQT 对应用程序是完全透明的。MQT 的相关信息已经被整合进 DB2 SQL 编译器中,它们会判断是否 MQT 应该被用来响应一个完整查询或者查询的一部分。因此,用户可以在不改变应用程序代码的情况下,创建和删除 MQTs,就和创建和删除索引而不需要更改应用程序一样。

而如何做到上面的透明性,这是由 DB2 SQL 编译器的 MQT 匹配算法来完成。如果我们把自己作为 MQT 匹配算法的作者,最容易想到的就是 MQT 需要满足以下条件才能够被匹配:MQT 中包含查询需要的所有行 (Record);MQT 中包含查询需要的所有列 (Column);MQT 中行的冗余度与查询结果一致。或者通过某种程度的补偿能够达到上述 3 个条件,那么 MQT 才有可能匹配对应查询。在 DB2 中也是遵循上述基本原理来进行匹配。其大致步骤如下:1) 在查询重写 (Rewrite) 阶段,DB2 编译器会针对目前所有可能被匹配的 MQT 进行分析,并选择一个最优的 MQT 匹配执行方案和不用 MQT 的执行方案。2) 在查询优化 (Optimizer) 阶段,会计算上述两种方案的成本,并选择成本最优的方案作为最终执行方案。需要注意的一点是在第一步中选择最优 MQT 匹配方案是一种启发式的选择 (rule/heuristic based),并没有真正计算成本。而且在这个过程中,可能匹配的 MQT 数目越多,需要的匹配过程越复杂,对应的编译时间越长。所以说并不是 MQT 越多越好,一方面 MQT 会占用存储空间,同时会增加编译时间。用户需要针对性地创建 MQT,保证其能够真正带来性能上的提升。而匹配的具体算法就不在这里详细阐述。如果读者有兴趣,可以在参考资源 2 中找到具体细节。

 2 3 4 5 6  下一页</div> </div> </div> </div> </div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 用 DB2 说明工具深入理解物化查询表(MQT)刷新机制
  • DB2 中 MQT 的匹配原理及使用技巧

相关文章

  • 2017-06-28高性能数据挖掘:在 InfoSphere Balanced Warehouse 中使用 SAS PMML 模型的并行计分性能
  • 2017-06-28DB2 Load 和 Oracle SQL*Loader
  • 2017-06-28DB2 pureXML如何应对新一代数据库技术挑战
  • 2017-06-28DB2数据库完整性暂挂SQL0668N的错误案例
  • 2017-06-28用 Performance Warehouse 数据来检修和调优 DB2 UDB 服务器
  • 2017-06-28DB2中通用的存储过程分页程序
  • 2017-05-11用表单来提交sql(转)3
  • 2017-06-28DB2中如何进行数据移动
  • 2017-06-28DB2中如何提高IMPORT命令的性能
  • 2017-06-28将DWE Design Studio的功能集成到其他基于Eclipse平台的产品

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 高手教你用VCS配置DB2双机-高级
    • DB2 XML 编程,第 4 部分: 在基于 Web 的 DB2 应用程序中集成来自不同数据源的数据
    • DB2 Spatial Extender 性能调优(2)
    • DB2专家王云谈商业智能BI
    • DB2用户定义函数完成多种语言地排序
    • DB2 9.5 SQL Procedure Developer 认证考试 735 准备,第2部分
    • DB2建立nickname导致CRASH解决方法
    • DB2 V8数据库基础(二)
    • 如何在 SAP 系统中监控和分析 DB2 UDB 性能
    • DB2 最佳实践: DB2 Workload Management 工作负载管理最佳实践(上)

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有