我对C#编程有点新,并且需要一些关于如何解决问题的建议。我需要处理存储在SQL Server数据库上的数以万计的记录,并且处理过程应尽可能快。在C#中,存储器中用于处理数据库行的最小内存占用方式是什么?
为了最大限度提高性能,我在应用程序启动时从后台线程的数据库中获取行,因为它在开始处理之前需要等待一些用户输入。这种方法节省了整个过程的20%的时间,但在内存占用方面非常耗费资源(该过程需要200MB的RAM,并且我估计数据库行的原始数据少于10MB)。
我正在使用一个类,其成员存储数据库列的数据,并使用ArrayList来存储行。
是否有另一种方法将数据存储在内存中以最小化消耗的内存?
我希望我们正在谈论一些非常复杂的处理...否则,存储过程(用于用户输入的参数)(或类似的)是否是更适合处理数据的机制?处理存储的数据是SQL Server所做的很好的事情。 – Reddog 2010-06-23 23:30:43
只是为了使事情更清楚:应用程序是一个生物识别手指识别系统。当生物特征从某人身上采集手指模板时,在数据库中抓取存储的手指模板可以使识别的整个过程更快。 – LrycXC 2010-06-24 01:06:42