SQL Server和Mongo可以一起使用吗?

Joh*_*ohn 9 sql-server mongodb nosql

我们有一个面向新闻的大型网站,网站流量很高.该体系结构是您经常看到的DB - Repo Layer - Services Layer - Asp.Net MVC.我们一直看到的问题是读取性能.事实证明,所有这些DDD域对象在理论上对于业务规则来说都很棒,但在优化读取性能方面却让生活更加艰难.

作为一个解决方案,我正在考虑一些全新的东西(对我们来说):使用noSQL.我想在我们的网站上使用noSQL数据库来显示数据.我们无法摆脱我们的SQL Server(至少不会很快),但在我看来,实际的一步是将Mongo用作所有新开发的查询数据库.

我的问题是,是否可以将SQL Server用作记录数据库,将Mongo用作查询数据库,如果是这样,您将使用哪种技术/技术来更新更新?我希望Mongo能够在15分钟内恢复精力.

And*_*ich 11

我建议看一下Greg Young最初介绍的cqrs(Command Query Responsibility Segregation)模式.你也可以在这里阅读.

这种方法涉及两个数据库:读和写.Write数据库用作主写入存储和读取数据库用于查询.读数据库可以有非规范化数据.例如,如果您有文章,您可以在其中嵌入作者信息以便在ui上快速显示.而且一般来说nosql数据库非常适合读取存储.

在你的情况下,主要规范化数据库可以在sql中,读取数据库可以在mongodb中.

通常,这种方法非常适合高流量系统.它有开源实现 - ncqrs.

这也是微软2012年路线图中的方法.

来自我:我使用这种方法超过一年,并给予我个人投票.