读书人

■■■■■讨论怎么 实现比较快速的读

发布时间: 2012-03-22 17:43:57 作者: rapoo

■■■■■讨论如何 实现比较快速的读取5000万条数据■■■■■
大家推荐各种方法什么好的办法 实现比较快速的读取5000万条数据

用户需求大概是:ms sql数据有5000万篇文章 想得到的结果就是读出他们 然后每篇写成一个txt文件。


假设写txt文件需要的时间忽略不考虑 那么如何加快整个过程的速度节省时间呢 谢谢各位的看法




[解决办法]
数据库服务器:
1、加大内存,升级 CPU 和 网络设备,采用高速硬盘
2、优化 MYSQL 设置

程序执行:
使用数据库连接池提高读取性能。
[解决办法]
忘了一点,楼主最好先考虑怎么放这 50000000 个文本文件。
[解决办法]
硬件方面的就没社么必要说了
~~5000万文章分成几组~~一个线程去读一个组(比如前1W条 查询)来生成一个文件~~
前提是文章间没有每有嵌套的查询关系,各组间独立
[解决办法]
mark!
[解决办法]
5000W太大了,不可能一次搞掂的,必须分组,分成若干个小部分,每部分用一个线程完成,逐渐细分。批处理数据超过 500条就有明显延迟,5000W,数据库连接早就超时了
[解决办法]
分批读取,并标记读的位置,一旦发生异常,就在异常处重新读取
[解决办法]
在数据库上花点时间吧,比如可以把表进行分区之类的
[解决办法]
或是才去索引文件的方式去进行处理
[解决办法]
如果序号是连续的,可以每次读100-1000条,这样效率估计会高些
[解决办法]
写存储过程会提高一点点,呵呵.我也不会,学习
[解决办法]
考虑以下可不可以预处理一下
[解决办法]
文章是怎么放在数据库里的,格式是什么?
5000w是一个表里的总数据还是要读出来的
[解决办法]
5000w条数据不可能完全存储文章内容吧
一般都是存储文章的路径和名称等信息在数据库啊
lz可以考虑用多线程

[解决办法]
5000w条还是文章???
疯掉了。。。
-------------
写过程。分批处理,1000一批。
不过我觉得瓶颈应该不在数据库。
应该在你写文件上面。所以我觉得读库速度慢并不影响你什么

读书人网 >J2SE开发

热点推荐