Python 3, с модулем Pony ORM, запрос Pony против запроса raw SQL - PullRequest
0 голосов
/ 28 сентября 2019

В Python 3 с модулем Pony ORM я пытаюсь прочитать все строки таблицы и что-то сделать с данными в каждой из них.Я пробовал со стандартным запросом Pony, который работает, но он медленнее, чем доступ к БД через необработанный SQL-запрос.Почему?Как я могу использовать запрос Pony и получить ту же скорость?

Я использую Pony ORM с SQLite для файла, с одной таблицей из примерно 50 000 строк, и каждая строка содержит длинный словарь:

class Tr(db.Entity):
myid=PrimaryKey(str)
longdict=Optional(Json)

почему:

for vj in db.select("* from Tr"):
  v=json.loads(vj.longdict)
  print(v.keys()) 

быстрее, чем:

for v in Tr.select():
  print(v.longdict.keys())
...