我对NoSql数据库很陌生,但我真的很喜欢带有官方c#驱动程序的MongoDB。它目前是我正在编写的MVC应用程序的后端,简单性和速度使我的生活变得更容易。
但是我已经在应用程序中找到了我需要非常棒的搜索。我曾经使用Solr,但对ElasticSearch非常感兴趣。
据我所知,ElasticSearch(从一个非常肤浅的层面)可以完成MongoDB在文档数据库方面的所有工作。所以,如果我已经在使用NoSql数据库,并且我需要很好的搜索,那么Mongo中有什么意义吗?用例是什么?
Mongo更快吗?更容易使用?它是BSON数据类型和驱动程序吗?为什么不使用ElasticSearch作为我的DB?
我目前正在使用AppHarbor并且喜欢“The Cloud”。我讨厌IT,只想专注于我的应用程序。话虽如此,我到目前为止看到的唯一优势是:
答案 0 :(得分:3)
这是一个非常好的问题。我问自己同样的问题,并得出以下答案。
我个人认为,如果你不能丢失数据,我就不会使用ElasticSearch。我可以看到将ElasticSearch用作需要实时分析的主要数据存储,但没有任何长期数据保留要求。否则,我建议一起使用MongoDB和ElasticSearch。 ElasticSearch有一个MongoDB River插件。这使得自动更新ElasticSearch索引变得非常容易。