社区
MS-SQL Server
帖子详情
表的数据量上百万条,程序执行判断很慢
web55
2012-01-11 01:49:17
如题:
数据库A表的数据量上百万条,A表里有Z字段是存放‘随机编码’(不重复的),再添加新记录的时候每次都要遍历整表,判断新添加的记录生成的‘随机编码’和Z字段中的‘随机编码’不重复
现在由于数据量上百万条了,每次添加新记录都会很慢,甚至没反映。
麻烦大家帮忙看下,该怎么做才能让添加新记录很快跟一开始的时候一样???急~~急~~急~~~~
...全文
206
15
打赏
收藏
表的数据量上百万条,程序执行判断很慢
如题: 数据库A表的数据量上百万条,A表里有Z字段是存放‘随机编码’(不重复的),再添加新记录的时候每次都要遍历整表,判断新添加的记录生成的‘随机编码’和Z字段中的‘随机编码’不重复 现在由于数据量上百万条了,每次添加新记录都会很慢,甚至没反映。 麻烦大家帮忙看下,该怎么做才能让添加新记录很快跟一开始的时候一样???急~~急~~急~~~~
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fling_boy
2012-01-12
打赏
举报
回复
不知你的表中z字段有没有索引。
1.没有,那每次插入前对比会比较慢
2.有,那对比快,但插入会慢
建议分表,把历史数据都存一个表中,把当前新数据存在新表中,历史表中有索引,新表中不建索引,晚上或不忙的时候把数据同步到历史表中。
这样每次插入前都检索两个表,只插入到新表中,应该可以加快速度。
dongsheng10101
2012-01-12
打赏
举报
回复
一、结构思想要变通。
二、随机码字段加索引。
fanzhouqi
2012-01-12
打赏
举报
回复
随机码 加索引,分页的状况 估计有点恐怖。
不过不改变 应用层设计的情况下 只能想用这个办法了,看能不能达到要求
shuohuameijiang
2012-01-12
打赏
举报
回复
建议LZ不要使用随机编码。可以使用更加灵活的编码规则。比如 XXX-001,最后的数字部分可以通过程序控制自增。将最后一次的编码存在数据表里面,下次要生成新的编码时,直接对比上一次的编码即可。当然,编码这个字段建立唯一索引是必须的。
prcak47
2012-01-12
打赏
举报
回复
随机编码还要规则,那真是脑子秀逗了。
meiseagull
2012-01-11
打赏
举报
回复
感觉设计思路上有问题了,现在无论怎样优化,你的表的记录会越来越多,速度肯定会越来越慢,所以我建议你重新考虑‘随机编码’的设计,要么从现在起开始使用一种编码规划,考虑不与以前重复就行了
郗晓勇
2012-01-11
打赏
举报
回复
create nonclustered index 索引名 on 表名(字段名,字段名)
=========================================================================================
欢迎访问我的博客
如需交流还可以给我留言
web55
2012-01-11
打赏
举报
回复
[Quote=引用 5 楼 stublue 的回复:]
在随机编码这列加索引,让查找是否已存在时走索引,就很快了!
[/Quote]
能详细点吗?怎么加索引???
例如:select * from 表 where 随机码 LIKE 新生成的随机码
Leon_He2014
2012-01-11
打赏
举报
回复
在随机编码这列加索引,让查找是否已存在时走索引,就很快了!
web55
2012-01-11
打赏
举报
回复
因为这随机码是有指定的,多少位又不能包含哪几个字符,所以当初就没用newid()
现在数据量上百万条了,就出现了每次添加新记录都会很慢,甚至没反映。
大家能不能再帮帮看有什么方法让它快起来???
勿勿
2012-01-11
打赏
举报
回复
newid()?
百年树人
2012-01-11
打赏
举报
回复
随机编码直接使用 NEWID() ?
如果只是一个随机码,就没必要在程序中生成
叶子
2012-01-11
打赏
举报
回复
随机编码?用newid() 不行吗?
Oracle数据库 大事务的数据更改对数据库内部的影响
当用户执行一条SQL对数据库进行更改操作的时候,我们知道数据是从磁盘读取到内存中进行更改操作的, 那么当这个SQL执行时间很长,而且修改
数据量
非常大,由于内存容量大小的原因,可能在事务没有commit 提交的情况...
mysql进行大
数据量
查询,速度慢及解决方式
自述 在项目开发中我们经常会使用左连接进行查询,可能库
表
中的
数据量
并不大,所以在查询时感觉不到,如果
表
中的数据达到了十万条乃至
百万条
,并且查询的时候列的数据重复量也较大,这个时候进行左连接查询,时间可能达到死亡时间(即前端请求超时时间);这个时候造成的原因可能有: 1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) 2、项目的吞吐量达不到,形成了瓶颈效应 3、查询出的
数据量
过...
postgreSQL单
表
数据量
上千万分页查询缓慢的优化方案
postgreSQL单
表
数据量
上千万分页查询缓慢的优化方案
MySQL 百万级
数据量
分页查询方法及其优化
来源:http://sina.lt/gauW 方法 1: 直接使用数据库提供的 SQL 语句 语句样式: MySQL 中, 可用如下方法: SELECT * FROM
表
名称 LIMIT M,N 适应场景: 适用于
数据量
较少的情况 (元组百 / 千级) 原因 / 缺点: 全
表
扫描, 速度会
很慢
且 有的数据库结果集返回不稳定 (如某次返回 1,2,3, 另外的一次返回 2,1,3). Limit 限制的是从结果集的 M 位置处取出 N 条输出, 其余抛弃. 方法 2: 建立主键或唯一索引.
经验:MySQL 百万级
数据量
分页查询如何优化?
方法1: 直接使用数据库提供的SQL语句 语句样式:MySQL中,可用如下方法: SELECT*FROM
表
名称LIMITM,N 适应场景:适用于
数据量
较少的情况(元组百/千级) 原因/缺点:全
表
扫描,速度会
很慢
且 有的数据库结果集返回不稳定(如某次返回1,2,3,另外的一次返回2,1,3). Limit限制的是从结果集的M位置处取出N条输出,其余抛弃. 方法2: 建...
MS-SQL Server
34,590
社区成员
254,589
社区内容
发帖
与我相关
我的任务
MS-SQL Server
MS-SQL Server相关内容讨论专区
复制链接
扫一扫
分享
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章