急,求海量数据库的查询问题,高分 SQL SERVER中有个海量表,目前有3000W条记录建了相关索引后,我用SQL2000和SQL20005都查询了下现在连COUNT都会超时,更不提其他查询语句了谁接触过海量数据啊,请问该怎么处理呢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 首先,不要在线测试数据。万一有人在insert,你再count,多半会阻塞的。其次,分析你用的语句和索引,没有优化好吧?我这边2000万的数据,没感觉那么差劲啊。相反倒是一个10来万的表,访问太频繁了,搞的动不动就block,晕死了 建立只包含一个列的聚集索引,再试试Count(*). bugchen888(臭虫) count(*)超时 在SQL Server2000中使用分区视图是比较麻烦的事情,建议将数据进行分流,将一个表的数据根据某个关键字来区分,进行局部查询,可以提高效率。如果建立索引,会导致系统在插入数据的时候性能降低,但可以提高检索的性能,其中的优缺点,你可以通过查询分析器的执行计划来检测。我们这里有一个表每天的记录也是成百万的增长的,我们最终的处理方式,将每天的数据利用作业进行分流,再建一个新数据库专门存放这一个表的数据,表名就是日期,将记录分流后,在原表中将已经分流的数据删除,查询的时候,根据日期去查询,当然这是我们的业务所决定的,你的业务不知道能不能这样去处理。 先重建索引,若性能没有太大的改善就采用libin_ftsafe(子陌红尘)的方法! 建立一个聚集索引,然后再多建几个非聚集索引试试看,我在里是4000w条记录的表,count(*)也就30秒左右! INDEX的問題去掉TRIGGER我這邊2000W,訪問量很大,沒有問題當然還要看你SERVER的級別的 这么大的数据建立分区表是肯定的.还有最好建立一个新表,用于存放分区数据的记录集总数,这样下次就不用count而是直接从另一个表中获取相应分区数据集总数了。大概思想就是这样。具体怎么实施要看你的表结构了。应该把你的表结构拿出来。要不说什么都并非准确的。 求一个简单的sql 汇总语句 null 问题 50分求一个SQL语句 一个简单的代码问题,很基础。请指点! sql 本机备份远程机器每天自动执行作业导数据作业执行作业执行失败啊 如何将表内容的空值截断? 难死我了,实在写不出这个Sql了,高人指点 帮忙看看这个sql语句 关于job 请问在ms SQL中用什么语句创建表时创建一个ID字段它像ACCESS的自动编号 数据库备份文件恢复数据库 高手来啊 很急的问题
其次,分析你用的语句和索引,没有优化好吧?我这边2000万的数据,没感觉那么差劲啊。
相反倒是一个10来万的表,访问太频繁了,搞的动不动就block,晕死了
如果建立索引,会导致系统在插入数据的时候性能降低,但可以提高检索的性能,其中的优缺点,你可以通过查询分析器的执行计划来检测。
我们这里有一个表每天的记录也是成百万的增长的,我们最终的处理方式,将每天的数据利用作业进行分流,再建一个新数据库专门存放这一个表的数据,表名就是日期,将记录分流后,在原表中将已经分流的数据删除,查询的时候,根据日期去查询,当然这是我们的业务所决定的,你的业务不知道能不能这样去处理。
去掉TRIGGER
我這邊2000W,訪問量很大,沒有問題
當然還要看你SERVER的級別的