RavenDB

来自软件开发
跳转至: 导航搜索

什么是RavenDB?

RavenDB是.NET平台下的文档型数据库。

RavenDB虽然商业化,但对社区是免费的,收费的是提供的其他服务。免费版本功能没有限制,只是用户认证有限制。

RavenDB属于NOSQL数据库。

RavenDB是针对Windows/.NET平台而设计的开源文档数据库。RavenDB的出现将.NET应用与非关系数据库连接到一起。数据以Shcema-less方式存储,并直接通过HTTP、RESTful API或更方便的.NET客户端API连接,.NET客户端API使用LINQ操作RavenDB数据库文档存储,所以你懂的,很舒服。RavenDB有.NET和JAVA版本,目前都在3.0。虽然RavenDB是开源的,但官方也提供了一些付费服务,可以参考官网,不过在国内这个还是算了,墙比较高,累。

RavenDB主要特点

  • 客户端API支持.NET和JAVA
  • 伸缩、可扩展、插件化

RavenDB具有非常高的可伸缩性。支持Multi-tenancy (多用户数据隔离),以及不同的同步类型,还可以根据需要支持分区分片等等。可以对RavenDB进行扩展,目前已有的插件如:触发器,编码器/解码器,任务调度,编译扩展,分析器,加密,压缩等等。Multi-tenancy翻译有点别扭,这里解释一下:Multi-tenancy 使每个客户组织都工作在一个为其定制好的虚拟软件或者解决方案实例中,并认为自己在独享环境。Multi-tenancy 与多软件实例体系结构不同,多软件实例结构拥有多个软件实例并且每个实例服务于一个客户组织,而 Multi-tenancy 结构是由一个软件实例为所有的客户组织提供服务。多软件实例结构物理上隔离客户组织的数据,而 Multi-tenancy 环境中的软件或者解决方案逻辑上隔离客户组织的数据和配置。

  • 性能与安全

安装的时候如果是Production/Test 是需要授权文件的,因为生产环境需要完善的功能,授权文件可以用邮件获取:support@hibernatingrhinos.com,商业授权是有服务支持的,当然是需要收费的。 如果是Development模式,则是对所有用户开放的,没有任何功能限制。

关系型数据库和NOSQL数据库的区别和优缺点

参考资料