MyRocks
開發者 | 脸书公司 |
---|---|
首次发布 | 2015年 |
源代码库 | github |
编程语言 | C++ |
类型 | 数据库引擎 |
许可协议 | GPL 2.0 |
网站 | myrocks |
MyRocks是在Facebook开发的开源软件,目的是将MySQL的功能与RocksDB的实现结合起来。它是基于Oracle MySQL 5.6的。
从10.2.5版本开始,MariaDB将MyRocks作为一个alpha阶段的存储引擎。[1][2] MariaDB 10.3.7把MyRocks作为一个存储引擎。[3] MyRocks也支持Percona服务器。
该库由Facebook数据库工程团队维护。
特性
RocksDB针对快速、低延迟的存储进行了优化,而MyRocks则旨在保持存储的高效性。
MyRock的效率集中在更高的空间效率、写入效率和读取效率上。[4]
- 更高的空间效率意味着使用更少的SSD存储。
- 更高的写入效率意味着SSD用得更久。
- 更高的读取效率来自于有更多可用IO容量可以用来处理查询。
基准测试
针对3个不同实例的基准测试--MyRocks(压缩)、InnoDB(未压缩)和InnoDB(压缩,8KB页面大小),发现:[4]
- MyRocks比InnoDB(压缩)小2倍,比InnoDB(未压缩)小3.5倍。
- 与InnoDB相比,MyRocks的存储写入率也降低了10倍。
有了SSD数据库存储,随着时间的推移,使用的空间更少,存储的耐用性更高。
支持的平台
官方支持的平台子集是:
- CentOS 6.8
- CentOS 7.2.x
用于验证构建的编译器工具集:
- gcc 4.8.1
- gcc 4.9.0
- gcc 5.4.0
- gcc 6.1.0
- Clang 3.9.0
尽最大努力支持以下操作系统:
- Ubuntu 14.04.4 LTS
- Ubuntu 15.10
- Ubuntu 16.04 LTS
参见
参考文献
- ^ Thoughts on MariaDB Server 10.3 from MariaDB Developers Meeting in Amsterdam, part 1 - MariaDB.org. MariaDB.org. 2016-10-10 [2017-01-06]. (原始内容存档于2021-10-19) (美国英语).
- ^ MyRocks alpha storage engine added - MariaDB 10.2.5 Release Notes. MariaDB.org. 2017-04-05 [2017-08-31]. (原始内容存档于2017-08-31) (美国英语).
- ^ MariaDB 10.3.4 Release Notes. MariaDB.com. 2018-01-18 [2018-01-19]. (原始内容存档于2018-01-26) (美国英语).
- ^ 4.0 4.1 MyRocks: A space- and write-optimized MySQL database. Facebook Code. 2016-08-31 [2017-01-06]. (原始内容存档于2020-11-08).