QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

Tokutek 发布新版本的 TokuDB 和 TokuMX

  • 2014-11-07
  • 本文字数:1105 字

    阅读完需:约 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

2014-11-07 02:052946
用户头像

发布了 1008 篇内容, 共 398.6 次阅读, 收获喜欢 345 次。

关注

评论

发布
暂无评论
发现更多内容

理解分布式一致性:Paxos协议之Basic Paxos

程序那些事

raft PAXOS raft协议 paxos协议 Basic paxos

架构师训练营第四周学习总结

吴传禹

极客大学架构师训练营

视读——沟通的艺术,看入人里,看出人外(第四章)

废材姑娘

WEEK4 一个典型的大型互联网应用系统使用了哪些技术方案和手段,主要解决什么问题?请列举描述

陈勇

Paxos 的变种(一):Multi-Paxos 是如何劝退大家去选择 Raft 的

多颗糖

分布式 架构师 分布式架构 分布式一致性

大型互联网应用面对的挑战及应对方案和手段

张荣召

系统架构:系统技术挑战与方案

张荣召

架构师训练营 1 期 -- 第四周作业

曾彪彪

极客大学架构师训练营

架构师训练营 1 期 -- 第四周总结

曾彪彪

极客大学架构师训练营

LeetCode题解:22. 括号生成,递归生成同时过滤,JavaScript,详细注释

Lee Chen

大前端 LeetCode

会用Docker的人都别装了,这多简单呐

MySQL从删库到跑路

MySQL Docker Linux yum redhat

区块链助力政府建设高效政务能力

CECBC

区块链 政务

互联网架构演化

张荣召

B站真题:如何判断括号是否有效?

王磊

Java 数据结构 算法

训练营第四周作业 2

仲夏

极客大学架构师训练营

理解分布式一致性:Raft协议

程序那些事

分布式 raft 分布式一致性 raft协议

训练营第四周作业 1

仲夏

极客大学架构师训练营

聊聊「测试分工和测试时间」

清菡软件测试

测试

架构师训练营第 1 期 - 第四周总结

Todd-Lee

极客大学架构师训练营

架构师训练营-week04-作业1

lucian

极客大学架构师训练营

Spring 事务,你真的用对了吗(上篇)?

废材姑娘

Spring MVC

week04总结

龙卷风

架构师一期

WEEK4 学习总结

陈勇

极客大学架构师训练营

架构师作业 - 第四周 - 一个典型的大型互联网应用系统使用了哪些技术方案和手段

袭望

DDIA读书笔记(1)可靠性,可扩展性,可维护性

莫黎

读书笔记

架构师训练营第四周作业

吴传禹

极客大学架构师训练营

极客时间架构师培训 1 期 - 第 4 周作业

Kaven

架构师训练营第 1 期 - 第四周作业提交

Todd-Lee

极客大学架构师训练营

用Python绘制地理图

计算机与AI

Python 绘图

week04作业

龙卷风

架构师一期

为什么说 Python 内置函数并不是万能的?

Python猫

Python

Tokutek发布新版本的TokuDB和TokuMX_数据库_Benjamin Darfler_InfoQ精选文章