Enviar pesquisa
Carregar
构建高性能MySQL系统
•
11 gostaram
•
993 visualizações
jackbillow
Seguir
构建高性能MySQL系统
Leia menos
Leia mais
Tecnologia
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 50
Baixar agora
Baixar para ler offline
Recomendados
MySQL 網路參考架構
MySQL 網路參考架構
郁萍 王
3.架构设计篇2
3.架构设计篇2
gavin shaw
MySQL 高可用方案及成功案例
MySQL 高可用方案及成功案例
郁萍 王
阿里集团MySQL并行复制特性
阿里集团MySQL并行复制特性
Hui Liu
1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注
gavin shaw
Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践
Zhaoyang Wang
Sina my sq概述及优化
Sina my sq概述及优化
pigso
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍
Zhaoyang Wang
Recomendados
MySQL 網路參考架構
MySQL 網路參考架構
郁萍 王
3.架构设计篇2
3.架构设计篇2
gavin shaw
MySQL 高可用方案及成功案例
MySQL 高可用方案及成功案例
郁萍 王
阿里集团MySQL并行复制特性
阿里集团MySQL并行复制特性
Hui Liu
1.基础篇 修改by徐定翔2 去掉批注
1.基础篇 修改by徐定翔2 去掉批注
gavin shaw
Oracle Compute Cloud Service快速实践
Oracle Compute Cloud Service快速实践
Zhaoyang Wang
Sina my sq概述及优化
Sina my sq概述及优化
pigso
Oracle Compute Cloud Service介绍
Oracle Compute Cloud Service介绍
Zhaoyang Wang
MySQL5.6&5.7 Cluster 7.3 Review
MySQL5.6&5.7 Cluster 7.3 Review
郁萍 王
12, OCP - performance tuning
12, OCP - performance tuning
ted-xu
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
hdhappy001
香港六合彩
香港六合彩
香港六合彩 香港六合彩
MySQL5.6新功能
MySQL5.6新功能
郁萍 王
Mes 實作 第三週
Mes 實作 第三週
信宏 陳
SQL Server效能調校
SQL Server效能調校
國昭 張
Mes 實作 第二週
Mes 實作 第二週
信宏 陳
hicloud PaaS 雲創平台 for java developer
hicloud PaaS 雲創平台 for java developer
hicloud-paas
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQLPASSTW
敦群學院-SharePoint精英計畫-系統管理-Day 3
敦群學院-SharePoint精英計畫-系統管理-Day 3
群智信息有限公司 CAREY Software Service
了解真实的Oracle unbreakable database appliance
了解真实的Oracle unbreakable database appliance
maclean liu
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践
drewz lin
敦群學院-SharePoint精英計畫-系統管理-Day 2
敦群學院-SharePoint精英計畫-系統管理-Day 2
群智信息有限公司 CAREY Software Service
Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
Junchi Zhang
ASUSTOR NAS AS5 AS7 Rack mount business SMB
ASUSTOR NAS AS5 AS7 Rack mount business SMB
Freddie Huang
JRuby
JRuby
Avarteq
Enterprise rails hosting 3 ways to scale - 2011-10
Enterprise rails hosting 3 ways to scale - 2011-10
Avarteq
Kanban - Extreme improvements in five quarters
Kanban - Extreme improvements in five quarters
Avarteq
BBVH Woonwijzer
BBVH Woonwijzer
BBVH
Kanban: The Dilemma of an Agile Manager
Kanban: The Dilemma of an Agile Manager
Avarteq
Kanban - A recipe for success
Kanban - A recipe for success
Avarteq
Mais conteúdo relacionado
Mais procurados
MySQL5.6&5.7 Cluster 7.3 Review
MySQL5.6&5.7 Cluster 7.3 Review
郁萍 王
12, OCP - performance tuning
12, OCP - performance tuning
ted-xu
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
hdhappy001
香港六合彩
香港六合彩
香港六合彩 香港六合彩
MySQL5.6新功能
MySQL5.6新功能
郁萍 王
Mes 實作 第三週
Mes 實作 第三週
信宏 陳
SQL Server效能調校
SQL Server效能調校
國昭 張
Mes 實作 第二週
Mes 實作 第二週
信宏 陳
hicloud PaaS 雲創平台 for java developer
hicloud PaaS 雲創平台 for java developer
hicloud-paas
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQLPASSTW
敦群學院-SharePoint精英計畫-系統管理-Day 3
敦群學院-SharePoint精英計畫-系統管理-Day 3
群智信息有限公司 CAREY Software Service
了解真实的Oracle unbreakable database appliance
了解真实的Oracle unbreakable database appliance
maclean liu
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践
drewz lin
敦群學院-SharePoint精英計畫-系統管理-Day 2
敦群學院-SharePoint精英計畫-系統管理-Day 2
群智信息有限公司 CAREY Software Service
Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
Junchi Zhang
ASUSTOR NAS AS5 AS7 Rack mount business SMB
ASUSTOR NAS AS5 AS7 Rack mount business SMB
Freddie Huang
Mais procurados
(16)
MySQL5.6&5.7 Cluster 7.3 Review
MySQL5.6&5.7 Cluster 7.3 Review
12, OCP - performance tuning
12, OCP - performance tuning
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
王涛:基于Cloudera impala的非关系型数据库sql执行引擎
香港六合彩
香港六合彩
MySQL5.6新功能
MySQL5.6新功能
Mes 實作 第三週
Mes 實作 第三週
SQL Server效能調校
SQL Server效能調校
Mes 實作 第二週
Mes 實作 第二週
hicloud PaaS 雲創平台 for java developer
hicloud PaaS 雲創平台 for java developer
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
SQL PASS 臺灣分部八月份聚會 - Windows Azure 和 SQL Server 的Hybrid運用-備援以及高可用性
敦群學院-SharePoint精英計畫-系統管理-Day 3
敦群學院-SharePoint精英計畫-系統管理-Day 3
了解真实的Oracle unbreakable database appliance
了解真实的Oracle unbreakable database appliance
阿里自研数据库 Ocean base实践
阿里自研数据库 Ocean base实践
敦群學院-SharePoint精英計畫-系統管理-Day 2
敦群學院-SharePoint精英計畫-系統管理-Day 2
Accelerate Database as a Service(DBaaS) in Cloud era
Accelerate Database as a Service(DBaaS) in Cloud era
ASUSTOR NAS AS5 AS7 Rack mount business SMB
ASUSTOR NAS AS5 AS7 Rack mount business SMB
Destaque
JRuby
JRuby
Avarteq
Enterprise rails hosting 3 ways to scale - 2011-10
Enterprise rails hosting 3 ways to scale - 2011-10
Avarteq
Kanban - Extreme improvements in five quarters
Kanban - Extreme improvements in five quarters
Avarteq
BBVH Woonwijzer
BBVH Woonwijzer
BBVH
Kanban: The Dilemma of an Agile Manager
Kanban: The Dilemma of an Agile Manager
Avarteq
Kanban - A recipe for success
Kanban - A recipe for success
Avarteq
基于MySQL可扩展架构设计
基于MySQL可扩展架构设计
jackbillow
Fuerza Bruta
Fuerza Bruta
Damy Koelewijn
The Kanban method
The Kanban method
Avarteq
Destaque
(9)
JRuby
JRuby
Enterprise rails hosting 3 ways to scale - 2011-10
Enterprise rails hosting 3 ways to scale - 2011-10
Kanban - Extreme improvements in five quarters
Kanban - Extreme improvements in five quarters
BBVH Woonwijzer
BBVH Woonwijzer
Kanban: The Dilemma of an Agile Manager
Kanban: The Dilemma of an Agile Manager
Kanban - A recipe for success
Kanban - A recipe for success
基于MySQL可扩展架构设计
基于MySQL可扩展架构设计
Fuerza Bruta
Fuerza Bruta
The Kanban method
The Kanban method
Semelhante a 构建高性能MySQL系统
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
vanadies10
六合彩
六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
如何架构和开发高性能,高伸缩性Web 应用系统
如何架构和开发高性能,高伸缩性Web 应用系统
melity78
敦群學院-SharePoint精英計畫-系統管理-Day 1
敦群學院-SharePoint精英計畫-系統管理-Day 1
群智信息有限公司 CAREY Software Service
百度数据库中间层
百度数据库中间层
yp_fangdong
六合彩
六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
香港六合彩
香港六合彩
香港六合彩 香港六合彩
imobile-beta技术沙龙
imobile-beta技术沙龙
posestudio
数据库性能诊断的七种武器
数据库性能诊断的七种武器
Leyi (Kamus) Zhang
P6 数据库安装和配置
P6 数据库安装和配置
epst
开源应用日志收集系统
开源应用日志收集系统
klandor
ASP.Net MVC2 简介
ASP.Net MVC2 简介
Allen Lsy
手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享
Dahui Feng
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC
Semelhante a 构建高性能MySQL系统
(20)
淘宝网架构变迁和挑战(Oracle架构师日)
淘宝网架构变迁和挑战(Oracle架构师日)
六合彩
六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
如何架构和开发高性能,高伸缩性Web 应用系统
如何架构和开发高性能,高伸缩性Web 应用系统
敦群學院-SharePoint精英計畫-系統管理-Day 1
敦群學院-SharePoint精英計畫-系統管理-Day 1
百度数据库中间层
百度数据库中间层
六合彩
六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
香港六合彩
imobile-beta技术沙龙
imobile-beta技术沙龙
数据库性能诊断的七种武器
数据库性能诊断的七种武器
P6 数据库安装和配置
P6 数据库安装和配置
开源应用日志收集系统
开源应用日志收集系统
ASP.Net MVC2 简介
ASP.Net MVC2 简介
手机之家新系统介绍及架构分享
手机之家新系统介绍及架构分享
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
twMVC#04 | ASP.NET MVC 4 新功能介紹(快速上手)
构建高性能MySQL系统
1.
构建高性能MySQL系统 杨海朝 Senior MySQL DBA@SINA jackbillow@gmail.com
2.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
3.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
4.
什么构建? 优秀的架构设计 最佳的数据模型 高效的程序代码 合适的部署结构 适当的资源投入
5.
为什么构建? 高性能 缩减成本 行业竞争优势
6.
谁来构建? SDLC的每个阶段所有的人都来关注性能 应用设计者 应用开发者 数据库管理员 系统工程师
7.
构建目标? 可扩展 高可用 易管理 低成本
8.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
9.
表设计思想 对于提升整个系统的性能 最佳时期 最容易 最大
10.
Scale-out 优先级最高 避免XA 减少对DB的依赖 异步数据流 恰当使用Cache & Search
11.
范式与反范式 与交易有关的使用范式 弱一致性需求-反ACID 空间换时间—BASE & CAP
12.
表的设计 限制列的数量 分离到不同的表 频繁更新列 text & blob列
13.
数据类型(1) 最小 最简单 避免使用NULL
14.
数据类型(2) 字符类型选择 MyISAM多使用char InnoDB多使用varchar 使用decimal而不是float
& double 使用timestamp而不是datetime 部分日期用int存 from_unixtime() unix_timestamp()
15.
数据类型(3) IP用int存 inet_aton() inet_ntoa() 多使用enum,
set 使用procedure analyse()
16.
表存储引擎-MyISAM 采用MyISAM R/W > 100:1
& update相对较少 并发不高,不需要事务 表数据量小 硬件资源有限
17.
表存储引擎-InnoDB 采用InnoDB的表 OLTP,R/W相当,频繁更新大字段 表数据量超过1000万 安全性和可用性要求高 并发高
18.
Sharding 垂直拆分 字段类型 业务功能 访问频率 MPSS -> MPMS 水平拆分 HASH RANGE INDEX
MAP
19.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
20.
索引设计思想 差的索引和没有索引效果一样 索引并非越多越好 优化该优化的语句 索引次序和索引中列的次序一样重要 频繁更新列不适合建立索引 索引设计一个是不断尝试和权衡的过程
21.
信息收集 核心业务功能SQL是什么? 所有的SQL类型以及查询比例是什么? 是否分析过slow log?
22.
索引创建原则 数量在5个以内 大字段建立部分索引 Selectivity性好的列优先考虑 建立联合索引多考虑列的次序 条件中尽量使用唯一key
23.
聚集索引 熟悉clustered index和非聚集索引区别 多使用primary key查询 考虑primary
key的列的数据类型 使用auto_increment时要小心
24.
覆盖索引 数据直接从索引获得 加速sort和count(*)
25.
索引设计工具 explain show profiling slow log SQL
hints
26.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
27.
SQL设计思想 语句越简单越好 运算移到CPU端 尽可能避免使用sp,triggers, join, sort 一个SQL有多种写法,效率差别很大 评估效率差的SQL实时性要求 减少查询的次数 只取需要数据
28.
SQL设计(1) 制定书写SQL的标准 避免select * 尽可能不在列运算
29.
SQL设计(2) 多使用limit N 分页使用偏移量 不使用order by
random()
30.
SQL设计(3) insert时一个语句多个value replace & insert
on duplicate key update insert ignore, low priority或 delayed
31.
SQL设计(4) 使用高版本connection driver prepared statements和参数绑定
32.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
33.
硬件和系统 更大的内存,更多的CPU SSD: SBP, Flashcache
& FushionIO Linux kernel 2.6.x IO调度使用deadline MySQL5.1 + InnoDB Plugin
34.
参数设置(1) query_cache_size table_cache thread_cache_size
35.
参数设置(2) read_buffer_size sort_buffer_size join_buffer_size read_rnd_buffer_size bulk_insert_buffer_size
36.
参数设置(3) max_connections max_user_connections
37.
MyISAM参数设置 key_buffer_size (key_reads/key_read_requests) <
0.03 (often < 0.01 is desirable) myisam_sort_buffer_size myisam_recover_options myisam_repair_threads
38.
InnoDB参数设置 innodb_buffer_pool_size innodb_flush_log_at_trx_commit innodb_log_buffer_size innodb_log_file_size innodb_flush_method
39.
状态分析 show global status show
innodb status mpstat, iostat, vmstat, top, innotop等 性能监控系统做性能分析和容量规划
40.
议题 1. 构建综述 2. 表设计 3.
索引设计 4. SQL语句设计 5. 服务优化 6. 部署优化
41.
读写分离 读写分离 M/S不同的引擎类型 功能不同的Slave组
42.
高可用性部署 Master的HA Heartbeat+DRBD M(active)/M(passive) Slave的HA
负载均衡DNS, LVS
43.
高可用性部署
44.
结合cache部署 MySQL & Memecached 传统方式 UDF方式
45.
跨机房部署(1) 采用Blackhole做中继 减轻Master复制压力 节省机房之间的网络带宽 分布式监控系统
本地监控本地 性能分析和容量规划
46.
跨机房部署(2) 配合应用处理延时问题 等待跳转 即写既读Master
写Master同时写本地cache Slave重建问题 每个区都有备份 加快恢复速度 减少网络带宽
47.
跨机房部署(3) 多IDC部署时多点写入问题 不是所有的业务都部署多点写入 业务逻辑避开更新丢失 使用消息队列异步更新 开发基于binlog多点更新服务
48.
跨机房部署(3)
49.
and one for
the road... Last, but not least… 性能最大的提升来源于应用的设计和优化 优化过程是一个不断的迭代和权衡的过程
50.
Thank you for
coming! 谢 谢! Q&A
Baixar agora