Post on 28-Jan-2015
description
浅谈可扩展的M SQL数据库设计浅谈可扩展的MySQL数据库设计
冯大辉(Fenng)
egosurfg
冯大辉 (西毒)冯大辉 (西毒)david.fengdh@alipay.com
ADBABloggerhttp://www.dbanotes.net
议程议程
可扩展性可扩展性实践经验其他
扩展性扩展性
Scale vs Scalable vs ScalabilityScale vs. Scalable vs. Scalability
Scale Up vs. Scale Out
数据库的高性能与扩展性来自管理和设计
建立基准测试建 准测试
IO 文件系统基准测试IO 、文件系统基准测试结合应用特点网络基准测试网络基准测试PV指标/带宽能力C h 基准测试Cache 基准测试命中率/数据一致性A 基准测试App 基准测试模拟用户登录?
持久性 Connection持久性
mysql pconnectmysql_pconnect 连接风暴问题
选取合适的数据类型选取合适的数据类型
Number / Varchar2Number / Varchar2
联机DDL 问题
Tipeg: ip2long() / long2ip() 存储整数而非字符串eg: ip2long() / long2ip() 存储整数而非字符串
非关系型数据的存储选择非关系型数据的存储选择
图片视频存储处理图片视频存储处理
内容处HTML 内容处理
行存储 vs. 列存储
分区与 Sharding分 与 g
分区能解决的问题分区能解决的问题
的分 能力MySQL 的分区能力
Sharding 策略
反范式反范式
遵守三范式遵守三范式
打破三范式
二者结合
抛弃存储过程封装业务逻辑的思路抛弃存储过程封装 务逻辑的思路
Oracle DB 下习惯用的方式Oracle DB 下习惯用的方式
MYSQL 存储过程
业务逻辑 vs. 扩展性
合理使用Cache合理使用
Cache 能解决大部分 IO 问题Cache 能解决大部分 IO 问题
13 R/S vs 300 R/s vs 1300R/s13 R/S vs. 300 R/s vs. 1300R/s
Cache 不是万能的Cache 不是万能的
选取合适的架构点引入 C h选取合适的架构点引入 Cache
Questions ?
Thank You!Thank You!
http://www dbanotes nethttp://www.dbanotes.net