我有一个像这样的django cassandra模型:
class Milad(DjangoCassandraModel):
name = columns.Text(primary_key=True)
bulkid = columns.BigInt(primary_key=True)
f1 = columns.UUID()
f2 = columns.UUID()
f3 = columns.UUID()
f4 = columns.UUID()
f5 = columns.UUID()
f6 = columns.UUID()
f7 = columns.UUID()
f8 = columns.UUID()
f9 = columns.UUID()
f10 = columns.UUID()
class Meta:
get_pk_field = "bulkid"
和以下序列化程序:
from rest_framework import serializers
class BulkidSerializer(serializers.Serializer):
bulkid = serializers.IntegerField()
def to_representation(self, instance):
return instance.bulkid
我的表中有220200条记录。
当我用命令打开django shell时
python3 manage.py shell
a执行以下操作我的内存使用率从8.8GB变为10.8GB。
操作:
records = Milad.objects.all().limit(None)
data = BulkidSerializer(records, many=True).data
手术后当我使用
sys.getsizeof(data)
对象的大小约为2MB,但在没有运行任何操作时,我的内存仍为10.8,并且在关闭外壳之前,内存中没有该大小的数据。
有什么问题吗?