Sql Server XML列替代Document DB?

Rog*_*son 11 sql-server couchdb mongodb document-database xml-column

是否可以使用Sql Server XML列替代真正的文档数据库(如Couch或Mongo)?

如果我要为文档创建一个带有guid PK Id和XML列的表.与使用文档数据库相比,主要问题是什么?

Sql Server支持对XML列进行索引,因此查询不应该是完全可怕的吗?

Bre*_*zar 7

你在这里有几个问题:

是否可以使用Sql Server XML列替代真正的文档数据库(如Couch或Mongo)? 是的,您可以将它用作替代品,但是,如果您只是存储XML而不是利用任何SQL Server的关系工具,那么您可能不会对性能感到满意.

如果我要为文档创建一个带有guid PK Id和XML列的表.与使用文档数据库相比,主要问题是什么? 简而言之,扩展.SQL Server不能很好地扩展这种东西.您可以通过复制来完成,但相对于"真正的"文档数据库进行管理却很痛苦.

Sql Server支持对XML列进行索引,因此查询不应该是完全可怕的吗? 问题是SQL Server的XML索引可能需要几倍于原始数据的存储空间.这些索引无法在线维护(如defrags),因此在维护窗口期间最终会出现锁定问题.


Rog*_*son 3

我正在对此进行一些实验: http://rogeralsing.com/2011/03/02/linq-to-sqlxml-projections/

查询速度“不​​错”,我不会用它来扩展。但是在标准基础设施上运行无模式存储的乐趣是非常好的。