NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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

公众号推荐:

跳进 AI 的奇妙世界,一起探索未来工作的新风貌!想要深入了解 AI 如何成为产业创新的新引擎?好奇哪些城市正成为 AI 人才的新磁场?《中国生成式 AI 开发者洞察 2024》由 InfoQ 研究中心精心打造,为你深度解锁生成式 AI 领域的最新开发者动态。无论你是资深研发者,还是对生成式 AI 充满好奇的新手,这份报告都是你不可错过的知识宝典。欢迎大家扫码关注「AI前线」公众号,回复「开发者洞察」领取。

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

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

关注

评论

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

Vue使用axios进行get请求拼接参数的两种方式

不觉心动

6 月 优质更文活动

【Netty】「NIO」(五)多线程优化

sidiot

Java 后端 Netty 6 月 优质更文活动

RabbitMQ工作模式之Work queues工作队列模式

不觉心动

6 月 优质更文活动

新斗罗大陆游戏详细图文架设教程

echeverra

斗罗大陆

深度学习应用篇-计算机视觉-语义分割综述[6]:DeepLab系列简介、DeepLabV3深入解读创新点、训练策略、主要贡献

汀丶人工智能

人工智能 深度学习 计算机视觉 语义分割算法 6 月 优质更文活动

RabbitMQ工作模式 Routing路由模式

不觉心动

6 月 优质更文活动

SpringBoot整合RabbitMQ生产者

不觉心动

6 月 优质更文活动

SaaS公司如何成为 AI 独角兽?发挥长板:流程、用户需求和数据积累

B Impact

解决SpringBoot整合Mybatis和Mybatis-Plus不能公用(版本兼容性问题)

不觉心动

6 月 优质更文活动

SpringBoot项目使用hutool工具进行HttpClient接口调用的处理(文件上传)

不觉心动

6 月 优质更文活动

openEuler22+GreatSQL+dbops玩转MGR

GreatSQL

MySQL 高可用 greatsql greatsql社区

《弥合鸿沟——2023校园招聘调研报告&备战攻略》重磅发布!一文速览10大关键发现

用友BIP

招聘 人才 校招

深度学习应用篇-计算机视觉-语义分割综述[5]:FCN、SegNet、Deeplab等分割算法、常用二维三维半立体数据集汇总、前景展望等

汀丶人工智能

人工智能 深度学习 计算机视觉 语义分割算法 6 月 优质更文活动

科兴未来|第六届中国·南宁海(境)外人才创新创业大赛

科兴未来News

npm安装nanoid生成随机id并简单使用

不觉心动

6 月 优质更文活动

解决vue组件终端报错: error Component name “xxx“ should always be multi-word vue/multi-word

不觉心动

6 月 优质更文活动

使用SpringBoot整合数据库连接池Druid的错误总结

不觉心动

6 月 优质更文活动

Redis的发布订阅

不觉心动

6 月 优质更文活动

文末有奖品 | 开放原子全球峰会最新剧透,给我冲!

KaiwuDB

数据库

2023年全媒体广告投放代理怎么加入?微信广告代理怎么做的?

微点全媒体微信推广渠道

常见的软件可靠性度量和分析方法

穿过生命散发芬芳

可靠性度量 6 月 优质更文活动

C语言编程—头文件

智趣匠

C语言 头文件 6 月 优质更文活动

Redis.confp配置文件的一些配置

不觉心动

6 月 优质更文活动

RabbitMQ工作模式总结

不觉心动

6 月 优质更文活动

Springboot整合RabbitMQ生产端和消费端

不觉心动

6 月 优质更文活动

聊聊那些奇葩的代码规范 —— 滥用静态导入

HoneyMoose

Vue安装并使用axios发送请求

不觉心动

6 月 优质更文活动

RabbitMQ工作模式 Pub/Sub订阅模式

不觉心动

6 月 优质更文活动

ESP8266调用NTP服务器进行时间校准

DS小龙哥

6 月 优质更文活动

当中间件遇到云原生,看看会发生什么事

金蝶天燕云

云原生中间件 中间件套件

纠删码技术在vivo存储系统的演进【上篇】

vivo互联网技术

分布式存储 磁盘故障 纠删码 数据可靠性

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