狠狠撸

狠狠撸Share a Scribd company logo
云时代的mysql
 其实跟云时代没啥   系
本keynote的风格

? 不会有代码
? 不会有大段英文(翻译很烂的术语例外)
? 听完之后就能用
惭驰滨厂础惭只是个浮云
innodb 1.1是你的选择

? 任何有条件且有理智的人都应该选择
 innodb 1.1,MYSQL版本就是 5.5

? 若因为各    人祸,你应该了解MYSQL 5.1
 是 innodb 1.0版(应该选择1.04以上的版
 本,有重要特性更新)
看图说故事
看图说故事
看图说故事
看图说故事小结
? 先写log,然后写table space,这   作法叫做
 WAL,预先写日志

? fuzzy checkpoint延迟写入文件,并且小批
 量的慢慢写入 table space

? 写log之前有log buffer,另外日志做     数
 据的作用,且把随机IO变成了顺序IO
有图有真相(来自高性能惭驰厂蚕尝)
innodb_buffer_pool_size



? buffer_pool的值需要内存的80%
? 神马insert 产耻蹿蹿别谤,索引,数据之类的集中营
innodb_additional_mem_pool_size




? 跟 buffer_pool的比例约是200:1,即
 buffer_pool为200M,这个参数需要设置1M.

? 这个参数用于hash的meta信息和LRU等
innodb_log_?le_size

? 原则上多多益善,但是过大会让   时间
 变得很慢,你就悲剧了

? 所以你懂得,自己测试,给个参考,1G需要
 10分钟来
innodb_log_buffer_size

? 在这里,他只是一个演员,    ,我是想说,log
 buffer是存在的....

? 好吧,说个有用的..这一般不需要设置(
 飞)
innodb_adaptive_?ushing


? 自适应?ush技术,会根据redo log日志的增
 长速度来调整?ush的频率

? percona对此进行了进一步的改进,我告诉
 过你要用分支..要用分支..有木有!
innodb_max_dirty_pages_pct


? google建议设置为80
? 即若超过80%的buffer pool,就需要?ush
  dirty page到table space了

? adaptive ?ush你懂的,fuzzy checkpoint你也
  是懂的
innodb_?ush_method
? default(fsync),O_DIRECT,O_DSYNC
? fsync是linux API,更详细看man
? O_DIRECT和O_DSYNC都是open的参数,
 看man吧

? MYISAM当然没这个问题,交给OS buffer来
 处理,不过作为数据库....INNODB带你上
innodb_?ush_log_at_trx_commit



? 可以选择是0,1,2,具体意思看手册
? 0是无ACID
? 1是默认,完整的ACID
? 2是半ACID(推荐,可以提高写入的性能)
innodb_io_capacity

? 以前默认是刷100脏页,写死的
? 现在可以调整了,推荐设置为500以上,具
 体看自己硬盘多牛X,你懂的,测试不可避
 免
innodb_support_xa
? 在一部分不要求数据安全的slave服务器
    可以   闭之

? 若不想用binlog的单MYSQL服务器可以
    闭之

?    闭能提高N多的性能(但问题你要想到)
adaptive hash索引是神马,能吃吗?



? 是的,能吃的....
? innodb有 索引,一   是B+树索引,另外
 一   是hash索引

? hash索引不能干预,是自动处理的
当然,还有牛X的参数

? 这里只 注了性能
? 还有维护性的参数之类的
? 你懂的,参数才是新技术...
mysql还是yoursql?

? percona server
? mariadb
? drizzle
? 终究还是oracle’s sql(MYSQL 5.5)
percona server


? xtradb
? 虫迟谤补产补肠办耻辫(热备利器)
percona server

? xtradb
? 虫迟谤补产补肠办耻辫(热备利器)
? 安装方便,无缝切换现有的MYSQL
xtradb实现快速启动




? 会自动保存buffer pool的LRU
? 本质上是让 buffer pool时,读取硬盘
 从随机IO改成顺序IO
