在djang中使用物化视图或备选方案

2024-04-28 22:39:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要在我的django应用程序中使用一些经常更改的aggregate数据,如果我动态地进行计算,可能会出现一些性能问题。因此,我需要将aggregate结果保存在一个表中,当数据发生变化时,更新它们。{and可能不存在一些选项。例如,我可以使用django signals和一个表,当post_save信号被发出时,更新结果。另一个选项是postgresql中的materialized views,或者{}中的{},我不知道如何在django中使用,或者{}是否支持它们。在django中,最好的方法是什么来提高性能和结果的准确性。在


Tags: and数据django应用程序信号postgresqlsave选项
1条回答
网友
1楼 · 发布于 2024-04-28 22:39:13

您可以在postgres中使用物化视图。很简单。在

  1. 您必须使用类似CREATE MATERIALIZED VIEW my_view as select * from my_table;的查询创建视图
  2. 创建一个有两个 选项i-managed=false ii-db_name=my_视图在模型Meta-like中 这个班

    MyModel(models.Model): class Meta: managed = False db_table='my_view'

  3. 只需使用ORM的功能并将MyModel视为常规模型。例如。MyModel.objects.count()...

相关问题 更多 >