时刻盯住你的数据(二)

    |     2015年7月12日   |   文库   |     评论已关闭   |    1102

||2005-04-13


而且,命令在到达数据库之前,数据库的管理员能够建立一些机制来使监控符合公司和国家政府的一些政策。例如,某些政策规定不能对一些安全性要求比较高的数据进行监控。另外,一些效率比较低的SQL语句和可能对系统造成严重危害的SQL语句在没有到达数据库被执行之前也会被截获。另一方面,从数据库命令执行之后的返回码也会被翻译,存储起来。举例来说,当收到“SQL1024N unavailable resource”这条消息的时候,它可以被翻译成更好懂的形式,“The table,TBSTATE is being loaded please try again in 5 minutes”


 


在大多数时候,实施数据使用监控技术都通过第三方的成熟的产品。大多数的供应商都提供标准格式的报表,并且能够在关系数据库中存储起来。


 


网络探测器


 


网络探测器是一个应用程序,它能够通过级别较低的网络接口来分析和获取网络流量。这个应用程序在进行数据收集的时候试图收集所有的信息。因为它也监控一个特定的端口,所以在某种程度上和开放服务器比较类似。


 


这种技术的缺点在于它不能捕获所有的信息,同时也会给网络安全带来一定的麻烦,因为它对用户的网络验证的要求不是很高。


 


使用这种技术的优点在于它部署的时候比较方便,并且能够收集到双向的信息,另外一个优势在于,这个技术的使用不会降低网络和数据库的性能。


 


数据使用监控中更多的特性


 


大多数数据使用监控产品都能够收集到一些核心的监控信息,例如SQL命令,它的开始和结束时间,CPU时间,发起请求的程序和客户端。数据使用监控产品之间的区别在于它们提供的独特的监控特性。这些附加的特性能够以标准报告的形式出现,包括对SQL语句的解释,收集数据所采用的技术,数据粒度,监督管理策略,或者数据存放的方式。从我的经验上来看,在我使用了这么长时间的数据使用监控产品之后,我发现有两大特性最有用,它们是数据粒度和规则引擎。


 


数据粒度


 


通过从底层对SQL语句进行分析能够提供一系列丰富的信息,这些信息能够被用来提高所收集到的数据的价值。数据粒度的提高能够扩大收集到的信息的深度和广度。在过去,当进行IT管理的时候,企业的客户和股东问起数据库中的数据是怎样被使用的时候,数据库的管理员也无法回答。一个例如哪张表和字段被使用这样简单的问题也很难被回答。数据库管理员不得不写一个特定的脚本来分析SQL语句,然后得到一张格式化的报告,或者把截获到的SQL语句提交给用户。这不是最有效率和最效果的方法来得到同样的结果。进而,由于时间和资源的约束,大量非结构化数据的存在使其他大量的类似问题无法得到回答。从底层分析SQL语句,并把它们存储在关系数据库之中能够更方便的得到要找的信息,这样的做法在组织中受益的不仅仅是数据库管理员们。


 


从底层分析SQL语句,并把结果存储到一个关系数据库中能够提供一个容易和灵活的存取数据的平台。同时,企业可以利用它们在商业智能工具方面的巨大投资,例如Cognos, Hummingbird, Business Objects, Actuate Microsoft Excel and Access,来进一步分析数据,而不是仅仅停留在数据使用监控工具提供商所提供的报告。倘若所有的员工都能得到所需要灵活的可扩展的报表,并且能够利用这些数据使用情况来为公司的整体策略服务的话,对数据的无限获取将会在整个企业变为现实。


 


实际的例子


 


索引使用分析


 


一个数据库管理员能够实现发现运行效率很差的SQL语句,这样的SQL语句能够给数据库带来很大的性能危害。数据库管理员检查的重点就是索引的适当使用。数据库管理员通过把SQL语句分解成比较小的部分能够很容易的发现WHERE语句使用的字段是否有合适的索引存在。如果出现的这样的错误的话,数据库的性能会下降很多,甚至导致数据库无法使用。


      


以上所描述的分析方式是非常耗时间的,以前只能对运行效率最差的SQL语句所采用。现在有了数据使用监控工具的帮助,自动生成的报告能够提醒数据库管理员目前在数据库中有一条运行效率比较低的SQL语句在损害数据库的性能。


AMT


相关链接:
时刻盯住你的数据(一)
时刻盯住你的数据(二)
时刻盯住你的数据(三)

责编:admin

转载请注明来源:时刻盯住你的数据(二)

相关文章

噢!评论已关闭。