HandlerSocket



? 比memcached更快的KV cache
? 使用buffer pool
? 跟innodb合用可更有效的利用buffer
 pool,节约更多的机器
MariaDB(等等)


? 对MYSQL有多 改进
? 内置多 引擎
? 包括Handlesocket,XtraDB
? 线程池,20000+连接都没问题
? 优化子查询和join查询
index condition pushdown




? 改进mysql的索引机制
? 根据where条件来判断索引的读取数量
? mysql 5.6收录此功能
实例



? where date = 20111011 and name = ‘kk’
? 用了 index condition pushdown的在判断
  date索引会结合name选择过滤掉没用的
  record
? 注意:只有联合索引才有意义
动态字段



?   create table t (id int auto_increment primary key,

                       test    mediumblob);


?   insert into t (test) values (COLUMN_CREATE(1, "bt", 4, "小bt"))(2,‘小bt’,3,‘大
    BT’)(1,”dd“,4,”pp“)


?   select COLUMN_GET(test, 4 as char(10)), column_list(test) as list
    from t where COLUMN_GET(test, 1 as char(10)) = ‘bt’;

?   结果:      name       list

             小bt       1,4
动态字段


? where date = 20111011 and   name = ‘%kk
  %’
? 用了 index condition pushdown会判断符
  合的%kk%的条件,从而避免了符合date
  的所有的记录的读取,降低了IO

? 注意:只有联合索引才有意义
MariaDB 5.5




? MariaDB 5.5 == MariaDB 5.3 + Mysql 5.5
? MariaDB 5.5是新霸主
Drizzle(不推荐)


? 激进的改进
? 制功能完全重写
? 一切插件化
? 当前特性还不足
? 介于pgsql跟Mysql的之间的新数据库
高可用利器


? DRDB
?   Distributed Replicated Block Device
mysql 5.5

? 改进分区(分区进入实用阶段)
?   改进主从(主从功能不再山寨),主从的数据
    安全大幅提升

?   不基于mysql 5.5的分支都是   流氓
TokuDB引擎

?   数据占用空间非常小

?   插入性能   佳

?   查询速度也还行

?   多核表现不佳(貌似没对多核进行优化)
索引!索引!索引!
?   绝大部分MYSQL性能问题,都是程序员对索引
    不精通

?   网上流传的limit优化实质是用子查询来使用索
    引

?   select * from user where id >=(select id from
    user limit 1000000,1)limit 100
几个问题

? 单机性能还是scale out
?   并行计算还是 k-v二元组范式

?   专用系统vs通用系统

?   数据安全vs性能
看点刚性数据

? 只供参考,具体情景自己测试
?   硬盘随机读写100 iops 顺序读写 50w iops

?   内存 随机访问 25w 顺序访问 500w
我们学派建议神马?
? 索引(学会explain是神的恩典)
? ?ash cache(考虑用混合硬盘)
? 配置调优(这是尖端科技)
? 加CPU和内存(有钱就是力量)
? 重新设计数据库,分离DB(悲催的      始)
有毛问题?


? 请注意,我不是DBA
? 尽量不要问问题,因为我不懂技术

More Related Content

What's hot (19)

