我们有一个架构,我们使用 SSIS 将数据从 XML 批处理文件中提取到暂存数据库中进行验证,然后再将其导出到生产环境中。
我们在某种程度上控制了 XML 格式,我被要求确定 XML 批处理文件应包含的最大记录数。基于 XML 模式和一些示例数据,我可以估计平均记录大小并据此进行一些预测。
但是,从另一个角度来看,我想了解 SSIS 在处理大型 XML 文件时的技术限制。
我知道 SSIS 会将 XML 文档展平并将其转换为它自己的表格内存表示形式,因此 RAM 成为一个明显的限制因素,但比例是多少?
你能说,在可用内存中,SSIS 至少需要你试图加载的文件大小的 2.5 倍吗?假设我有一个 32GB 的盒子专用于这个数据加载功能,我的 XML 文件可以有多大?
我知道可能还包括其他因素,例如架构的复杂性、嵌套元素的数量等,但最好有一个起点。