我们正在构建一个应用程序,每个表格需要每天插入大约150万行数据。我们有16张桌子。 我们追踪包括当日数据在内的3日历史数据。在插入的运行时查询数据:我们可以使用缓存吗?
该应用程序使用C#完成;在服务器端,我们运行一个在市场营业时间(4.5小时)内填充数据表的exe文件,并且我们每5秒更新一次16个表。
在客户端,应用程序获取需要最近插入的数据(在最近5秒内)的用户查询以及可能是今天或之前的历史点,并以某种方式绘制它们。
我们有一些严重的性能问题,因为一个查询可能需要1秒或更多,这太多了。问题是,对于当今在运行时插入的数据,我们是否可以利用缓存,而不是在每次我们想从当前数据中获取某些内容时访问数据库?这会更有效率吗?如果是这样,我们该怎么做? P.S一天的数据大约为300 MB,并且我们有足够的RAM
感谢您的回答..经过一些优化后,查询时间现在为0秒。但是,我们正在查询512个VPN连接,并且UI冻结。我没有得到你真正想要解决的问题!你能再详细一点吗? – mustafabar 2009-04-14 10:32:52
@mustafabar添加了关于它的更新。 – eglasius 2009-04-14 17:01:46