使用MongoDB开始破坏您的工作效率的adhoc查询/更新?

时间:2011-09-05 02:10:31

标签: mongodb nosql

我已经开发了一个近一年的asp mvc网站,现在专门用于mongodb。我大部分都喜欢它。使用C#mongodb驱动程序和mongovue等工具,开发效率很高。

然而,我已经开始达到一个点,我真的希望有一个SQL服务器数据库。简单的任务,如更新数据库中的记录,只有轻度复杂的查询,以生成某种类型的报告,正在变得很痛苦。

我在某处阅读了一篇文章,为了使NOSSQL成功,需要有一种标准的查询语言,以及围绕它开发的工具。我猜这是遥远的,所以现在我不得不试图处理这些事情。

我认为最终我必须拥有monogDB和sql server的双重解决方案。我不认为我会像我在sql server上那样高效地更新和编写mongoDB的查询。

在使用像mongodb这样的NOSQL时,你们是如何解决这个问题的呢?你和我一样面临同样的问题吗?

3 个答案:

答案 0 :(得分:6)

您可以考虑的一个解决方案是LINQPad。您可以设置一个模板,其中包含对10Gen驱动程序的引用,并像编写代码一样编写特殊的C#MongoDB查询。我的团队和我使用这种方法来解决你提到的问题。

尝试一下(它是免费的),看看它是否可以帮助你提出简单的日常查询。

编辑我也支持Chris建议您熟悉本机JSON查询语言。如果你知道语法,那么没有什么能比速度的快速控制台窗口好。

答案 1 :(得分:1)

官方C#驱动程序可能会在未来的某个时间获得LINQ提供程序,因此这将为.NET开发人员提供熟悉的查询语法,并可能有助于提高初始生产力。还有一些很好的文档可以帮助将MongoDB查询与SQL相关联:

这些非常适合学习,但为了充分利用Mongo,非常值得投入时间熟悉原生JSON查询语法和Mongo特定概念,如map-reduce。

答案 2 :(得分:0)

既然你的问题要求,

  

当你使用像 mongodb这样的NOSQL 时,你们是如何解决这个问题的呢?

我以为我会参与其中。在使用另一个NOSQL数据库RavenDB时,我感到很痛苦。

我专门为与RavenDB的临时交互编写了一个Linqpad驱动程序。

https://github.com/ronnieoverby/RavenDB-Linqpad-Driver