这篇文章主要讲解了“mysql 5.7有哪些优缺点”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和免费主机域名学习“mysql 5.7有哪些优缺点”吧!原理
innodb的透明页IO压缩,利用punch hole和数据压缩来实现。在内存中是一个正常的页,只有在写到磁盘时,才进行压缩。调用函数os_file_io_complete进行punch hole操作,os_file_io_complete调用的是fallocate()操作系统函数,并且使用 FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE标签,回收磁盘上页的空闲block。具体方法是先将压缩后的内容写入到磁盘,此时磁盘上页仍然是16K,写完成后,调用fallocate函数回收磁盘页中空闲的block,该block以系统block_size为单位。优点
1、内存中方便管理,只有正常页,不存在压缩后的页
2、更加简单灵活的使用压缩算法
3、代码上可以针对各种类型的页进行压缩缺点
引用淘宝数据库内核月报中内容:
无法免费主机域名完美压缩:例如9KB的数据可能需要12kb来存储,取决于block size;
无法压缩Buffer pool, 这是和传统innodb压缩相比,以前的压缩方式可以在内存中只存放压缩页拷贝 (然而也有可能同时存在压缩和解压页),因此用户可能需要去购买iops更高的设备,而oracle正好也卖这些….
punch hole 可能产生的文件碎片化,底层的文件管理更加复杂;
对innodb文件做punch hole可能带来的后果是,使得每个文件的page变成一个独立的segment,文件系统需要单独的journal和metadata来管理。另外也有可能有性能问题:可能比non-sparse的写操作昂贵五倍 (这依赖于具体的内核);
删除一个拥有几百万个段管理对象的数据文件带来的开销会非常昂贵。 mariadbmysql的innodb中仅支持2种压缩算法,而mariadb的XTRADB中可支持zlib、lz4、lzo、lzma、bzip2、snappy等5种算法。除了,zlib、lz4外,其他的需要下载代码进行编译安装。感谢各位的阅读,以上就是“mysql 5.7有哪些优缺点”的内容了,经过本文的学习后,相信大家对mysql 5.7有哪些优缺点这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云技术,小编将为大家推送更多相关知识点的文章,欢迎关注!
这篇文章主要介绍免费主机域名MongoDB社区版和企业版版本特性差异有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!版本特性社区版本企业版本JSON数据模型、自由模式支持支持水平扩展的自动分片功能支持支免费主机域名持内置副本以及高可…