验证ssis中的xml - 内存问题

时间:2011-09-12 21:55:37

标签: sql-server-2008 ssis

我正在SSIS包中使用xsd验证xml。我有一个1GB的文件,同时验证内存消耗高达3.5 GB。无论如何我们可以使用SSIS中的xsd来验证xml,内存较少(使用c#验证或其他东西)。

2 个答案:

答案 0 :(得分:1)

SSIS将整个文件加载到内存中,因此文件中的内存消耗是不可避免的。您可以创建一个XML SCHEMA COLLECTION来重新创建XSD,将其分配给表中的XML列,并尝试将该文件加载到表中:

  1. 使用XSD的格式创建XML SCHEMA COLLECTION。
  2. 使用指定架构的XML列创建表
  3. 尝试使用SSIS将XML文件加载到表中。
  4. 您可以在此处查看如何创建架构集合并创建表格的示例:

    http://msdn.microsoft.com/en-us/library/ms176009.aspx

答案 1 :(得分:0)

感谢您的回答Wil,发布我所做的步骤,相信这可能有助于某人

  1. 创建一个脚本任务,在那里进行验证(使用xmlreader设置)
  2. 如果验证失败,则脚本任务失败
  3. 如果任务通过,请在数据流中执行xml源任务并将其存储