1

我有一个 VB.NET 应用程序,它正在处理来自 Oracle 数据库的大量数据并对检索到的数据执行计算。正在从 3 个相关表中检索数据。

主表对于需要计算的每个项目都有一条记录(此时略少于 100 万行)。与其他两个表中的每一个都存在一对多的关系,从表中的平均 20 条记录到主表中的每条记录(总共约 2000 万行)。

我目前正在使用 OracleDataReader 对象检索数据以访问一个存储过程,该存储过程将 REF_CURSOR 返回到连接这些表的查询的结果。.NET 代码一次读取一个记录,并使用主键列将此结果集中的一组记录分组到一个计算批处理中,然后在该计算批处理上执行所需的计算。

此应用程序的处理时间比我目前想要的要长,我正在寻找一种更有效的方式来访问这些数据以进行处理,以支持应用程序的多线程,以便多个工作线程可以对每组主记录/子记录执行计算-我的数据库中的记录集。有什么建议么?

4

0 回答 0