serialization - Django rest framework db query slow -


  • i have django model 16 decimalfields.
  • i have created listapiview fetch data.
  • with ~5000 instances of model in db, request api view taking more 15 seconds.

model:

class mymodel(models.model):     f1 = models.decimalfield (max_digits=8, decimal_places=3)     f2 = models.decimalfield (max_digits=8, decimal_places=3)     f3 = models.decimalfield (max_digits=8, decimal_places=3)     f4 = models.decimalfield (max_digits=8, decimal_places=3)     f5 = models.decimalfield (max_digits=8, decimal_places=3)     f6 = models.decimalfield (max_digits=8, decimal_places=3)     f7 = models.decimalfield (max_digits=8, decimal_places=3)     f8 = models.decimalfield (max_digits=8, decimal_places=3)     f9 = models.decimalfield (max_digits=8, decimal_places=3)     f10 = models.decimalfield (max_digits=8, decimal_places=3)     f11 = models.decimalfield (max_digits=8, decimal_places=3)     f12 = models.decimalfield (max_digits=8, decimal_places=3)     f13 = models.decimalfield (max_digits=8, decimal_places=3)     f14 = models.decimalfield (max_digits=8, decimal_places=3)     f15 = models.decimalfield (max_digits=8, decimal_places=3)     f16 = models.decimalfield (max_digits=8, decimal_places=3) 

serializer:

class mymodelserializer(serializers.modelserializer):     class meta:         model = mymodel 

i not doing filtering of data. when run query in django shell, runs in few ms. assume serialization problem here. however, using default modelserializer.

all of these fields in same table, don't see how there n+1 issue here.

what can further profile issue? should expect queries slow many model instances?

this because of serializer, can improve performance using model.objects.values() instaed of using serializer, return same data quickly.


Comments