数据库性能优化主要包括哪些方面?

数据库性能优化主要包括哪些方面?,第1张

包括网络、硬件、操作系统、数据库参数和应用程序

数据库的优化通常可以通过对网络、硬件、操作系统、数据库参数和应用程序的优化来进行。最常见的优化手段就是对硬件的升级。

根据统计,对网络、硬件、操作系统、数据库参数进行优化所获得的性能提升,全部加起来只占数据库系统性能提升的40%左右,其余的60%系统性能提升来自对应用程序的优化。许多优化专家认为,对应用程序的优化可以得到80%的系统性能的提升。

扩展资料

数据库性能优化法则归纳为5个层次:

1、  减少数据访问(减少磁盘访问)

2、  返回更少数据(减少网络传输或磁盘访问)

3、  减少交互次数(减少网络传输)

4、  减少服务器CPU开销(减少CPU及内存开销)

5、  利用更多资源(增加资源)

由于每一层优化法则都是解决其对应硬件的性能问题,所以带来的性能提升比例也不一样。传统数据库系统设计是也是尽可能对低速设备提供优化方法,因此针对低速设备问题的可优化手段也更多,优化成本也更低。

任何一个SQL的性能优化都应该按这个规则由上到下来诊断问题并提出解决方案,而不应该首先想到的是增加资源解决问题。

参考资料来源:百度百科--数据库系统优化

随着新兴技术的发展,各行业的业务量开始急剧增加,数据中心的规模也越来越大,能耗问题突出。而服务器作为数据中心的重要组成部分,功耗比例高达40%-50%,因此如何有效降低服务器能耗成为当前急需解决的难题。在此背景下,浪潮服务器NF5476M5在节能方面进行了极致化设计,包括单盘上下电、散热策略自动匹配等,可通过CPLD实现单块硬盘上下电控制,将系统吞吐控制在一定数量的磁盘,让其他硬盘进行休眠状态,节省能耗。

亿万克是个做服务器很好的公司,买服务器比较推荐亿万克,有兴趣可以去官网了解一下。亿万克集服务器和存储等数据中心产品的研发、生产、销售、服务系统整合于一体,是民族高科技制造企业领导品牌 。

亿万克亚当G952N6是一款4U双路机架式服务器,采用最新一代Intel Xeon可扩展处理器,具备高性能计算特性和灵活的IO扩展能力,是兼备训练与推理功能的全能型AI异构型服务器,可广泛应用于互联网、云计算、数

据库和大数据等场景。【感兴趣请点击此处,了解一下。 】

