免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2471 | 回复: 7
打印 上一主题 下一主题

有关python操作大表,慢的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-07-14 12:52 |只看该作者 |倒序浏览
import MySQLdb
conn=MySQLdb.connect()
cursor=conn.cursor()
cursor.execute("select * from tables")
因表有将近1KW条记录,执行好慢,而且数据缓冲都放在执行机器上,请问有什么方法可以先取一部份出来。

论坛徽章:
0
2 [报告]
发表于 2008-07-14 13:13 |只看该作者
那就看你SQL语句了,你这样取当然都出来了

论坛徽章:
0
3 [报告]
发表于 2008-07-14 13:36 |只看该作者
这关python什么事,你用其他语言试试,能快的告诉一下!

论坛徽章:
0
4 [报告]
发表于 2008-07-14 13:39 |只看该作者
把表里的数据全取出来?应该用一些分区字段、索引字段在WHERE条件里面,会快的。

论坛徽章:
0
5 [报告]
发表于 2008-07-14 14:12 |只看该作者
呵呵,这跟语言没关系的,你如果把这些数据都select出来,就是正常这样查询也要很久,所以不管用什么读取都很慢。
偶曾经用py读取400w的数据,消耗内存3.7G。。。
还是看你需要干嘛了,只能优化sql来处理,或者改变逻辑了。

论坛徽章:
0
6 [报告]
发表于 2008-07-14 14:55 |只看该作者
可以考虑换个数据库,

论坛徽章:
0
7 [报告]
发表于 2008-07-14 15:10 |只看该作者
这是个策略和算法的问题,与python无关!

论坛徽章:
0
8 [报告]
发表于 2008-07-15 09:10 |只看该作者
多谢各位,问题搞定了,mysql有limit这个关键字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP