Mysql之myisam引擎
这里是早起整理的myisam优势,因为当时刚毕业那会web1.0时代还没过时,很多的门户网站实际上就只是内容展示的时候,或者发布文章公告的场景。所以对于这样的读多写少的场景,大多数使用的还是myisam引擎。那时候用的都是5.X,2017年为了解决微信用户昵称存在特殊字符,才开始使用utf8mb4编码,2018年为了存json字符串才开始使用8.X的。
主要包括以下以下优势:
- 只有本引擎才支持全文索引
- 在索引和数据层面都有数据压缩功能
- 表持有共享锁的时候,可以往表里并发插入数据
- 延迟更新的特性。每次修改的数据不会马上更新到数据表中,而是写到内存中,之后在清理缓冲区的时候或者是关闭表的时候才会讲内存中的数据写入磁盘。大大提高写入性能
- 压缩表的功能。这个压缩在我理解就是硬盘的上面的碎片整理,吧表中的信息集中在硬盘上麦年的某一块扇区上,在查找的时候避免了磁头的移动 ,和磁臂的转动。这个压缩一般是用在固定的数据表的数据,一般是不会这样使用的。如果是固定的数据,则会选择放到内存数据库中
- 如果是日志型的应用,则可以选择使用isam,因为这里只有插入和查询
- 类似丁茶操作,都需要事务的支持
- 当数据沉淀到一个量级的时候,可以转为数据仓库,用infobright来管理数据仓库即可
当然很明显的缺点:
- myisam不支持事务,如果系统奔溃之后是无法恢复
- 加锁是对整个表,所以加锁之后的并发数少。
本文来自博客园,作者:Eular,转载请注明原文链接:https://www.cnblogs.com/euler-blog/p/18600269
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通