Bar*_*nix 12 python database sql-server django postgresql
我需要aggregate在我的django应用程序中使用一些经常更改的数据,如果我动态进行计算,可能会发生一些性能问题。因此,我需要将aggregate结果保存在表中,并在数据更改时更新它们。因为我使用的django一些选项可能存在,有些可能不存在。例如,我可以使用django signals一个表格,当post_save发出信号时,它会更新结果。另一个选项是materialized viewsinpostgresql或indexed viewsin MSSQL Server,我不知道如何使用 indjango或是否django支持它们。这样做的最佳方法django是提高结果的性能和准确性。
Ale*_*eem 13
您可以在 postgres 中使用物化视图。这很简单。
CREATE MATERIALIZED VIEW
my_view as select * from my_table;创建一个具有两个选项的模型,managed=false并db_name=my_view在模型中Meta像这样
MyModel(models.Model):
class Meta:
managed = False
db_table='my_view'
只需使用 ORM 的力量并将 MyModel 视为常规模型。例如MyModel.objects.count()
| 归档时间: |
|
| 查看次数: |
5668 次 |
| 最近记录: |