PDF
Chasingice
冰 白
?
PDF
淘宝主备数据库自动切换
mysqlops
?
PDF
Mesos intro
dennis zhuang
?
PDF
惭测厂蚕尝技术分享:一步到位实现尘测蝉辩濒优化
Jinrong Ye
?
PDF
MySQL优化、新特性和新架构 彭立勋
Lixun Peng
?
PDF
服务器基准测试-叶金荣蔼颁驰翱鲍-20121130
Jinrong Ye
?
PDF
MySQL多机房容灾设计(with Multi-Master)
Lixun Peng
?
PDF
Openstack nova
Yong Luo
?
PDF
数据库内核分享——第一期
frogd
?
PPTX
厂辩濒基础培训
Ji ZHANG
?
PDF
狈辞厂蚕尝误用和常见陷阱分析
iammutex
?
PDF
Mvcc (oracle, innodb, postgres)
frogd
?
PDF
Google LevelDB Study Discuss
everestsun
?
PPTX
惭测厂蚕尝新技术探索与实践
Lixun Peng
?
PDF
Leveldb background
宗志 陈
?
PDF
MySQL InnoDB 源码实现分析(一)
frogd
?
PDF
数据库内核分享第二期(Inno db 日志 回滚段 & 崩溃恢复实现详解)
frogd
?
PDF
OpenStack Introduction Ecosystem
NUTC, imac
?
PDF
高效Linux SA
Jinrong Ye
?
Chasingice
冰 白
?
淘宝主备数据库自动切换
mysqlops
?
Mesos intro
dennis zhuang
?
惭测厂蚕尝技术分享:一步到位实现尘测蝉辩濒优化
Jinrong Ye
?
MySQL优化、新特性和新架构 彭立勋
Lixun Peng
?
服务器基准测试-叶金荣蔼颁驰翱鲍-20121130
Jinrong Ye
?
MySQL多机房容灾设计(with Multi-Master)
Lixun Peng
?
Openstack nova
Yong Luo
?
数据库内核分享——第一期
frogd
?
厂辩濒基础培训
Ji ZHANG
?
狈辞厂蚕尝误用和常见陷阱分析
iammutex
?
Mvcc (oracle, innodb, postgres)
frogd
?
Google LevelDB Study Discuss
everestsun
?
惭测厂蚕尝新技术探索与实践
Lixun Peng
?
Leveldb background
宗志 陈
?
MySQL InnoDB 源码实现分析(一)
frogd
?
数据库内核分享第二期(Inno db 日志 回滚段 & 崩溃恢复实现详解)
frogd
?
OpenStack Introduction Ecosystem
NUTC, imac
?
高效Linux SA
Jinrong Ye
?

Similar to 111030 gztechparty-小路-云时代的mysql (20)

PPTX
惭测蝉辩濒调优
ken shin
?
PPT
Mysql introduction-and-performance-optimization
isnull
?
PPSX
惭测厂蚕尝应用优化实践
mysqlops
?
PPSX
浅谈 My sql 性能调优
thinkinlamp
?
PDF
翱谤补肠濒别&补尘辫;尘测蝉辩濒数据库模式设计
Beenyoung Lee
?
PDF
浅谈 MySQL 性能调优
Sky Jian
?
PPT
Optimzing mysql
liufabin 66688
?
PDF
My sql数据库开发的三十六条军规
isnull
?
PDF
惭测厂蚕尝数据库开发的叁十六条军规
mysqlops
?
PPTX
My sql explain & select
Ming-Ying Wu
?
PDF
阿里集团惭测厂蚕尝特性(5.5介绍)
Hui Liu
?
PDF
惭测厂蚕尝数据库设计、优化
Jinrong Ye
?
PDF
2011 06-12-lamp-mysql
pwesh
?
PDF
2011 06-12-lamp-mysql-顾春江
thinkinlamp
?
PPSX
惭测蝉辩濒遇到的一些问题
wang tongchao
?
PDF
Mysql 5.5-eval
pwesh
?
PDF
惭测厂蚕尝5.6新功能
郁萍 王
?
PPTX
My sql 5.6新特性深入剖析——innodb引擎
frogd
?
PPTX
1到100000000 - 分布式大型网站的架构设计
RolfZhang
?
PDF
惭测厂蚕尝运维那些事
Leo Zhou
?
惭测蝉辩濒调优
ken shin
?
Mysql introduction-and-performance-optimization
isnull
?
惭测厂蚕尝应用优化实践
mysqlops
?
浅谈 My sql 性能调优
thinkinlamp
?
翱谤补肠濒别&补尘辫;尘测蝉辩濒数据库模式设计
Beenyoung Lee
?
浅谈 MySQL 性能调优
Sky Jian
?
Optimzing mysql
liufabin 66688
?
My sql数据库开发的三十六条军规
isnull
?
惭测厂蚕尝数据库开发的叁十六条军规
mysqlops
?
My sql explain & select
Ming-Ying Wu
?
阿里集团惭测厂蚕尝特性(5.5介绍)
Hui Liu
?
惭测厂蚕尝数据库设计、优化
Jinrong Ye
?
2011 06-12-lamp-mysql
pwesh
?
2011 06-12-lamp-mysql-顾春江
thinkinlamp
?
惭测蝉辩濒遇到的一些问题
wang tongchao
?
Mysql 5.5-eval
pwesh
?
惭测厂蚕尝5.6新功能
郁萍 王
?
My sql 5.6新特性深入剖析——innodb引擎
frogd
?
1到100000000 - 分布式大型网站的架构设计
RolfZhang
?
惭测厂蚕尝运维那些事
Leo Zhou
?
Ad

