当前的.net应用程序要对数据库(主要是MSSQLSERVER2005)操作,程序会直接与数据库操作。也要通过执行存储过程 来与数据库操作。但是数据量很大,想想问问有关设置这个连接保持时间的问题。是不是通过改进程序端的在与数据库访问的数据量,再改进数据库端(存储过程),是不是还是得把连接的时间(SQLCommand的CommandTimeout)值设的大点呢?设多大为好?数据量可能会稍大。可能最小的会有几万条。好像相对于一些上十万条上百条的话,不算大。
问题:想道对于这样的大数据量的操作都要做些什么呢?包括程序端和数据库这端,当然还有连接的时间的大小的问题。谢谢。。
最近在做的数据量也很大,人多的时候访问经常超时,没有办法,数据库方面该优化的都优化好,索引加好,约束做好,剩下的其实基本都是程序的问题.
我们每天都产生新表,每张表都是一千万以上的数据,但是取出来的时候,你可以按需来取,不必一次全都取出,这样就能快一些.
从一个临时表往库里做更新(包括插入与修改)操作,不用临时表,用SP做呢?
对于海量数据应该如何解决? 我看了许多贴子认为有下面两个方法:
方法一:
1) 把数据量大的表按星期或月份分开表存放,每个表的结构,索引,主键等一样,即是符合分区视图的创建
2) 在这些表中建立分区视图
3) 查询数据时对分区视图进行操作
方法二:
1) 建一个历史数据库(或历史数据表),用于存放历史数据,他们的一些索引等结构可以不一样,历史表偏重查询,更新操作较少,建立所有多考虑查询,而存放当前月数据的表要涉及到更新插入等操作,因此建立索引时要注意平衡
2) 当前月份如果结束了,则把数据全部导入到历史表中,并且清空当前表的数据
3) 如果要操作历史数据则要转到历史数据表中
建议尝试用 ORACLE 数据库,再用上面方法,效果和性能会更好。