写点什么

RavenDB 3.0 即将发布

  • 2014-03-12
  • 本文字数:1715 字

    阅读完需:约 6 分钟

最近 Ayende Rahien 在一篇博客文章中透露他们刚刚对少数外部人员发布了 RavenDB 3.0 alpha 预览版。他表示:在过去 18 个月左右的时间里我们一直在研发 RavenDB 3.0,该版本中的某些部分实际上从 2011 年就开始研发了,只不过一直到现在才真正发布到产品中。

对于新版本中的主要亮点,Ayende Rahien 首先谈到的是索引,他说:在提高索引性能方面我们做了大量的工作,但是实际上这些都是次要的。在这个版本中我们真正关注的东西是操作索引的问题。

在内部我们不再使用索引名称。这意味着我们能做一些愚蠢的事情,例如实现异步索引删除。之前有大量索引(特别是 map/reduce 或者有 LoadDocument 调用的索引)的用户发现删除一个索引可能会花费相当长的时间。但是基于现在的实现方式,我们能够立即删除索引,实际上是在后台做清理。

用户碰到的另一个操作问题是新索引的引入。如果要引入的索引仅仅覆盖了一个很大数据库的一小部分,那么问题尤其严重,创建过程通常会花费很长的时间。这是因为必须要遍历完数据库中的所有文档才行。我们在新版本中做了一些优化,只需要处理相关的文档,速度比以前快多了。

新索引在引入的时候会和其他正在运行的索引完全分离,你不需要处理新索引会减缓其他索引的问题。同时在这种方式下大的删除也不再会影响索引的性能,因为我们现在能够更好地处理交叉。

此外,我们还提供了更好的报告,你能够清楚现在正在对哪些内容进行索引,能够看见索引正在做什么,以及相应的操作。

从开发的角度来看,我们还添加了一些非常好的东西,包括索引附件的能力、在索引代码中添加一些更好的情景感知等。

接下来 Ayende Rahien 介绍了 RavenFS。他认为 RavenDB 的附件并不是很完美,有很多想要使用附件的用户发现他们无法看到附件,也没法以有意义的方式搜索附件。更重要的是,附件有一些限制,因为按照他们的预期附件是相对较小的。对于那些期望获得更好服务的用户而言,RavenFS 就是答案。

RavenFS 是一个复制文件系统,它支持非常大的文件,同时还支持使用和管理它们所需要的所有设施。我们很明确地将它设计为一个地理分布式系统,对于那些需要共享非常大且会经常变化的文件的系统而言,它能够大幅降低网络负载。

在即将举行的 RavenDB 大会上我有一个主题演讲,那时候我会对 RavenFS 进行详细的介绍。我认为它非常酷,同时也有一些非常好的用例,在过去的两年间已经有一些客户在产品环境中使用它了,所以我们已经有一些非常好的经验。

Ayende Rahien 表示对于使用 RavenDB 的用户而言一个完整功能的 JVM 客户端将为他们开辟更多的战线。现在已经有一些用户在使用该 API 构建应用程序了。在 3.0 交付之后他们还打算提供更多针对其他平台的客户端。

谈到 RavenDB 3.0 中的内部变化,Ayende Rahien 表示:

实际上我们在内部做了很多变化。但是其中最重要的一个变化是我们现在将 RavenDB 托管在了 OWIN 和 Web API 之上。对我们自己的 HTTP 服务器的改变已经完成,这是为了帮助用户有更好的基础去理解 RavenDB 内部的工作原理,同时也为了鼓励捐助。它还允许我们做一些非常好的事情,例如有一个端点记载一台 RavenDB 服务器中的所有端点。

另一个重要的变化是我们正在远离 Silverlight Studio,取而代之的是一个崭新的 HTML5 Studio。这非常令人兴奋,特别是整体性能以及系统的响应能力变得非常好。

在新版本中还有一个新的存储引擎 Voron,事实上它还是一种新的数据存储方式,RavenDB 就使用它存储事务性数据。该引擎并没有被限制为 RavenDB 现在需要做的事情,它可以做更多的事情。RavenDB 3.0 中已经有了在 Voron 上运行的选项。同时 Ayende Rahien 还表示他们使用整个 RavenDB 测试套件(有超过 3 千个测试)对 Voron 进行了测试,所有的测试均成功了。

最后 Ayende Rahien 谈到了一些运维方面的事情:

我们关闭了性能计数器,因为它会引发无休止的运维问题(损坏的计数器、权限问题等),取而代之的是一个内部的度量类库。因为是内部的,所以我们能够向系统中添加更多更有意义的度量标准。

我们有新的端点暴露更多的内部状态。我们改进了定期备份支持,让它更好用——现在能定义每周全部导出或者每天定期导出。对于运维人员来说新版本有很多非常好的功能可以让他们洞悉系统当前的运行情况。

2014-03-12 05:502027
用户头像

发布了 321 篇内容, 共 131.8 次阅读, 收获喜欢 19 次。

关注

评论

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

Pencils Protocol Season 3 现已开启,多重收益一览

BlockChain先知

下一代柔性算力云耀X实例,加速企业上云一键部署新趋势

轶天下事

中小企业上云如何选?华为云这款帮你一键完成性能飞跃提升

YG科技

智谱AI、OpenAI、谷歌等16家顶级AI公司签署前沿人工智能安全承诺

技术研究院

新品牌升级的 Pencils Protocl,如何构建 LRT 赛道新范式?

石头财经

助力企业数智化上云跃级提升,云耀X实例柔性算力一直加速一直快

YG科技

2024 年 5 个 GO REST API 框架

幂简集成

Go REST API

Pencils Protocol Season 3 现已开启,一鱼多吃最大化收益

石头财经

信通院《智能化数据管理工具能力要求》标准发布,Aloudata 受邀参编!

Aloudata

DataOps 数据管理

🐬记一次MySQL执行修改语句超时问题

不在线第一只蜗牛

MySQL 数据库

你不可不知的开源组织详解,这里都有!

Apache IoTDB

Node下调试better-sqlite3

麦兜

基于 Milvus + LlamaIndex 实现高级 RAG

Zilliz

Milvus Zilliz llamaindex rag

Python Web Service开发及优化

我再BUG界嘎嘎乱杀

Python nginx flask web服务

如何让企业上云更省心?云耀X实例一键柔性算力随心配!

轶天下事

参与征文赢面试绿通!InfoQ作者享特别福利!

阿里技术

助力中小企业一键上云部署,新一代柔性算力云耀X实例展实力

YG科技

未来云计算标杆:华为云耀云服务器X实例打造智能安全的数字化解决方案

轶天下事

一键智能加速跃级体验,云耀X实例带你进入全新智能时代

YG科技

云耀X实例:下一代柔性算力新物种,双倍性能加速跃级体验

YG科技

Pencils Protocl全新品牌升级,如何构建 LRT 赛道新范式?

BlockChain先知

一文读懂Pencils Protocol Season 3:多重收益实现一鱼多吃

加密眼界

业界首款柔性算力新物种,当属华为云新上市的云耀X实例

轶天下事

引领柔性算力新风潮,加速企业数智转型首选服务器就是它

YG科技

云耀X实例:柔性算力新物种,性能超越独享型实例

YG科技

Logstash 业务日志接入可观测最佳实践

观测云

Logstash

伍继智能:基于 EMQX Cloud 实现智慧电力运维平台

EMQ映云科技

全新品牌升级的 Pencils Protocl,构建 LRT 赛道新范式

加密眼界

RavenDB 3.0 即将发布_语言 & 开发_孙镜涛_InfoQ精选文章