PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Django Fixture lädt sehr langsam

In den meisten Fällen können Sie die Dinge erheblich beschleunigen, indem Sie Ihre abgelegten Daten programmgesteuert laden und bulk_create verwenden

Beispiel:

from collections import defaultdict
from django.core import serializers                                                                     

obj_dict = defaultdict(list)
deserialized = serializers.deserialize('json', open('my_fixtures.json'))
# organize by model class
for item in deserialized:
  obj = item.object
  obj_dict[obj.__class__].append(obj) 

for cls, objs in obj_dict.items():
  cls.objects.bulk_create(objs)