我正在使用SSIS包中的xsd验证xml。我有一个1GB的文件,同时验证内存消耗高达3.5GB。无论如何,我们可以在SSIS中使用xsd来验证xml,并使用较少的内存(使用c#验证或其他方法)。在ssis中验证xml - 内存问题
0
A
回答
0
谢谢您的回答威尔,发布我做的步骤,相信这可以帮助有人
- 创建了一个脚本任务,请确认有(使用XMLReader的设置)
- 失败的脚本任务,如果有效通货膨胀失败
- 如果任务通,执行数据流中的XML源任务并将其存储
1
SSIS将整个文件加载到内存中,因此文件上的内存消耗是不可避免的。你可以创建一个XML架构集合,再现你的XSD,赋值给一个表中的XML列,并尝试将文件加载到表:
- 与XSD的格式创建一个XML架构集合。
- 使用指定模式的XML列创建表格
- 尝试使用SSIS将XML文件加载到表格中。
你可以看到如何创建架构集合的例子,在这里创建表:
相关问题
- 1. 在SSIS XML任务中验证问题任务
- 2. XML验证问题
- 3. XML验证问题
- 4. xml架构验证问题
- 5. XML验证XSD问题
- 6. XML Schema的验证问题
- 7. xml,xsd验证问题
- 8. XML模式验证问题
- 9. SSIS包执行 - 内存不足问题!
- 10. ssis xml编码问题
- 11. 问题在验证
- 12. Zend框架验证器存在问题
- 13. SSIS加载验证
- 14. SSIS包挂在验证
- 15. XML声明的验证问题
- 16. é(xE9)字符的xml验证问题
- 17. XML验证问题与元素
- 18. 地图(XML)的验证问题
- 19. XML验证 - 命名空间问题
- 20. 验证XML和DTD时的问题
- 21. XML Schema氧气验证问题
- 22. xml使用新手DTD验证问题
- 23. XSS验证的Ajax XML问题
- 24. 验证码验证问题
- 25. 存储算法问题 - 验证内存小的顺序数据
- 26. 验证问题
- 27. 验证问题
- 28. 验证问题
- 29. 验证问题
- 30. 验证问题
如果时间XSD变化,我们需要再次重新创建表,并再次是吧。你能告诉我,这种方法的记忆效率。 – Madhan
您不需要一次又一次地创建表,XML列只是试图包含由模式验证的XML。如果您的XSD正在更改,那么您需要重新创建XML SCHEMA COLLECTION,但这是不可避免的。这种方法比使用SSIS更具有内存效率,因为整个文件不会被加载到内存中,它将被批量加载到表中。否则,你唯一的选择是某种C#xsd验证功能。 – Wil