More from Zoom Quiet (20)

PPT
42qu thrift1
Zoom Quiet
?
PDF
产物信息收集系统滨苍蹿辞肠的演变
Zoom Quiet
?
PDF
Go courseday3
Zoom Quiet
?
PDF
Go courseday2
Zoom Quiet
?
PDF
Go courseday1
Zoom Quiet
?
PDF
01s0401 go,互联网时代的c语言 许式伟
Zoom Quiet
?
PDF
Zoz pwned-by-the-owner-表惹程序猿
Zoom Quiet
?
PDF
金山云查询系统改进之路1
Zoom Quiet
?
PDF
Zh120226techparty zd-story
Zoom Quiet
?
PDF
Zh120226techparty velocity2011-review
Zoom Quiet
?
PDF
Zh120226techparty jeff kit-ios-toolbox
Zoom Quiet
?
PPTX
痴别濒辞肠颈迟测2011分享
Zoom Quiet
?
PDF
陈正 Introduction to-sae_python
Zoom Quiet
?
PDF
111218 zhtechparty-panda讲稿
Zoom Quiet
?
PDF
111218 zhtechparty-移动互联网产物需求分析
Zoom Quiet
?
PDF
111218 zhtechparty-zd-浅谈symbian开发
Zoom Quiet
?
PDF
ImpoImport this, that, and the other thing: custom importersrt not for_y
Zoom Quiet
?
PDF
Import this, that, and the other thing: custom importers
Zoom Quiet
?
PPT
金山卫士界面框架
Zoom Quiet
?
KEY
111030 gztechparty-小路-sophia
Zoom Quiet
?
42qu thrift1
Zoom Quiet
?
产物信息收集系统滨苍蹿辞肠的演变
Zoom Quiet
?
Go courseday3
Zoom Quiet
?
Go courseday2
Zoom Quiet
?
Go courseday1
Zoom Quiet
?
01s0401 go,互联网时代的c语言 许式伟
Zoom Quiet
?
Zoz pwned-by-the-owner-表惹程序猿
Zoom Quiet
?
金山云查询系统改进之路1
Zoom Quiet
?
Zh120226techparty zd-story
Zoom Quiet
?
Zh120226techparty velocity2011-review
Zoom Quiet
?
Zh120226techparty jeff kit-ios-toolbox
Zoom Quiet
?
痴别濒辞肠颈迟测2011分享
Zoom Quiet
?
陈正 Introduction to-sae_python
Zoom Quiet
?
111218 zhtechparty-panda讲稿
Zoom Quiet
?
111218 zhtechparty-移动互联网产物需求分析
Zoom Quiet
?
111218 zhtechparty-zd-浅谈symbian开发
Zoom Quiet
?
ImpoImport this, that, and the other thing: custom importersrt not for_y
Zoom Quiet
?
Import this, that, and the other thing: custom importers
Zoom Quiet
?
金山卫士界面框架
Zoom Quiet
?
111030 gztechparty-小路-sophia
Zoom Quiet
?
Ad

111030 gztechparty-小路-云时代的mysql

Editor's Notes