MySQL:MySQL 5.5 中会提供面向列的引擎吗?
MySQL 5.5 核心版本中是否会提供面向列的存储引擎(例如 InfiniDB)?
这意味着,不是作为插件,而是与核心 MySQL 5.5 捆绑包一起使用。
Will a column-oriented storage engine (e.g. InfiniDB) be available in the core release of MySQL 5.5?
Meaning, not as a plugin but available with the core MySQL 5.5 bundle.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您不能只是将基于列的引擎插入 MySQL。原因是它的优化器只理解支持传统索引的基于行的引擎。
因此,基于列的引擎(Infobright、infinidb 和 Kickfire)都使用自己对 mysql 核心的修改,这使得它使用它们的优化器而不是标准优化器(在某些情况下仅适用于某些查询)。
而其他基于行的引擎(Tokutek、PBXT 等)可以简单地作为插件运行。
对于列引擎来说,存储引擎 API 并不能真正正常工作(至少有效)。
列引擎不支持传统索引,这意味着优化器不知道如何对其进行优化。
所以嗯,不。
You can't just plug a column-based engine into MySQL. The reason for this is that its optimiser only understands row-based engines which support conventional indexes.
So the column-based engines (Infobright, infinidb and Kickfire) all use their own modification to the mysql core which makes it use their optimiser instead of the standard one (in some cases for some queries only).
Whereas other row-based engines (Tokutek, PBXT etc) can simply operate as plugins.
The storage engine API does not really work properly (efficiently, at least) for column-engines.
Column-engines don't support conventional indexes, which means the optimiser cannot know how to optimise for them.
So ummm, no.