BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Tokutek发布新版本的TokuDB和TokuMX

| 作者 Benjamin Darfler 关注 0 他的粉丝 ,译者 谢丽 关注 9 他的粉丝 发布于 2014年11月8日. 估计阅读时间: 4 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

Tokutek已经发布了其存储引擎产品的新版本。TokuDB for MySQL已经到了7.5版本,包含两项重要的性能特性。TokuMX for MongoDB已经到了2.0版本,包含各种新特性,其中包括其本身性能的提升。

对于简单的select,TokuDB先前的版本已经支持行的批量获取。Rich Prohaska是Tokutek的一名工程师,他解释了这样做的动机:

MySQL使用Handler API从TokuDB(和其它存储引擎)一次获取一行数据。遗憾的是,就每次Handler调用从分形树上获取下一行或上一行数据而言,分形树搜索过于复杂而难以使用。TokuDB在Handler中使用了一个批量获取缓冲区,其中包含了一次分形树搜索的结果。当MySQL调用下一个或上一个TokuDB Handler而且批量获取缓冲区非空时,就从批量获取缓冲区中弹出一行返回给MySQL。否则,用一次分形树搜索返回的多行结果填充批次获取缓冲区。

在TokuDB 7.5中,该特性经过了扩展,支持更复杂的select语句了,包括“INSERT [IGNORE] INTO … SELECT”、“INSERT INTO … ON DUPLICATE KEY UPDATE”、“REPLACE INTO … SELECT”和“CREATE TABLE … SELECT”。

除改进了批量获取特性外,TokuDB 7.5还引入了执行读取无关复制的功能。Prohaska是这样阐释该特性的:

当使用基于行的复制时,该行的映像会写入二进制日志,用于写入、删除和更新操作。从节点可以从二进制日志中使用该行映像,从而避免了从表中读取该行。这种读取无关复制的设计可以显著降低从节点的I/O负载。

Tokutek做了一次基准测试,声称使用读取无关复制时性能提升了20倍。不过,Tokutek提醒说,在可以使用该项特性前需要首先满足一些条件

TokuMX 2.0带来了自己的一套广受欢迎的改进。首先是将Ark一致性算法用于复制。Ark算法由Tokutek创建,与MongoDB的默认算法相比,它可以提供更好的复制保障。尤其是,Ark可以确保实现了acknowledged级别majority write concern的写操作将永远不会因为随后的故障回滚。

除了Ark算法,TokuMX 2.0还增加了其它两项重要特性。第一项是,分区集合增加了分片支持。分区集合考虑了数据的范围删除,这在对时间序列数据做时效处理时尤其重要。第二项是,TokuMX现在支持MongoDB 2.4的所有地理索引和查询特性。

最后,TokuMX 2.0增加了快速更新支持。Tokutek声称,这带来了10倍的性能提升。在TokuMX先前的版本中,更新会执行一个查询读取现有文档,然后更改相关索引。借助快速更新,如果更新没有更改任何索引字段,那么开始时的查询就可以完全避免。

TokuDB和TokuMX基于Tokutek的分形树索引技术。TokuDB遵循GPLv2许可协议,TokuMX遵循AGPL许可协议。

查看英文原文:Tokutek Releases New Versions of TokuDB and TokuMX

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT