mysql简单介绍和一些局限性

mysql版本
Alfa -> Beta->GA
GA 代表 生产环境使用


mysql局限性

1、不要复杂事务支持,RR级别下,辅助next-key lock,就可以满足高一致性要求了;
2、真的需要物化视图时,可以采用触发器的方式变相实现;
3、不支持函数索引、hash join、bitmap索引,虽然是硬伤,但大部分互联网应用都不需要这么强的功能需求,或者可以对产品需求进行改造;
4、查询优化器在持续改进中,需要一个过程,而且绝大多数都是简单应用,整体来说还好;

mysql利用硬件的一些优缺点介绍

CPU利用特点

5.5可以利用到24个核
5.6可以利用到64个核
每个连接对应一个线程,每个并发query只能使用到一个核


内存利用特点
内存管理简单,有效,高TPS(高事务处理数)、高并发环境下,需要依靠更多物理内存以减少物理IO,提高并发性能
有query cache,但效果不佳,建议关闭
执行计划没有缓存(类似ORACLE的library cache)
通常内存建议按实际数据的15%-20%(热点数据量)规划,专用单实例则可以分配物理内存的50~80%左右(innodb_buffer_pool_size)
类似K-V简单数据,采用memcached、Redis等NOSQL来缓存


硬盘利用特点

对磁盘的利用特点
binlog、redo log、undo log是顺序IO
datafile是随机IO和顺序IO都有
OLTP业务更多的需要随机IO,可加大内存,以减少随机IO
OLAP业务更多需要顺序IO,内存缓存作用不大,提高IOPS性能更重要
MyISAM是堆组织表(HOT),InnoDB是索引组织表(IOT)


本文出自 “dba天空” 博客,谢绝转载!

mysql简单介绍和一些局限性

上一篇:sql语法:inner join on, left join on, right join on具体用法


下一篇:asp.net的服务器控件客户端空件的区别以及如何刷新页面不靠数据库数据停留在页面