电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

数据仓库与 OLTP 性能管理_光环大数据培训

7页
  • 卖家[上传人]:gua****an
  • 文档编号:51980694
  • 上传时间:2018-08-17
  • 文档格式:DOCX
  • 文档大小:44.92KB
  • / 7 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、 光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/数据仓库与数据仓库与 OLTPOLTP 性能管理性能管理_ _光环大数据培训光环大数据培训光环大数据培训机构,DB2 数据仓库环境中的性能管理与基于 DB2 的 OLTP 应 用程序中的监视和调优很不一样。重要的差异包括:单独的单独的 SQLSQL 语句与事务。语句与事务。在 OLTP 环境中,典型的事务包含多个 SQL 语句, 常常可以在一秒内完成。对于 BI 应用程序,“事务”(用户与系统的一次交 互)可能只执行一个 SQL 语句,但是这个语句可能要运行几分钟,甚至一小时 以上,而且这不被认为是 “慢”。如果一个报告原本要运行 10 小时,而现在 可以在一小时内完成,用户会非常高兴。事实和维。事实和维。用于 OLTP 工作的 DB2 数据库很可能采用传统 3NF 设计(或相近 的设计)。而数据仓库数据库设计常常采用维,按照 “星型模式” 组织相关 的表(位于中心的 “事实” 表和相关联的维表)。连续与夜间数据库更新。连续与夜间数据库更新。对于 OLTP 应用程序,往往随时进行

      2、数据库更新。对 于 BI 应用程序,尽管对接近实时地更新数据库值的兴趣正在增长,但是数据 仓库数据库通常在夜间进行更新,常常要执行大量提取、转换和装载 (ETL) 操 作。在 ETL 处理期间通常不能进行查询访问,这要求必须及时地完成数据库更 新过程。小结果集与大结果集。小结果集与大结果集。OLTP 事务程序中的 SELECT 语句通常只获取少量数据库 行(常常只有一两行)。数据仓库查询(尤其是那些用来生成报告或在线分析 处理多维数据集的查询)可能返回成千上万(甚至上百万)行。光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/复杂查询与简单查询。复杂查询与简单查询。OLTP 事务程序中的 SELECT 语句常常非常简单:只访问一两个表,很少或不需要构建动态表,很少或不需要动态地转换数据值或类型。 与 BI 应用程序相关的查询可能长达几页,包含十几个甚至更多表的联结,包 含嵌套的或通用的表表达式、递归的 SQL、数据值不同的 CASE 表达式和数据 类型转换(通过 CAST 声明或标量函数)。不得不使用的不得不使用的 SQLSQL

      3、与自己编写(至少是自己检查过)的与自己编写(至少是自己检查过)的 SQLSQL 。在数据仓库环 境中,常常由报告或 OLAP 工具生成 SQL,您在执行它之前没有机会修改它。 您要负责设置适当的 DB2 环境,让这些查询能够良好地运行。总的来说,DB2 专业人员要通过两方面的工作帮助实现良好的数据仓库性能:设置 DB2 环境,让查询有机会良好地运行。有效地调整运行时间过长的查询(无论是否出色地完成了第一个任务)。本文主要关注 DB2 环境的设置。在下一期中,将讨论数据仓库 SQL 语句的调 优。适当地设置适当地设置 DB2DB2 环境环境建立有助于提高查询性能的 DB2 数据仓库环境涉及系统级和应用程序级措施。 对于 DB2 系统,应该注意以下方面:光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/使用使用 6464 位寻址。位寻址。更大的 DB2 缓冲区池总是有助于提高性能,但是它们对于 I/O 密集型的数据仓库工作负载尤其有用。许多有经验的 DB2 专业人员已经习 惯了 2GB(大型机)或 4GB(Linux/Unix/Win

      4、dows)的内存空间限制,他们要 花点儿时间适应 64 位程序。当前的服务器拥有极大的内存:在 IBM System z 大型机、System p 服务器(AIX 或 Linux)或 System x 服务器(Windows 或 Linux)上,可以有 1TB 甚至更多的系统内存。这些平台上的 DB2 支持至少 1TB 的缓冲区池配置。如果服务器有大量内存资源,就应该好好利用 DB2 缓冲区池。我曾经见过在有 40GB 系统内存的服务器上运行的 DB2 只配置了 800MB 的缓冲区池。这太小了: 在这种情况下(至少)10-20GB 要适合得多。请记住,随着缓冲区池大小的增加,磁盘读 I/O 活动的数量会减少。还可以让 DB2 自己选择缓冲区池大小。自动内存管理是 DB2 9 for LUW 中非常受欢迎的 特性,现在 DB2 9 for z/OS(与 z/OS Workload Manager 协作)可以通过 ALTER BUFFERPOOL 命令的 AUTOSIZE(YES) 选项管理缓冲区池大小。利用查询并行性。利用查询并行性。DB2 可以把处理查询所需的工作分割为片段,并行地执

      5、行这 些片段,这会显著减少运行时间。使用这个特性需要通过参数启用它。对于 DB2 for LUW,通过把数据库管理程序参数 intraparallel 的值设置为 YES, 就可以启用单一服务器中的并行性。在大型机和 LUW 平台上,给定的动态 SELECT 语句(动态 SQL 是数据仓库环境中常用的特性)的并行性取决于特殊 注册表 CURRENT DEGREE 的设置。如果 CURRENT DEGREE 的值(这个值应用于 给定的客户机 -DB2 连接,而不是系统范围的值)是 1,那么查询就不会并行 执行;如果值是 ANY,查询就可以并行执行(如果优化器认为这会提高性能的 话)。由 DB2 决定并行度。光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/在许多站点上,首选方法是把 CURRENT DEGREE 的默认值设置为 1(非并行),对于特定的查询,使用 SQL 语句 SET CURRENT DEGREE 把它改为 ANY 。如果 无法使用 SET CURRENT DEGREE(一些查询生成工具可能不支持使用这个语句), 可

      6、以通过 DB2 for z/OS 的 CDSSRDEF ZPARM 参数或 DB2 for LUW 的 dft_degree 数据库参数把这个特殊注册表的默认值设置为 ANY 。除了能够在单一服务器中分割查询之外,DB2 还可以通过 DB2 for z/OS 的 sysplex 查询并行性和 DB2 for LUW 的 Data Partitioning Feature 跨集群 配置中的多个服务器分割查询。请记住,DB2 for z/OS 查询并行性是提高 zIIP 引擎利用率的好方法,zIIP 引擎是专用的大型机处理器,有助于为组织 节省计算成本。数据库级性能调优数据库级性能调优可以通过下面这些与数据库相关的措施让 DB2 数据仓库环境更适应查询:对大型表进行范围分区。对大型表进行范围分区。范围分区在大型机 DB2 平台上已经存在很长时间了, 从 DB2 9 开始在 LUW 服务器上也可用了。这个特性根据键值范围把表行存储 在几个不同的物理文件中。它对于促进大型机服务器上的查询并行性尤其重要。 在 LUW 服务器上,它还可以通过一种称为数据分区消除的查询优化技术提高查 询的性能。对于

      7、哪些表应该进行范围分区,并没有绝对的规则,但是可以考虑对包含一百 万或更多行的表进行范围分区。为表选择的分区键(可以是单一列,也可以包 含多列)取决于您的需要,但是基于时间的键(例如日期列)对于数据存档过 程是非常高效的。注意,范围分区与散列分区算法不同,DB2 for LUW 在使用 光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/Data Partitioning Feature 时使用散列分区算法把表行分布到多服务器集群的节点上。维持丰富、准确的编目统计信息。维持丰富、准确的编目统计信息。在我看来,DB2 具有市场上最好的查询优化器(IBM 首创了基于成本的 SQL 语句优化),但是它必须有足够的信息,才能 做出合理的访问路径决策。查询优化的关键输入是 DB2 编目表中的统计信息, 所以这些统计信息应该是最新的。最好的实现方法是定期运行 RUNSTATS(DB2 for LUW 系统上的命令,DB2 for z/OS 环境中的实用程序)。注意,DB2 9 for LUW 有一个自动统计信息收集特性。编目统计信息是否丰富也很

      8、重要(DB2 对数据库中的数据了解越全面,查询的 性能就可能越好),所以应该收集您能够收集的所有信息:关于索引和表的统 计信息,尽可能多的列的基数和分布信息。请记住,RUNSTATS 收集的信息越多, 它消耗的 CPU 时间就越多;因此,如果处理能力不足,可能需要把列统计信息 生成限制在查询谓词中使用(或很可能使用)的列。利用索引。利用索引。对于支持 OLTP 应用程序的数据库,人们在为表创建索引方面往往 非常保守,这有一个很合理的原因:在表上定义的每个索引都会增加每个 INSERT 和 DELETE 操作的成本(如果更新的列是索引键的组成部分,UPDATE 操作的成本也会增加)。在 BI 环境中,数据获取(而不是数据更改)操作的性能往往更重要;因此, 与 OLTP 数据库相比,在数据仓库数据库中创建更多索引通常是有意义的。但 是,也不要为数据仓库表创建过多的索引,否则定期的 ETL 数据更新过程可能 无法及时完成(这会导致数据仓库向查询 “开放” 的时间推迟,有时候会让 用户不满)。在 OLTP 环境中,我一般会把每个表的平均索引数量限制在四或五个。对于 BI 系统中的数据库,我觉得

      9、每个表八到十个索引更合适,但是我不会一开始就创光环大数据光环大数据-大数据培训知名品牌大数据培训知名品牌http:/ 光环大数据光环大数据 http:/建这么多索引。相反,我会先为每个表创建五或六个索引,如果以后发现需要减少某些查询的运行时间,那么可以定义更多索引。明智地使用聚簇。明智地使用聚簇。数据聚簇(表行的物理次序)在数据仓库中是个重要的问题,因为常常会大批地获取行(而不是像典型的 OLTP 系统那样获取小结果集)。 在连续获取大量行时,引用的局部化(所需的行在目标表中的物理位置相互接 近)会对运行时间产生显著的影响。应该尽可能精确地预测用户希望查询的东 西 具有给定的客户 ID 的所有行?关于给定的产品的所有行?某一日期 范围内的所有行?如果两个或更多聚簇键对于某个表都是有意义的,那么可以考虑使用 DB2 9 for LUW 的多维聚簇 (MDC) 特性。大型机 DB2 管理员可以使用 DB2 for z/OS V8 中提供的表分区改进来实现多维聚簇,具体地说,按一个键进行数据分区, 然后按另一个键对分区中的行进行聚簇。接下来要考虑查询接下来要考虑查询现在,已经设置了 DB2 系统和数据库,为

      《数据仓库与 OLTP 性能管理_光环大数据培训》由会员gua****an分享,可在线阅读,更多相关《数据仓库与 OLTP 性能管理_光环大数据培训》请在金锄头文库上搜索。

      点击阅读更多内容
    TA的资源
    点击查看更多
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.