我正在使用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