当前位置:学习大全 > 论文中心 > 科技论文 > 内容页

数据仓库的运行监视及性能优化研究

2021-07-17 15:35:04 admin

  数据仓库的运行监视及性能优化研究

  摘要:数据仓库的初始建立只是数据仓库项目的开始,其后的更新维护和优化需要投入大量的工作。数据仓库运行过程中需要监视系统的运行状态,需要对数据仓库进行维护和优化。本文对数据仓库的运行监视及性能优化进行了研究。

  关键词:数据仓库;运行监视;性能优化

数据仓库的运行监视及性能优化研究

  中图分类号:TP311.13 文献标识码:A文章编号:1007-9599 (2012) 07-0000-02

  数据仓库系统在规划、设计完成之后,要将数据仓库投入运行,为上层的决策提供数据,即将开发好的数据仓库的各个组件的运行系统组装起来,从数据源将数据加载到数据仓库中,然后在其上开发数据仓库应用。

  一、数据仓库的运行监视

  数据仓库,尤其是大型的数据仓库,是一个庞大复杂的系统。数据仓库管理员(DWA)在管理过程中经常会感到很困惑,很难跟踪到整个系统的各个方面。DWA急需一个稳定可靠的跟踪系统,使其能够很方便地跟踪、监控整个数据仓库系统的运行情况。同时,系统应该结合电子邮件和网站,使之成为一个集成的环境。DWA应该关心数据仓库系统各方面的特性,这通常可以通过观察它的ETL过程来确定。下面是一些DWA可能关心的跟踪节点,由于实际情况的差异,这些节点可以根据实际情况进行增删。

  (一)日志文件

  ETL和其他一些应用程序是数据仓库的基础,通常它们被用来组织成批作业,在夜间相对空闻时运行。ETL日志文件反映了程序的运行状况,判别程序是否出错可以通过特别的字符串来进行,或者可以通过查找某些关键字/词来发现。例如,根据经验,SAS ETL程序中有两类错误被认为是严重的错误,必须加以重视,它们是“…Because of errors”和“…was stopped”。因此可以通过读取和分析日志文件发现其中的问题。

  (二)ETL数据

  买际上从ETL日志文件中还可以得到ETL抽取源数据的一些指标,如响应时间和数据量。DWA可以通过跟踪下载字节数和抽取速度来了解ETL的性版并以此作为作业编排和数据仓库扩充的依据。

  (三)应用服务器监视

  在数据仓库中会用到一些应用服务器,如SAS/Share服务器、SAS/Internet服务器等,它们在系统启动时就自动启动了,但有时它们也会由于某些原因而停止运行。在Unix系统中,通过检查系统的进程,可以判别这些应用服务器的活动状况。同时,如果需要,这些应用服务器的日志文件也可以用做进一步的分析。

  (四)硬盘空间

  DWA需要清楚地知道磁盘空间的使用情况,包括磁盘空间的空余和数据增长情况。例如,在Unix系统中,“df-k”命令可以列出所有文件系统当前的使用情况。通过定期记录这些数据,DWA就可以分析出磁盘的使用情况,尤其是数据的增长情况。

  (五)其他

  还有其他许多方面是DWA所关心的,如派系统(即操作型系统)的状态、用户访问和权限跟踪等。对待殊的系统,就必须考虑这些特别的跟踪点。

  跟踪系统实际上是数据仓库系统的一个重要组成部分,是数据仓库管理员和系统维护人员进行系统跟踪与维护的有力手段之一。另外,可以利用跟踪的结果作为数据仓库性能优化和调整的依据。

  数据仓库的性能优化有两个方面的内容:一方面是数据仓库数据处理程序的优化;另一方面是应用程序的性能优化。

  二、数据处理程序调度优化

  数据仓库系统中的数据处理程序很多,包括数据管理程序(如数据抽取程序、更新程序、归档程序)、数据集市以及数据立方生成程序、报表生成程序等。这些程序的执行一般是在夜间以批处理的方式进行的,但是对于大型企业级数据仓库来说,数据处理程序非常多。如果不能在指定的时间段完成,就会影响前端分析的及时性。另外,基于数据仓库的应用在不断地增加。因而,需要合理地调度数据仓库中任务的执行,提高系统的数据处理能力。

  数据仓库系统巾的任务之间具有复杂的先后关系,构成了一张任务工作流图,只靠数据仓库管理员的手工调度是不行的。因此,需要使用工作流技术管理和调度数据仓库中的任务。一般情况下,数据仓库服务器大都采用服务器、小型机或并行机,有多个CPU。因此,可以使用多线程改多进程技术,使得任务在多个CPU上并行执行。这样,需要任务调度程序按照任务间的关系,合理地分派任务在不同的CPU上运行。

  三、前端应用性能优化

  提高数据仓库系统前端应用性能的方法有多种,如归档休眠数据、去规范化设计、预计算、列复制、预连接、建立索引等方法。

  (一)归档休眠数据

  所谓休眠数据是指长时间不用的数据。这种数据的粒度不同,可能是某个数据集很长时间末被使用,或者数据集中的某些属性一直未被使用,或者数据集中的某些元组或值一直未被使用。大量的数据是最主要的性能障碍。数据仓库管理员用来提高数据仓库性能的最好的方法就是归档那些不用于此数据仓库的数据。归档分为近线归档和离线归档。休眠数据有三种类型:关系表级休眠、属性级休眠和值级休眠。

  关系表级休眠是指某个数据表和数据集长时间未被使用。这种情况在数据仓库中是常见的。例如,开始时设计了一些基于数据仓库的应用,产生了一些汇总数据表(集),而后因为业务的原因,不再需要该应用,从而进行了重新的开发,但是原来的数据表却没有清理。

  属性级休眠是指数据表(集)中的某些属性一直未被使用。这种情况对于分析应用来说是很普遍的。用户对数据之间的关系还不清楚,因此希望将所有的属性都加入导出数据集中,可是在分析数据时却只用其中的少数几个,而开始设想的分析却一直没有进行,一些属性列就长期地处于休眠状态。因此,建议在设计数据集市或主体数据荣时只选择目前需要的局性列,而在需要时,再增加其他列。

  值级休眠是指数据表中的某些元组长时间没有被存取。如计划数据表中存储5年的数据,可是实际分析中一般只用到近半年的数据。这样,一大批数据就处于休眠状态。

  对于休眠数据的处理可以将它们转储到近线存储器上,在需要的时候可以从其中读出。归档休眠数据的关键问题是如何监视数据的使用以及确定哪些数据处于休眠。可以通过使用活动监视器来监视数据的使用情况,有两种基本类型的活动监视器:SQL插入式监视器和非SQL插入式监视器。SQL插入式监视器是一种用来截取SQL查询并可能重新表示这个查询的监视器。非SQL插入式监视器则不能改变SQL查询。

  (二)去规范化设计

  从性能的观点,去规范化具有两个主要的优势:首先,大型的、长时间运行的表格扫描或复杂的连接操作可以被简单地查找预先计算的结果所取代,由于预先计算结果与原始数据相比,在处理时间上相差几个数量级,所以它能够提高多个数量级的查询响应时间;其次,作为第一个优势的推论,去规范化可以大量减少系统为获得某个特定查询结果而需要处理的工作量,使系统资源的使用更加有效。下面讨沦两种主要的去规范化方法:预聚合计算和实例化视图。

  1.预聚合计算

  数据仓库中的数据可以采用滚动的方法将细节数据进行聚合运算。例如,当数据被输入到数据仓库中时,以每小时为基础存储数据,在这一天结束时,以每天为基础存储每小时的数据。在一周结束时,以每周为基础存储每天的数据。以此类推,同时将细节数据归档。通过这种方式来组织数据,数据仓库设计者将极大地减少存储数据所而要的空间井潜在地提高性能。当然.设计员也会丧失查看已过时的详细数据的权利,越早获取的数据,保留的详情就越少。但是,许多类型的数据可接受这种处理,例如销售、产品和市场数据。另外,如果既想保留细节数据,又想进行汇总分析,如在OLAP分析应用中,对于一些汇总的结果可以预先计算出来,在查询分析时,查询处理器通过查询重写技术使用预算的汇总结果给出回答。这样可以大大提高查询分析效率。

  2.实例化视图

  数据仓库中的数据集实际是一些数据源的视图,有的是OLTP数据源的视图,有的是数据仓库中数据集的视图。每个视图一般是建立在多个数据集之上的,因此就涉及许多连接操作,而连接操作在数据库查询中是最费时的操作之一,尤其是在数据仓库中每个数据集的元组数又很大。因此,节省机器资源提高分析效率的只有效的技巧之一是将这些视图的连接操作预先实现,并将连接结果存储为一个实际数据集,形成实例化视图。之后,无论何时用户想执行一个通常需要连接这两个表格的查询,都可以直接查询预连接的、去规范化的表格来代替连接两个表格。视图实例化技术也带来了额外的开销,如存储空间开销、查询重写开销和视图维护开销等。因此,需要在效率和上述开销之间进行权衡。建立索引是提高查询效率最常用的技术。

  (三)建立索引

  索引技术不同于扫描整个关系表来查找某行中的某列能够满足“Where”于句的判定,而是创建一个有关此列的单独索引结构。这个索引结构包含所有实际离散列值的一个分类表,表里的每个值与一个指针列表相关联,这些指针指向包含此值的原始表格中的行。实际上,建立索引可以很好地改善数据仓库的性能。

  为允许数据库引擎快速地找到分类索引表中的任意一个元素,可使用一个B树表示法来内部存储这种索引,为B树索引。但是使用索引需要增加磁盘存储量,增加了维护索引的开销,甚至能够降低某些查询的性能,B树的代价相对较大。在数据仓库环境下,位图索引对低离散值的索引有较大的优势,可以较好地满足OLAP查询的需求,也可以使用其他的索引技术。

  参考文献:

  [1]江放,李海刚,高国安.基于数据仓库的数据采掘及其在决策支持系统中的应用[J].现代计算机.1999,01

  [2](美)[W.H.因曼](W.H.Inmon)著,王志海等译.数据仓库[M].机械工业出版社,2000

  结尾:非常感谢大家阅读《数据仓库的运行监视及性能优化研究》,更多精彩内容等着大家,欢迎持续关注学习大全网,一起成长!

[科技论文]相关文章
[科技论文]图文精华
上一篇:
下一篇:没有了