1.机器选型&系统规划

1.机器选型&系统规划


业务评估

业务需求

  • 响应时间
  • 数据总量
  • 每秒请求量
  • 读写比
  • 重要程度

需求转化

  • TPS
  • IOPS
  • CPU
  • Memory
  • IO

机型测试

  • 性能对比测试
  • 稳定性测试
  • 掉电保护测试
  • 内存异常测试
  • IO设备坏盘和rebuild测试

成本评估

  • 设备成本
  • 运维成本
  • 功耗成本

参考资料

1、《Why VividCortex Uses MySQL》
http://planet.mysql.com/entry/?id=684366
2、《SSD vs HDD: which is best?》
http://www.techradar.com/news/storage/computing-components/ssd-vs-hdd-which-is-best-936111
3、《SSD vs HDD》
http://www.storagereview.com/ssd_vs_hdd
4、《SSD vs HDD price and performance study》
http://www.dell.com/downloads/global/products/pvaul/en/ssd_vs_hdd_price_and_performance_study.pdf
5、《Fusion-io Introduction》
https://mariadb.com/kb/en/fusion-io-introduction/


文件系统规划

MySQL数据库特点

  • 单数据目录
  • 混合读写
  • 请求随机
    文件系统划分
  • 系统分区
  • 数据分区
  • 日志分区
  • IO调度

推荐分区配置

/dev/sda1      /boot
/dev/sda2      /
/dev/sda3      /home
/dev/sda4      /tmp
/dev/sdb1      /data
/dev/sdc1      /log

查看IO调度策略

#cat /sys/block/sdb/queue/scheduler
noop anticipatory deadline [cfq]

修改IO调度策略为deadline

# echo deadline > /sys/block/sdb/queue/scheduler

查看IO调度策略

#cat /sys/block/sdc/queue/scheduler
noop anticipatory deadline [cfq]

修改IO调度策略为deadline

# echo deadline > /sys/block/sdc/queue/scheduler

数据库系统规划

MySQL数据库顺序读写

  • binlog日志
  • error日志
  • slow日志
  • tmp目录
  • 事务日志
  • DoubleWrite数据

案例场景

  • binlog日志文件、error日志文件、slow日志文件存储在/log日志目录中
  • tmp文件指定为系统根目录/tmp
  • 其他所有目录指定为数据目录/data

参考资料

1、《MySQL学习分享--机型选择与配置 》
http://blog.chinaunix.net/uid-26896862-id-3947862.html
2、《Inexpensive SSDs for Database Workloads》
http://www.mysqlperformanceblog.com/2013/10/03/inexpensive-ssds-database-workloads/
3、《Tuning I/O Performance》
http://doc.opensuse.org/products/draft/SLES/SLES-uning_sd_draft/cha.tuning.io.html
4、《Innodb Double Write》
http://www.mysqlperformanceblog.com/2006/08/04/innodb-double-write/
5、《XtraDB / InnoDB internals in drawing》
http://www.mysqlperformanceblog.com/2010/04/26/xtradb-innodb-internals-in-drawing/
6、《Configuration of the Doublewrite Buffer》
http://www.percona.com/doc/percona-server/5.5/performance/innodb_doublewrite_path.html?id=percona-server:features:percona_innodb_doublewrite_path
7、《ext4 vs xfs on SSD》
http://www.mysqlperformanceblog.com/2012/03/15/ext4-vs-xfs-on-ssd/

你可能感兴趣的:(1.机器选型&系统规划)