结果如表 1 所示。 表1. Web 浏览器的内存使用情况比较 应用程序 Effective resident 内存(KB) Resident 内存(KB) Firefox 27708 35068 Opera 20477 27816 Konqueror 13479 29748 Dillo 2776 6888 Lynx 1101 1540 从该表可以看出,这些浏览器的内存使用情况存在很大差异,内存需求最高的浏览器(Firefox)使用的内存比需求最低的浏览器(Lynx)多了大约 27 倍。这并不是非常公平的比较,因为 Lynx 并不能实现同样的功能(举例来说,它甚至不能显示图形),但这说明,可以根据需求极大地降低内存的使用情况。尽管表 1 中列出的前 3 个浏览器的功能与第一个浏览器的功能多少有些相同,但 Opera 使用的内存大约只有 Firefox 的 2/3,Konqueror 使用的内存比 Firefox 少一半。 对于要求不太高的使用需求来说,Dillo 是介于功能完善的浏览器和只有少量开销的 Lynx 之间的折中方案。Dillo 提供了一个 GUI;但在默认状态下其功能相当有限,没有其他插件时甚至不支持 SSL! 还需要注意我们对共享内存的使用也进行了比较,Konqueror 的执行情况比 Firefox 更好,它使用的内存大约少 14MB;然而,如果查看一下总体使用情况,Konqueror 也仍然高于 Firefox,但差距不大,大约只有 5MB。这是因为 Konqueror 大量地使用了 KDE 共享库,使用 KDE 桌面时,这些库被加载到各种应用程序。然而,如果没有使用任何其他 KDE 应用程序,Opera 将是比 KDE 更佳的选择。稍后我们将更加详细地讨论这个问题。 文字处理器为了测试文字处理器,我加载了首次对表 2 中列出的文字处理器进行测试时使用的同一个 Microsoft Word 格式的文档。 表2. 文字处理器的内存使用情况比较 应用程序 Effective resident 内存(KB) Resident 内存(KB) OpenOffice Writer 70114 81960 AbiWord 58029 65224 KWord(来自 KOffice) 46512 60096 从这些数字可以明显看出,OpenOffice Writer 使用的内存比 KWord 或 AbiWord 都要多。KWord 使用的内存仅次于 OpenOffice,它在正确地显示 Microsoft Word 格式的文档方面做得最好。尽管 AbiWord 也可以成功地打开该文档,但在正确显示文档时会遇到一些问题,因此如果对您来说与 Microsoft Office 的协作非常重要,最好选择 OpenOffice。 即时消息客户机 为了测试即时消息,我使用表 3 给出的 IM 客户机分别登录到 MSN Messenger 帐号中。 表3. IM 客户机的内存使用情况比较 应用程序 Effective resident 内存(KB) Resident 内存(KB) aMSN 18455 20344 Gaim 13456 21464 Kopete 10988 24176 KMess 7154 19660 此处,Kmess 最适合我,并且它是合理的选择,因为我只对连接到 MSN 感兴趣。如果需要使用其他服务,那么 Kopete 似乎是最好的选择。不过要注意,如果使用不同的 IM 协议,应用程序使用的内存可能会增加;另外,Kmess 是集成的 KDE 应用程序,如果没有使用 KDE,Gaim 可能更适合您。 分析、选择并不断重复 现在您已经了解如何分析应用程序的内存使用情况;可以对自己感兴趣的所有应用程序类型简单地重复这个过程,体验各种可用选择,直到找到内存需求最低又能满足功能需求的选择为止。 在上面的 Web 浏览器一节中,您可能会注意到:在使用应用程序时,最节省内存的通常是与桌面环境紧密集成的应用程序。这是因为这些应用程序通常大量使用嵌入到 DE 中的共享库,并且这些共享库可能早已加载到系统中。举例来说,Konqueror 是 KDE 的文件管理器和 Web 浏览器;因此,它在 KDE 系统上运行时使用的内存明显少于 Firefox,这是因为它的大部分功能已经通过其他应用程序加载到该系统。类似地,如果希望使用 RSS 聚合器,Akregator 可能是很好的选择,因为它同样非常可能使用相同的库。 因此,如果您注重内存使用情况,则在自己的 系统上执行这些测试非常重要,这是因为很难通过查看他人的基准测试结果来了解哪个应用程序在您的系统上使用的内存较少。 这个事实对于选择 DE 也有影响。举例来说,如果真正希望使用 Konqueror,则使用 KDE 作为 DE 可能最为有效。类似地,如果您是 GNOME 用户,在使用您感兴趣的简短 KDE 应用程序之前需要三思,因为它可能会使用整个主机来加载库,但只有自己会使用这些库。 步骤3:删除不希望使用的服务和设置 选定发行版、桌面环境和应用程序组合之后,哪些工作还可以降低使用的内存呢?要回答这个问题,需要对系统进行深入挖掘和配置。借助 exmap,可以分析出系统上正在运行的内容,然后尝试删除不需要的内容,并按照自己的需要对系统进行配置。 较好的着手点是系统引导时自动启动的服务,但这样做需要非常小心,才不至于删除系统运行时需要的任何内容。需要研究具体的发布版需要哪些内容,以及服务的配置方式,因为各个发行版的这些内容可能有所不同。有些发行版比其他发行版差,因为它默认启动很多不需要的服务,例如 Web 服务器等,这会占用大量内存。 除了系统服务之外,您可能还希望了解 DE 的配置情况,因为它也可能启动不需要的服务。 我的Kubuntu 系统看起来并没有启动太多不必要的服务,但是快速查看一下进程列表,就会发现一些明显能够删除的内容: HPLIP(4.4MB):HP 打印机和扫描器所使用的服务。由于这台机器上并没有连接此类设备,所以并不需要该服务。 cupsd(1.1MB):打印机后台处理进程。由于这台机器并没有连接打印机,所以并不需要该服务。 kbluetoothd(3.2MB):KDE Bluetooth 后台处理进程。由于这台机器上并没有 Bluetooth 连接,所以并不需要该服务。 klipper(1.7MB):KDE 剪切板工具。我没有考虑使用这个工具,因此将其禁用。 KMix(4.1MB):KDE 音频合成器。并不是所有时间都需要运行它,因为我通过外部喇叭来调节音量。 只需花 5 分钟进行配置,就能节省 14MB 左右的内存,与最初大约节省 77MB 相比,这是不错的着手点。 深入了解您的 DE 和其他大型应用程序的设置非常值得,因为有些设置可能会影响所使用的内存量。举例来说,通过减少虚拟桌面的个数,也许可以节省一些内存,使用较大的位图作为背景时尤其如此。关闭一些奇异的显示特效也可能有所帮助。 步骤4:期望要适当 在使用旧硬件时,应该考虑到该机器的局限,并正确地进行操作。举例来说,如果希望编辑一组照片,请不要同时打开所有照片。这样只会不必要地消耗内存。如果依次打开,并且编辑之后立即将其关闭,就会简单很多。类似地,如果您正在尝试捕获并编辑一些视频,请考虑单独捕获每一个屏幕,而不要一次捕获所有屏幕;如果正在创建包含图形展示的大型文档,则在编辑完文本之前不要添加图片。 步骤5:优化系统 最后一个步骤是查看系统中的内存大户,并找出是否可以从某处节省一些内存。有很多节省内存的机会,但性能就会有所下降,对于大多数人来说,对性能产生的负面影响和所需的工作量,使得这样做非常不值得。不过,可以考虑下面一些操作: 只使用硬件特有的驱动程序重新编译内核。大部分主流发行版都适合于大量硬件,因此它们通常支持您没有使用的很多硬件。这可以产生一定的优势,尽管以模块形式存在的硬件支持在不需要时不会加载到系统中。 重新编译特定的应用程序或库,这样就可以对大小进行优化,使其专门用于正在使用的特定 CPU,从而也可以节省一些内存。Gentoo 发行版在这个方面做得非常好,您可以使用自己选择的确切编译标记轻松地重新编译某些或所有系统组件。遗憾的是,这个过程在老机器上执行时可能非常漫长。 删除应用程序或库的某些特性,然后对其重新编译也可以降低一些内存需求。借助 Gentoo 又是很好的主意,因为它包含 USE 标记的概念,允许在禁用应用程序的特性之后,轻松构建系统。这样可以极大地减少应用程序的大小,应用程序发布时通常都支持大量的文件格式、编码等,这通常需要加载一些库来提供实际支持。如果您知道自己永远都不会阅读(比如说)JPEG 文件,就可以在 Gentoo 中说明这一点(通过 USE="-jpeg"),这样任何处理图形的应用程序编译后都不支持 JPEG,从而可以降低内存负载。 最近推出的 2.6 内核有一个 swappiness 参数,它可以在运行时进行调优。这个参数决定了,将应用程序移动到交换空间而不是移动到正在减少的高速缓存和缓冲区中的可能性,在前面的测试中可以看到,将应用程序交换出去,而保留大块物理内存以进行缓存的情况很常见。通过降低交换出去的可能性,缓存可能减少,这样就可以在内存中保留更多应用程序。但是,这种移动是否真正会使机器运行得更快,取决于正在运行的应用程序。如果在应用程序之间频繁地换入换出,那么机器的响应能力可能会提高,因为它们位于内存中的概率增加了;然而,如果有一个任务会执行大量磁盘读写操作,这样做可能速度很慢。通常,降低 swappiness 可以提高交互式应用程序的响应能力,但是会降低系统的总体吞吐量。 结束语本文的思想可以使您的老机器重新焕发青春(以及其他一些安全性),并在老式硬件上更好地使用 Linux。测量结果显示,一台 800-MHz/256-MB 的机器可以很好地运行一个相当好用的 Linux 桌面,以满足轻量级的日常办公和家用需求,如发送 e-mail、浏览 Web、文字处理等工作。稍作调整并进行实验,即使 128MB 的机器也可以成为令人满意的桌面计算机。 尽管本文重点讲述在相当有限的硬件上实现功能良好的桌面,也可以对其他 Linux 应用采用相同的原理。不管最新的超大机器上有多少内存,很快就会发现新应用程序已占满了这些内存。(T002)


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/787262.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-08-24
下一篇2023-08-24

发表评论

登录后才能评论

评论列表(0条)

    保存