zoukankan      html  css  js  c++  java
  • mysql 性能容量评估

    性能容量评估

     
    • 分析上线业务场景
    • 评估数据库服务器所需性能指标
    • 预估可能成为瓶颈的服务器资源
    • 帮助数据库性能调优
     
    数据库服务器硬件性能指标项:
    • 磁盘IO性能
    • 内存容量
    • CPU
    • 网络吞吐量
    • 磁盘容量
     
    数据库业务特点关键词

     
    • OLTP/OLAP
    • 并发请求
    • 读写比例
    • 数据量
    • 冷热数据比
    • 数据分级存储
     
    OLTP与OLAP 
    T=Transaction
    面向广大用户,高并发,较短事务操作
    互联网应用绝大部分属于OLTP
    OLTP看中服务器CPU,内存,写事务较多或内存不够则依赖磁盘IO
    A=Analytical
    通常面向内部人员,大规模复杂查询
    OLAP看中磁盘扫描的IO能力,部分依赖内存排序
     
    并发请求数--衡量线上业务繁忙程度
    • 业务高峰时数据库的每秒并发访问量是多少
    • 通过应用服务器数量,连接池配置判断
    • 通过产品估算初上线用户规模和用户增长速度判断
    • 通过实际业务业务类型判断
    •  
    • 并发量相关资源:cpu
     
    读写比例--描述应用程度如何使用数据库
    • 线上业务select只读与update/delete/insert写操作比例
    • delete/update通常都是先读再写
    • insert需要区分数据写入还是持续insert还是大量导入数据
    • 根据业务实际场景分析
    多读场景相关资源:内存
    多写场景相关资源:磁盘IO
     
    数据量-总量
    • 数据库服务器存储设备可扩容能力的上限
    • 根据估算的业务量,写入模式,分析数据增长量
    • 预计一个硬件升级周期内数据库可存放数据的总量,上线时要留好余量
    • 数据总量相关资源:磁盘容量
     
    冷热数据比-有用数据的实时集合
    • 热数据,线上最新一定周期内将被反复访问的数据
    • 冷数据,线上保存着的,最近不会被在线用户用到的数据
    • 估算活跃用户量,数据增长量等预估热数据量
    • 内存大小尽可足够存放线上实时热数据
    • 热数据相关资源:内存
     
    线上数据分层存储--缓解线上磁盘空间压力
     
    服务器资源选型--将可选方案列出来
     
    性能--成本的平衡;
     
    数据库业务特点关键词
    • OLTP/OLAP
    • 并发请求
    • 读写比例
    • 数据量
    • 冷热数据比
    • 数据分级存储
     
    案例

     
    案例一,网易云音乐曲库数据库服务器评估
    • 用于存放线上数千万歌曲信息
    • 确定属于OLTP线上类型数据库
    • 并发请求
      • 50台应用服务器,每台最大连接数100
      • 可能峰值5000qps,并发请求量较大
      • 所以:CPU需求高
    • 读写比例
      • 访问模式以用户列出歌单和播放歌曲时查询歌曲信息为主,用户只有只读查询
      • 写数据发生在录入新歌或修改歌曲信息时后台操作,写比例小,且为批量导入
      • 读写比例:100:1
    • 数据总量
      • 估算每首歌信息8K,总计5000万,总量400G
      • 数据总量增长相对较慢
    • 冷热数据比
      • 5000万歌曲中大约40%可能被访问,10%属于热点歌曲
      • 热数据大约<40G
    • 数据分级存储需求
      • 由于没有用户产生的数据,歌曲信息无法分级存储
     
    分析完得出以下结论:
    • 并发请求高-----------------------CPU性能要求高
    • 读占大部分,且热数据大约40G---内存需求一般>40G
    • 数据总量400G--------------------磁盘空间需求一般>400G
    • 写比例较少,且是后台批量--------磁盘IO能力需求一般
    • 网络流量要求:8K*2500(每秒2500首放回给用户)/1024≈20MB/S,一般
     
    一般使用估算容量*2;
     
         
     
    分析上线业务场景
     
    数据库业务特点关键词
    • OLTP/OLAP
    • 并发请求
    • 读写比例
    • 数据量
    • 冷热数据比
    • 数据分级存储
     
    案例二,网易理财销售数据库服务器评估
    分析上线业务场景:
    • 用于存放理财用户线上订单
    • 确定属于OLTP线上类型数据库
    • 业务场景有明显特征
      • 特定高息产品秒杀销售时间窗有大量并发订单写入
      • 平时只有少量订单查询请求,和较低的常规产品购买请求
    • 评估应以满足最关键的业务高峰为基准
     
    数据库业务特点:
    • 确定属于OLTP线上类型数据库
    • 并发请求量
      • 秒杀期间持续时间短,但是并发量预估30台应用服务器约2000tps(实际估算,比如限售3亿,平均每笔订单1万,则会有3万笔订单,根据实际情况,3万笔订单将在十几秒卖光,所以,每秒应该有2000笔订单完成)
      • 所以CPU要求较高
      • 所以网络要求较高
    • 读写比例
      • 高峰时写订单是主要开销操作
      • 所以磁盘IO要求很高
    • 数据总量
      • 根据业务分析,订单属于写入瞬时量大,总量较小,单笔金额较高
      • 总量预估一年成交百万单位级别,增长量较稳定
      • 判断数据存储需求小于200G
      • 所以磁盘空间需求一般,>200G
    • 冷热数据
      • 峰值写入为主,内存要求存放热点期间产生的脏数据即可
      • 总共有3万笔订单数据产生,算一算脏数据<10G
    • 数据分级存储需求
      • 用户订单业务约定页面展示最近半年订单,半年前的需要到历史查询页面专门查询
      • 因此可以做分级存储,迁移所有半年前订单至历史库
     
     总结

     
    •  硬件性能指标:
      • 磁盘IO性能
        • 单盘->盘阵
        • SAS-SATA,
        • 机械盘->ssd
      • 内存 较小->较大,
      • cup
        • 普通->多核,
        • 超线程,
      • 磁盘容量
        • 单盘->盘阵,
        • 单盘->LVM,
      • 网络吞吐量
        • 千兆->万兆,
        • 单网卡->多路;
    •  数据库业务特点:
      • OLTP/OLAPM,
      • 并发请求------cpu,
      • 读写比例
        • 读---内存
        • 写磁盘IO,
      • 数据量--磁盘容量,
      • 冷热数据比 
        • 热数据多--内存,
      • 数据分级存储--缓解线上磁盘空间压力
    • 性能与成本的平衡
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
     
  • 相关阅读:
    Linux查看程序端口占用情况
    jQuery冒泡事件阻止
    jQuery中.bind() .live() .delegate() .on()的区别
    Java四种线程池的使用
    JSON数据解析
    判断访问浏览器客户端类型(pc,mac,ipad,iphone,android)
    JAVA单线程和多线程的实现方式
    mysql利用st_distance函数查询附近的点的功能
    Redis缓存数据库常见操作
    JAVA获取CLASSPATH路径
  • 原文地址:https://www.cnblogs.com/Aiapple/p/5697912.html
Copyright © 2011-2022 走看看