MySQL:有没有人使用过TokuDB存储引擎?

Tim*_*boy 15 mysql database rdbms storage-engines

有人用过MySQL 的TokuDB存储引擎吗?

该产品网站声称其性能比其他MySQL存储引擎(例如Innodb,MyISAM等)提高了50倍.以下是性能声明http://tokutek.com/downloads/tokudb-performance-brief.pdf

这是真的?

与MySQL一起使用此存储引擎的任何个人经验?

小智 26

如果要存储图像等blob,则不要使用tokudb.它具有较小的行大小限制.

如果您的数据超过1亿行,请使用tokudb.

如果您对UPDATE速度很敏感,请不要使用tokudb.它具有非常快的插入,但与innodb相比,UPDATE速度较慢,特别是如果使用INSERT ON DUPLICATE语句.

如果要存储日志条目,请使用tokudb.

如果你想缩小你的myisam/innnodb的数据使用量超过5倍,那么使用tokudb.我个人已经确认他们的分形树+压缩数据后端非常节省空间.

经验法则,使用最好的工具.在特定情况下,Tokudb将innodb和myisam从水中吹出,但对于天空下的一切来说,它并不是一般的替代数据库引擎.

  • 完全同意.我们有三个数据库 - 两个大约1.5TB和一个40GB.我们已经将这两个大的移动到了TokuDB并且被它吹走了 - 我们在相当普通的硬件上看到每秒超过15k个查询(其中一半是插入/更新).添加在线模式维护(列添加/删除,索引创建/删除),这是惊人的.也就是说,@ Xing正确地使用正确的工具 - 我们已经在InnoDB上留下了较小的数据库,因为我们发现它对于较小的工作负载表现更好.我们已经在生产中运行了6个月的TokuDB,并且没有问题. (4认同)

chr*_*679 7

尽管如上所述,TokuDB在UPDATE上速度很慢,但它在REPLACE上的速度非常快.通常,您可以使用REPLACE INTO替换UPDATE.我在最多180亿行的表上使用TokuDB,没有其他任何东西接近,它比innodb在大表上随机插入快至少100倍.

  • 用REPLACE INTOS批量更换UPDATES几乎肯定会破坏你的数据库 - 如果REPLACE INTO缺少某些列,它们将重置为默认值!想象一下,如果您的表具有需要保留其值的引用计数列 - REPLACE INTO将其设置为零.繁荣! (5认同)
  • 选择怎么样? (2认同)

Dee*_*dia 4

我也有同样的问题。我确实找到了 TokuDB 与 Innodb 的相当不错的比较

http://www.pythian.com/news/5139/testing-tokudb-faster-and-smaller-for-large-tables/

然而,我对其他人使用 TokuDB 或任何其他类似的 MySQL 存储引擎的任何其他经验感兴趣。

这里的另一篇评论 http://www.mysqlperformanceblog.com/2009/04/28/detailed-review-of-tokutek-storage-engine/