通常我们在Django framework里去取DB数据做处理时,会用values()这个function,然后直接转换成dataframe。假设需要取整个table的数据,简单粗暴的写法如下:
querySet = models.xxx.objects.all().using("db_name").values()
df = pd.DataFrame(list(querySet))
这是一种最方便的写法,但却是最耗memory的。那么我们如何改进这一操作?
首先我们可以做的是去掉不需要的column,只选择有用的column。如果目标table有很多column,而你只需要其中一两个的话,这一缩减可以节省很多的资源消耗。
querySet = models.xxx.objects.all()