社区
数据库
帖子详情
从数据库中获取数据的效率问题
tanwei1002
2009-08-04 01:57:50
如数据库中有100w条数据,我需要将这100w条数据保存在本。
常规方法是 select以后然后对记录集进行处理,来进行保存。
可是如果数据量大的情况下,效率有点慢,我刚刚测试了下,加载20w条数据到本地,需要2000多毫秒。
我想问下,有没有什么办法能提高加载效率?
希望得到高手指点 谢谢了
...全文
110
11
打赏
收藏
从数据库中获取数据的效率问题
如数据库中有100w条数据,我需要将这100w条数据保存在本。 常规方法是 select以后然后对记录集进行处理,来进行保存。 可是如果数据量大的情况下,效率有点慢,我刚刚测试了下,加载20w条数据到本地,需要2000多毫秒。 我想问下,有没有什么办法能提高加载效率? 希望得到高手指点 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tanwei1002
2009-08-05
打赏
举报
回复
[Quote=引用 10 楼 chehw 的回复:]
测试了一下, 从本机sql server数据库读50万条数据(3个字段, <int, varchar(50), varchar(50)>, 平均需781ms,
按本地硬盘读速率: 30M/s, 百兆网络读取速率: 10M/s计算, 扣除写内存的时间, 从网络加载50万条记录约需2s.
假设你读取的字段不太多, 20w条用2000ms的时间应该还有优化的余地.
[/Quote]
肯定不是本机数据库中读取啊,在本机肯定快一些
chehw
2009-08-04
打赏
举报
回复
测试了一下, 从本机sql server数据库读50万条数据(3个字段,<int, varchar(50), varchar(50)>, 平均需781ms,
按本地硬盘读速率: 30M/s, 百兆网络读取速率: 10M/s计算, 扣除写内存的时间, 从网络加载50万条记录约需2s.
假设你读取的字段不太多, 20w条用2000ms的时间应该还有优化的余地.
rendao0563
2009-08-04
打赏
举报
回复
[Quote=引用 7 楼 tanwei1002 的回复:]
引用 4 楼 zaodt 的回复:
加载20w条数据到本地,需要2000多毫秒
2秒钟,很快啊!
我是在局域网内测试的,数据库在局域网的另外一台机器上,加载需要2秒多。
如果是在外网上我没测试过,但是应该比局域网要慢。
因为这程序以后要在外网应用,所以想如果能再提高效率就更好了
呵呵
[/Quote]
在外网应用不会直接让应用程序直接连接数据库。你这种情况一般会增加一个dbserver。
tanwei1002
2009-08-04
打赏
举报
回复
[Quote=引用 5 楼 o_yale_o 的回复:]
如果是Access数据库,加载20w条数据到本地那可要N长时间啊哈
[/Quote]
是SQL SERVER2000,ado连接
不是Access数据库。
tanwei1002
2009-08-04
打赏
举报
回复
[Quote=引用 4 楼 zaodt 的回复:]
加载20w条数据到本地,需要2000多毫秒
2秒钟,很快啊!
[/Quote]
我是在局域网内测试的,数据库在局域网的另外一台机器上,加载需要2秒多。
如果是在外网上我没测试过,但是应该比局域网要慢。
因为这程序以后要在外网应用,所以想如果能再提高效率就更好了
呵呵
tanwei1002
2009-08-04
打赏
举报
回复
[Quote=引用 3 楼 chehw 的回复:]
直接用odbc sdk api(别用MFC)。
尽量减少与数据库的通讯次数,如使用行向绑定,设置行集大小(ROW_ARRAY_SIZE)为10000,一次取1万条数据
[/Quote]
我程序就是用的MFC,如果不用MFC的话那得全部推倒重来了。。。。
o_yale_o
2009-08-04
打赏
举报
回复
如果是Access数据库,加载20w条数据到本地那可要N长时间啊哈
zaodt
2009-08-04
打赏
举报
回复
加载20w条数据到本地,需要2000多毫秒
2秒钟,很快啊!
chehw
2009-08-04
打赏
举报
回复
直接用odbc sdk api(别用MFC)。
尽量减少与数据库的通讯次数,如使用行向绑定,设置行集大小(ROW_ARRAY_SIZE)为10000,一次取1万条数据
rendao0563
2009-08-04
打赏
举报
回复
其实你select底层还是通过socket通信将数据传送过来。数量大的时候传送量自然就大了。
你这种情况。可以试试hash到多个数据库。获取数据的时候再从各个数据库取。
没有结果试验。LZ根据自己情况判断。
jiandiao
2009-08-04
打赏
举报
回复
新手,不会,关注
Oracle
数据库
大事务的数据更改对
数据库
内部的影响
当用户执行一条SQL对
数据库
进行更改操作的时候,我们知道数据是从磁盘读取到内存
中
进行更改操作的, 那么当这个SQL执行时间很长,而且修改数据量非常大,由于内存容量大小的原因,可能在事务没有commit 提交的情况...
python从
数据库
获取全量数据的方法
数据库
:postgresql(1)第一种方法:使用分页查询的方式,不推荐使用特别是在数据量大的时候 首先计算总数据量,然后根据每次查询的大小batch_size计算总共有多少页,再一页一页的去
获取数据
。 由于分页查询类似...
Laravel高
效率
获取随机几条数据
这样我们就需要随机从
数据库
获取数据
。 我们先来看看Laravel自带的随机数据获取方法 一、使用原生SQL从
数据库
获取数据
从Mysql官网可以看到,可以让ORDER BY RAND()和LIMIT一起使用,可以用于从多行结果
中
选取随机的...
SpringBoot笔记 —— 利用redis
数据库
和mysql
数据库
查询
获取数据
在上面的博客里面,我都是通过查询mysql
数据库
来获取相应的数据,但是当要查询的表里面的数据非常多的时候,比如数十万的数据,查询
效率
就会很低,往往要消耗两三秒的时间才能查询到一条数据。 而在学习redis
数据库
...
mysql-从
数据库
中
随机抽取数据的分析总结
mysql-从
数据库
中
随机抽取数据的分析总结 本文章只针对从mysql随机抽取数据进行方法分析,和总结 项目需要通过表名获取随机数据进行数据校验工作,所以有这个随机从
数据库
拉数据的需求; 通过查询资料和网友们的博客...
数据库
4,011
社区成员
39,816
社区内容
发帖
与我相关
我的任务
数据库
VC/MFC 数据库
复制链接
扫一扫
分享
社区描述
VC/MFC 数据库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章