请问 django,数据库有 10w 条记录,如何遍历比较好呢?

2015-03-23 00:52:42 +08:00
 9xrtp7r1

用的django,现在数据库有10w+记录,

现在有个脚本,
调用django orm,
需要把里面的记录取出,
遍历 ,二次处理后,存入另外一个表里,
如果直接 XX.objects.all() 我想这样会浪费性能,

请问大家,如何才能更加节省数据库性能的完成这个功能呢

谢谢

3026 次点击
所在节点    问与答
3 条回复
Septembers
2015-03-23 02:22:53 +08:00
直接执行SQL
AntiGameZ
2015-03-23 03:47:30 +08:00
你要读 10w 数据,不管怎么折腾,这 10w 数据都得从数据库里拿出来,再倒腾回数据库,所以 XX.objects.all() 不存在“浪费性能”一说。

那么,你是不想因为处理 10w 条数据造成前台长时间等待呢,还是什么其他的原因想让你改进程序?你的程序目前 run 一次这个 10w 条记录的处理过程要多久?
9xrtp7r1
2015-03-24 10:32:10 +08:00
@Septembers
@AntiGameZ 谢谢 ,我就是要把数据取出来,存到另一个数据库,我目前打算 limit的方式 一点一点的取

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/178705

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX