mysql数据库,根据数据量,响应时间,读写比,重要程度进行业务评估

回复 收藏
  这两天接触到了根据业务需求进行业务评估,具体的就是根据响应时间、数据总量、每秒请求量、读写比、重要程度等需求,将对应的需求转化为具体的内存、带宽等的指标。下面是一则示例,供大家参考
需求:


响应时间:查询和操作请求在ms级别返回
数据总量:1年内数据量大约1TB
每秒请求量:1W次请求
读写比:读写比为4:1
重要程度:核心系统,P1级故障
其他说明:数据具有有效性,历史数据访问较少,一般会处理最近15天内的数据。数据记录总体长度大约为1KB

分解转换思路和步骤
Step1:1年内数据量大约1T
结果:每秒产生的数据量为1*1024*1024*1024/(365*24*60*60) = 34KB/s

Step2:每秒1w次请求;读写比是4:1
结果:每秒读请求10000/5*4 = 8000/s;每秒写请求数10000/5*1 = 2000/s

Step3:记录长度大约为1KB
结果:根据Step1得出的结果,每秒insert的数据写入大约为34/s;根据Step2得到的每秒写2000/s,可知1966/s为update和delete操作。
        由于MySQL数据读写操作按照页来处理,页大小为16KB,假设每次操作的页都不相同。那么每秒写操作数据量为:16KB*2000/s = 32M/s,每秒读操作数据量为:16KB*8000/s = 128M/s。

Step4:处理最近15天内的数据
结果:热数据量为:(1*1024/365)*15 = 42GB。

Step5:操作ms级返回
结果:操作ms级别返回,并且读压力更大,那么需要尽可能的将热数据加载到内存。按照内存命中率接近100%计算的话,那么Innodb buffer大约为42GB,而其他内存需求大概为1~2GB,因此内存超配大约为45GB。按照超配原则,写带宽(wBPS)限制为50MB/s;读带宽(rBPS)限制为150MB/s。





2016-04-08 09:36 举报
已邀请:

回复帖子,请先登录注册

退出全屏模式 全屏模式 回复
评分
可选评分理由: