数据库热点问题的产生和避免.docx
《数据库热点问题的产生和避免.docx》由会员分享,可在线阅读,更多相关《数据库热点问题的产生和避免.docx(4页珍藏版)》请在优知文库上搜索。
1、前言传统关系型数据库的性能问题,主要出现在CPU、磁盘、数据库本身(锁1.atch)这几个方面,而这些向S的产生很多时候都是因为存在热点,比如大同的全表扫描,会产生10热点;对一张衣的频繁修改,会产生镇冲突的热点;对一个数据库页的频繁访问会造成数据库内部(比如1.iIlCh)的热点。本文珞从服务叁资海,数据库配J1.应用设计等几个方面来讨论箫点的产生及如何避免.补充说明,因为本文作者具有DB2技术背景,所以有些术语主要参照DB2,对于其他数据底产马可能名称不一样,但基本原理相似,希望为同行带来参考。一、概述作为DBA,最关心和平时做的最多的就是数据库的性能。定位性能问题首先要根据系统资源使用率
2、来分析.如果出现CPU、IO等出现100%繁忙现象,可以定义为热点问题“数掂豚的性能问即主要发生在几个层面,首先是硬件,RPCPlI,内存、联世这些因素,其次是数据库的参数配置,之后是数据库设计,包括表结构,索引等,地后是应用设计,包括程序接口、编程方式、程序设计等.卜面将分别从这几个方面进行探讨二、硬件对数据库性能的影响数据库的热点,最终都会在操作系统层面反映出来,表现为CPU高或者IO高.所以这里先讨论一下硬件对数据库性能的影响.数据库服务器的硬件配营决定了单台服务器的服务能力.硬件的性能越好,出问题的频率越低,问题持续时间越短,高性能的硬件也可以掩盖一些数据库配置和应用设计上的问题.硬件
3、的基本配置要满足应用正常的需求,在系统上线前一定要进行压力测试,来找到应用系统对硬件的最低要求.下面从存储、CPU、内存几个方面进行讨论.一般而言,最容易出现瓶颈的是磁盘.磁盘的IO速度相对是最慢的,所以也最容易出问题.在几年前,大多通过使用高性能存储来提高IO吞吐能力,隐着固态硬盘的出现,对一些小型应用,使用固态盘也能满足部分场景的需求.现在使用固态盘代替机械盘的存储也已经非常的成熟了,在存储小型化,高性能方面出现了质的飞跃,超过百万IOPS的产品越来越多,性价比也非常好,极大减少了IO瓶颈的问题.在实际生产环境中,也有直接使用固态硬盘而不使用存储的,这种情况建议使用多块磁盘来提高性能和可旅
4、性.CPU一股不会成为瓶颈,在服务器选型的时候,CPU一股来说都是高配的,O1.TP类的应用平时的CPU使用率一般在20%以下,峰值50-70%,在CPU这块会留很大的余量.但是CPU满的问题,还是非常常见的,这主要是因为CPU被滥用导致的,比如一个SQ1.语句占满一颗CPU,那么并发高的时候,就会把所有CPU资源用尽.即使有再多的CPU,也只是延迟问题发生而已.所以在CPU这块根据业务规模和压力测试结果选择即可.内存这块变化很大,以前内存还是稀缺资源,采用32G,64G内存的服务器比较常见,现在的服务器在内存一般都很大,256G、512G的配置很常见了.所以对于大内存的服务器,充分利用服务器
5、的内存资源,不要拿以前的32G服务器上数据库参数照搬,要按照新服务器内存大小对参数迸行相应的调整.对于数据库独用服务器,内存可以使用到总内存的70%.网络一般不会成为瓶颈,服务器一般都配置多块网卡,注意和应用服务器一定要使用万兆网卡相连。另外需要注息:,应用服务器和数据库服务器需要在同一个机用,不能踏城中访问.三、数据库参数配置对性能的影响数据席的参数分为几类:与共享内存相关、与私有内存相关、与进程(线程)数相关,这些参数都要根据应用特点,数据库压力情况进行适当的调整。目前传统的数据麻都能做到参数的自动调整,大大减少问题发生的概率.但是一些新兴的数据库,在这块做的还不好,需要DBA继续关注.数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 热点问题 产生 避免