在SQL Server中保存大型请求和响应xml的最佳做法是什么

时间:2016-10-15 08:03:46

标签: sql-server xml database sql-server-2008 database-design

我想在SQL Server数据库中保存所有XML请求和响应。这些可以是数百万。如果我在SQL Server中使用XML类型,则会出现性能问题。

有谁能告诉我保存这些数据的最佳方法是什么?

由于

1 个答案:

答案 0 :(得分:0)

我开始撰写评论,但有太多的内容:)

根据您之后实际需要处理的数据,正确的解决方案可能会有所不同:

  • 如果您需要只是为了存储某些数据用于日志记录,您可以使用带有XML数据类型的列的简单表和一些ID,日期时间戳以及某些基于XML的索引。

  • 如果您需要根据此数据构建一些报告或立即快速访问它 - 更好的方法是解析/聚合所有这些XML输入并将其存储在适当的位置构建数据库(表/索引等)。

  • 如果此请求和响应具有大规模性且此XML具有无指定结构 - 请考虑使用某些NoSQL解决方案。

F.e。我们有一个包含存储日志的搜索服务:

  1. 以文字形式搜索请求,
  2. xml中的响应,
  3. 也是userid,请求开始和结束的日期时间。
  4. 我们每天搜索大约500次,因此我们将其存储在一个表中,其中索引位于userid / datetime。一切正常。