innodb - 为什么 MariaDB 10.2 再次使用 InnoDB 而不是 Percona XtraDB?

标签 innodb mariadb xtradb

MariaDB 主页说他们在 10.1 之前都使用 Percona XtraDB,从 10.2 开始他们将再次使用普通的 InnoDB ( https://mariadb.com/kb/en/mariadb/xtradb-and-innodb/ )。

这对我来说似乎不合理,因为 XtraDB 似乎是 InnoDB 的更好/改进版本( https://www.percona.com/software/mysql-database/percona-server/feature-comparison )。那么这是一个拼写错误,是否存在任何法律问题,或者新版本的 InnoDB 只是比 XtraDB 更好?

MariaDB 页面上甚至有一个问题,但几周来还没有得到解答。

抱歉,由于 Stackoverflow 规则,无法附加所有相关链接。

最佳答案

使 InnoDB(或 XtraDB)与 MySQL (Percona) 保持同步是一项复杂的任务。我们从10.2中的InnoDB-5.6迁移到InnoDB-5.7花了半年多的时间。对 XtraDB 再次执行此操作可能只需要比这少一点的时间。我们要开展这样的项目,必须为我们的用户带来显着的利益。

XtraDB 在 5.1 和 5.5 中比 InnoDB 有许多重大改进。但随着时间的推移,MySQL 已经实现了几乎所有这些。 InnoDB 已经迎头 catch ,XtraDB 也只是稍微好一点。不足以证明需要延迟每个人的 10.2-GA 的数月合并的合理性。

特别是,XtraDB 5.7 似乎唯一真正的改进是针对写入密集型 I/O 密集型工作负载,其中禁用了 innodb_thread_concurrency 控制。

有了适当的 innodb_thread_concurrency,XtraDB 也只是稍微好一些。我们不想为了那些拥有写密集型 I/O 密集型 InnoDB 工作负载并且不知道如何配置 innodb_thread_concurrency 的少数用户而将 10.2-GA 延迟长达半年。

请注意,我们仍然考虑合并 XtraDB 优化,但作为补丁,而不是作为一个整体的 XtraDB,后者不再有大量的整体代码改进。

https://mariadb.com/kb/en/library/why-does-mariadb-102-use-innodb-instead-of-xtradb/

关于innodb - 为什么 MariaDB 10.2 再次使用 InnoDB 而不是 Percona XtraDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43604290/

相关文章:

mysql - Percona XtraDB Cluster多节点写入和事务外意外死锁?

mysql - 为什么在创建表后删除 django DATABASE_OPTIONS 的 "init_command set engine=INNODB"?

mysql - 数据适合行时的 VARCHAR 与 TEXT 性能

mysql - django 无法在 docker-compose 中连接 mysql

mysql - 分层 MariaDB/MySQL 递归查询(仅限父级)

MySQL 子查询与 LIMIT 与 JOIN

mysql - Galera 集群的建议最少数量是 3 个节点吗?

JOIN 大表的 MySQL 查询优化

mysql - 在 mysql/mariadb 中,索引是存储在数据库级别还是表级别?

mysql - SQL 选择超过 1 个联结点的位置