如果我选择RavenDB,我会失去SQL Server的哪些好处?

时间:2011-11-23 23:00:54

标签: sql-server comparison ravendb

如果我选择RavenDB作为一个相当标准的类似CMS的Web应用程序,与SQL Server相比我会失去什么?

编辑:标题中有一个“好处”这个词,这是一个有点争议的术语。也许我应该说“可能性”或“功能”之类的东西,希望我能清楚地知道自己在追求什么。

我想到的一些事情(但我是RavenDB的新手,所以这只是一些建议,有些可能是错的,我希望有人会提供更完整和准确的列表):

  • 使用ASP.NET动态数据的快速但可自定义的管理界面(有一些内置的Silverlight管理应用程序,但我很确定它不会取代我的情况下完整的管理部分)
  • 可能有一些查询功能?或者Raven索引几乎可以替换我想到的每个SQL查询?
  • 实体框架集成(我知道有些人讨厌EF,但我认为作为EF提供商意味着你可以轻松地将数据发布为OData,使用EF代码优先等等,对吗?)
  • Azure部署(根据评论不正确)
  • 无数的SQL查询/管理工具

非常感谢更完整/准确的列表。

(注意:我并不是说我需要所有(或任何)这些,我只想了解如果我选择RavenDB会有什么不可用。另外,请不要讨论RavenDB的优势,我知道它们,它们很容易从官方网站上消化。)

4 个答案:

答案 0 :(得分:3)

您可能希望看看Ayende(RavenDB创建者)最近发布的这两篇博文,了解何时应该使用RavenDB,何时不应该使用。

When should you use ravendb

When should you not use ravendb

答案 1 :(得分:1)

除了技术之外,你应该考虑你的团队成员,因为RavenDB是对我们这些有RDBMS背景的人的思考。对于那些参与者来说,这将是什么类型的伸展?当您告诉他们您在创建文档数据库索引时没有考虑回答他们想要回答的问题时,您的用户是否会期望报告以及说出什么?虽然在设计和实现域时可以大大提高工作效率,但文档数据库与SQL不同。

答案 2 :(得分:1)

  

使用ASP.NET Dynamic快速但可自定义的管理界面   数据(有一些内置的Silverlight管理应用程序,但我是   很确定它不会取代我的完整管理部分   情况下)

ASP.NET MVC支持自第二版以来基于POCO的脚手架。但它不是那么快的解决方案。

  

可能有一些查询功能?或者可以替换Raven索引   几乎我可能会想到的每个SQL查询?

您应该首先考虑您的问题。 Raven DB没有报告数据库。

  

实体框架集成(我知道有些人讨厌EF,但我认为   作为EF提供者意味着您可以轻松发布数据   作为OData,使用EF代码优先等,对吗?)

你如此专注于工具。 Code First是您处理文档数据库的方式。你为什么需要OData? RavenDB具有开箱即用的REST API。

答案 3 :(得分:0)

WCF RIA服务(Silverlight)。 你需要做所有WCF管道工作。