我们有一个存储xml Web服务请求和响应的历史表。目前它将它们存储到XML字段中,但我们遇到了插入的性能问题。我们只插入记录,不更新,选择或删除。我们截断了表并重建索引,但没有用。该表在标识字段上具有主聚簇索引,在日期时间字段上具有默认值GetDate()。我们正在运行SQL 2005 Server,但数据库处于SQL 2000兼容模式。
如果我们将字段类型从XML更改为VarChar(max)或VarChar(xxx),是否会加快插入速度?还有什么我们应该看的吗?
感谢。
答案 0 :(得分:6)
这取决于性能问题。
因此,与所有性能问题一样,建议先测量并稍后剪切。建议的方法是应用经过充分测试和验证的绩效调查方法,如Waits and Queues。猜测会让你无法快速降落。
答案 1 :(得分:3)
varchar更快 - 无需解析。 XML数据类型做了一些非常繁重的内部提升。