写点什么

RethinkDB 1.12 发布

  • 2014-03-31
  • 本文字数:1029 字

    阅读完需:约 3 分钟

RethinkDB 是一款开源的分布式数据库,用于存储 JSON 文档,可以很容易地扩展到多台机器。它有一门令人愉快的查询语言,支持表连接和 group 等真正有用的查询,并且安装简单、易于学习。

近日,RethinkDB 1.12 发布,这是迄今为止最重大的发布之一。它带来了超过 200 项功能增强,其中包括:

  • 极大地简化了 map/reduce 和聚合命令
  • 缓存经过重大改进,消除了长期稳定性和性能方面的局限
  • 支持 ARM 架构
  • 新增四个用于对象和字符串操作的 ReQL 命令
  • 许多 Bug 修复、稳定性增强和性能提升

新版本删除了 group_by 和 grouped_map_reduce 命令,代之以一个更强大的新命令 group。该命令将文档序列分组,其后链接的任何命令都是在每个分组上单独调用,而不是在序列的所有文档上。而且,链接的命令不局限于内置的聚合命令,可以是任何一个或一系列命令。此外,除了已有的聚合命令 count、sum 和 avg 外,1.12 版本还增加了 min 和 max。读者可以进一步阅读,了解更多关于 group 命令和新的 map/reduce 基础架构的信息。

1.12 版本对缓存的基础架构进行了许多改进。对于用户而言,最大的变化是他们不需要手动为表设置缓存大小了,RethinkDB 会根据不同表的使用情况和系统可用内存空间动态地调整缓存大小。另外,为了帮助解决用户报告的各种稳定性问题,RethinkDB 还做了许多用户看不到的修改。

四个月前, David Thomas 贡献了一个拉拽请求,其中包含了在ARM 上编译和运行RethinkDB 所需要的修改。经过几个月的测试和各种修复,该请求已经并入了RethinkDB 的主干。不过,ARM 支持是试验性的,还有一些问题需要解决。

另外,新版本还增加了几个用于字符串和对象操作的命令,如用于大小写转换的downcase 和upcase、用于分隔字符串的split 和以编程方式从键- 值对创建JSON 对象的object。读者可以从 API 文档中了解更多相关信息。

最后,RethinkDB 1.12 还在性能和稳定性方面做了许多改进,如在 RethinkDB 的 Web 服务器上增加了压缩支持,增加了自动化性能回归测试改进了并行数据处理代码等。

这里需要特别提醒一下,上述功能增强中有一项破坏性修改,即用group 代替group_by 和grouped_map_reduce。用户在升级时需要针对这项修改调整应用程序,详情见 1.12 迁移指南。再者,升级之前务必先迁移数据

读者可以从这里下载试用。


感谢包研对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-03-31 07:411982
用户头像

发布了 256 篇内容, 共 100.6 次阅读, 收获喜欢 12 次。

关注

评论

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

软件测试 | 测试开发 | Docker 镜像构建可以分享的快乐

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 黑盒测试方法论—场景法

测吧(北京)科技有限公司

测试

数据中台中事实表设计概述

穿过生命散发芬芳

数据中台 9月月更

面试官:能用JavaScript手写一个bind函数吗

helloworld1024fd

JavaScript

百草味上线“本味甄果”系列罐装坚果 打造高品质坚果新标准

E科讯

DAPP系统开发Web3合约技术

薇電13242772558

dapp web3

弯曲矫正技术概述

合合技术团队

人工智能 深度学习 图片处理

软件测试 | 测试开发 | 被测系统架构与数据流分析

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | BAT大厂都在用的Docker。学会这三招,面试、工作轻松hold住

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 30 分钟轻松搞定正则表达式基础

测吧(北京)科技有限公司

测试

NFT 离商业化还有多远?

One Block Community

区块链 程序员 NFT 商业化

k8s Tidb实践-部署篇

TiDB 社区干货传送门

数据库前沿趋势

从React源码角度看useCallback,useMemo,useContext

goClient1992

React

软件测试 | 测试开发 | Dubbo-admin+Zookeeper 的环境搭建实操与 Could-not-extract-archive 报错踩坑

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 黑盒测试方法论—等价类

测吧(北京)科技有限公司

测试

TiDB Lightning导入超大型txt文件实践

TiDB 社区干货传送门

迁移 管理与运维

实现Promise的原型方法--前端面试能力提升

helloworld1024fd

JavaScript

TDengine3.0流式计算引擎语法规则介绍

TDengine

数据库 tdengine 企业号九月金秋榜

k8s Tidb 实践-运维篇

TiDB 社区干货传送门

数据库前沿趋势

运维成本降低 50%,丽迅物流是如何应对大规模容器镜像管理挑战的

阿里巴巴云原生

阿里云 容器 云原生 镜像

C语言太细了

清风莫追

c 10月月更

软件测试 | 测试开发 | 测试平台开发-前端开发之Vue.js 框架(一)

测吧(北京)科技有限公司

测试

软件测试 | 测试开发 | 被测项目需求你理解到位了么?

测吧(北京)科技有限公司

测试

【“玩物立志”-scratch少儿编程】亲手实现小猫走迷宫小游戏:其实挺简单

清风莫追

游戏 scratch 10月月更

深度分析React源码中的合成事件

goClient1992

React

链上自动化何以成就更好的 Web3 | 对话 OAK Network

One Block Community

区块链 自动化 专访 波卡生态

软件测试 | 测试开发 | 软件项目管理与跨部门沟通协作

测吧(北京)科技有限公司

测试

隐私计算大规模落地场景的解决之道:分布式计算架构

Jessica@数牍

隐私计算 分布式技术 分布式计算框架

软件测试 | 测试开发 | BAT 大厂最流行的性能压测、监控、剖析技术体系解析

测吧(北京)科技有限公司

测试

TiFlash 源码阅读(九)TiFlash 中常用算子的设计与实现

TiDB 社区干货传送门

软件测试 | 测试开发 | 测试平台开发-前端开发之Vue.js 框架的使用(二)

测吧(北京)科技有限公司

测试

RethinkDB 1.12发布_语言 & 开发_马德奎_InfoQ精选文章