Я хотел бы спросить, в чем разница между
for row in session.Query(Model1):
pass
и
for row in session.Query(Model1).all():
pass
является первым, каким-то образом, итератором, бомбардирующим вашу БД единичными запросами, и последние "нетерпеливые" задают все это как список (например, range (x) vs xrange (x))?