怎样选择合适的数据库性能工具?

数据库管理系统是现代应用程序的核心,保持数据库平稳顺畅运行是组织必须保证的底线。数据库性能工具能够帮助数据库管理员优化系统操做,避免或者预防性能问题。可是,在购买这些工具以前,DBA和IT经理们应该对评估不一样产品要考虑的关键功能特性有明确的理解和认识。程序员

选择合适的数据库性能工具面试

在构建数据库性能管理能力时,有三种类型的工具可供考虑:其一是确保数据库系统级的性能水平最优化,其二是管理数据库结构的性能,帮助维护数据库中保存数据的效率,第三是监控SQL和应用性能,识别能够改善应用程序代码的问题点。数据库

为帮助你判断组织须要哪些工具,咱们下面会针对每种类型来介绍应该关注的功能特性。缓存

不一样的数据库性能工具提供了什么功能?性能优化

数据库系统监控和管理工具。这类型软件关注数据库系统内部因素,包括系统资源和数据库系统参数。它能够持续监视和报告数据库的状态,DBA能够设置性能阈值,一旦达到某个值就会触发告警。这些工具一般会提供一个指示面板,展现各类关键性能指标和阈值,同时还会有修改这些阈值设置以及其它参数的功能界面。这些界面一般会提供配置报表需求的机制,能够生成或定时生成生产环境的数据库性能报告。分布式

此外,好的数据库系统性能工具还能够提供数据库资源使用量的信息,例如缓存池消耗的内存,CPU利用率,页面锁状况。更高级的工具还能够根据测量到的系统资源使用量提供性能优化推荐配置。工具

由于大多数数据库部署场景都不会只有一个实例,系统级的数据库性能工具应该能提供统一视图,使DBA能够在一个界面上管理多个实例。这种功能包括诸如自动恢复数据库实例的功能,以及定制安装向导功能。欢迎加入大数据学习交流分享群: 658558542   一块儿吹水交流学习(☛点击便可加入群聊性能

数据库结构监控和管理产品。这种工具为DBA提供的功能能够帮助识别、分析和修复数据库空间碎片和空间使用问题。数据库分析工具监控、审查并对数据库结构存储方面的信息进行报告,例如表空间和索引,分析并改进空间利用率。学习

这些产品还能够自动分析可利用空间,管理诸如空间不足的问题,设定数据库对象可用空间上限,管理混乱和分散的数据。产品还提供达到这些条件后自动向DBA告警的功能。测试

许多数据库结构化性能工具还提供纠正问题的功能,这些产品能够给数据分配更多存储空间或者重组数据。重组数据就是从新整理数据,一般包含多个步骤的处理过程,必须对这些步骤管理执行。一些高级工具提供了识别数据库结构的能力,同时不影响数据库正常运行和提供给应用访问。

SQL监控和管理软件。这类型工具监视SQL的运行,支持DBA或数据库性能分析师基于资源利用率识别潜在问题程序和问题SQL语句。例如,SQL监控器能够按CPU利用率或者I/O请求量排序,因此关注优化最消耗资源的SQL语句就更容易些了。SQL监控工具还应该能找到SQL语句的调用源头,掌握SQL是来自某个特殊程序、存储过程、触发器仍是终端用户。

在找到可能存在问题的语句以后,具有访问计划分析功能的SQL数据库性能工具能够针对个别语句和程序检查访问计划。访问计划是由数据库优化器组件制定的,包含的实际方法将用于规划数据库访问请求数据的计划。这些工具简化了SQL优化图表,能够直接可视化地展现解释路径,SQL优化向导能够用于优化性能并推荐修改SQL代码的方法。(注:访问计划指的是语句执行计划,是数据库收到SQL执行请求后对语句的详细处理过程。后文访问路径亦是此意。)

一些SQL数据库性能工具还提供了模拟生产环境的测试功能。一般,测试环境与生产环境的系统资源是不同的,所以SQL访问路径可能差别很大,即使SQL代码没有任何变化执行状况可能也不同。这些工具能够在测试环境模拟生产环境来消除这类问题。

市场上领先的供应商提供的数据库性能工具都涉及上述各类类型的功能特性。每种类型都有专门的工具可选,也有一些工具提供的功能涵盖了以上各种型。

选择性能工具的其它考虑因素

评估数据库性能工具时,还有下面一些重要因素要考虑:

待管理数据库类型有多种。异构数据库性能工具能够管理不一样类型的数据库,使用相同或类似的界面,而同构数据库性能工具只能管理一种类型的数据库。主要使用固定一种数据库的机构,或者每位DBA专攻特定数据库的机构,应该考虑选择同构数据库性能工具,由于这种数据库性能工具能够对具体某一种数据库提供更全面的性能管理功能,这样查找和修复问题就更容易一些。

对于使用多种数据库类型的网站,DBA人员数量是有限的,这种时候异构数据库性能管理工具就有优点了,它们能够为每种数据库提供相似的功能,使得DBA监管多种平台更容易。此外,异构工具能够屏蔽不一样数据库之间的差别,简化性能监控和优化任务。

不过,在选择异构工具时,要确保全面了解它对每种数据库支持的功能,是否能知足组织须要。这种类型的工具为所支持的每种数据库提供的性能管理功能在广度和深度方面差别很大,这是很常见的。

随时间推移持续度量。数据库性能工具具有识别和解决当前问题的功能是很是重要的,更重要的是还要能随着时间推移持续监控和分析数据库性能指标。大多数监视数据库系统、数据库结构和SQL的工具还会存储历史性能数据明细。这一特性一般称为数据库性能数据仓库,或者叫历史性能表。欢迎加入大数据学习交流分享群: 658558542   一块儿吹水交流学习(☛点击便可加入群聊

保存数据库性能历史数据会帮助你识别长时间运行时的性能趋势。例如,根据性能度量的历史记录,你能够判断性能比之前更好了仍是更差了。此外,创建性能基线,基于此基线度量将来性能状况也是重要功能,这种功能只有存储了历史性能数据才可能实现。

成本和支持。数据库性能工具的成本也因工具类型的不一样而差别很大,供应商及其使用的报价方式都有很大差别。一些异构工具供应商按基础工具收费,并且管理不一样的数据库类型要单独收费。还有的厂商基于管理的实例大小报价,也有的按使用产品时间按年计费。支持服务一般是7*24在线支持或电话支持。选择支持随时电话响应的供应商是很是明智的决定。

一旦你理解了不一样数据库性能管理工具的核心需求和功能,下一步就是了解每种数据库工具领域中排行靠前的供应商和他们提供的数据库性能管理产品。

结语

感谢您的观看,若有不足之处,欢迎批评指正。

若是有对大数据感兴趣的小伙伴或者是从事大数据的老司机能够加群:

658558542    (☛点击便可加入群聊

里面整理了一大份学习资料,全都是些干货,包括大数据技术入门,海量数据高级分析语言,海量数据存储分布式存储,以及海量数据分析分布式计算等部分,送给每一位大数据小伙伴,这里不止是小白汇集地,还有大牛在线解答!欢迎初学和进阶中的小伙伴一块儿进群学习交流,共同进步!

最后祝福全部遇到瓶颈的大数据程序员们突破本身,祝福你们在日后的工做与面试中一切顺利。

相关文章
相关标签/搜索