Мне нужно перебрать большую коллекцию (3 * 10^6 элементов) в Django, чтобы выполнить какой-то анализ, который не может быть выполнен с использованием одного оператора SQL.Итерация над большой коллекцией в django - проблема с кешем
- Можно ли отключить сбор кэширования в django? (Кэширование всех данных не должно быть приемлемым, данные имеют около 0,5 ГБ)
- Возможно ли сделать сборку django fetch в кусках? Кажется, он пытается предварительно собрать всю коллекцию в память, а затем перебрать ее. Я думаю, что наблюдение за скорость исполнения:
iter(Coll.objects.all()).next()
- это занимает навсегдаiter(Coll.objects.all()[:10000]).next()
- это занимает меньше, чем второй
Но это не швы, чтобы работать. Но это может быть ошибка в джанго. – 2010-12-02 09:58:26