我们今天的设置采用 XML 数据并将该数据拆分为 SQL 中的多个表。这样做的唯一好处是报告是好的。然而,每当我们想要检索数据时,我们都必须重新绑定数百个表中的所有数据以重新导出 XML。每个 XML 可以是几 MB 到几 GB。
我们几乎从不讽刺地运行报告,但经常检索/保存数据。由于将其拆分/编译为多个表,因此保存和检索都不是很有效。
由于数据以 XML 的形式出现,我正在考虑更新我们的方法并将 XML 作为大 BLOB 保存到表中。就这么简单。
现在的问题与报告有关 - 由于无法索引 blob,我想知道我可以使用哪些选项来尽可能高效地运行报告。
数据库为 100 GB。
我不是 DBA(我是 C# 人员) - 我刚刚在工作中担任这个职位,所以我能想到的唯一方法是使用 C# 来完成 - 将每个 BLOB 构建为 XML 然后查询C# 中的 XML 数据。然而,这似乎是非常低效的。也许 SQL 中的 XQuery 更好?!尽管不是 DBA,但我对任何编程 (C#/VB) 或 SQL 建议都非常满意。