跳到主要内容
知仓学习社ZHICANG

django-materialized-views

Model, migrate, refresh, and verify PostgreSQL materialized views in Django for expensive report or dashboard queries that can tolerate stale data. …

不碰外部(只输出文字)无严重或高危命中hashgraph-online/awesome-codex-plugins

它会碰到什么

扫了多少2 个文本文件,5 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Django Materialized Views

Use this skill when an expensive read query is reused often and can tolerate controlled staleness. Try query-plan, index, and ORM expression improvements first; materialized views add operational state.

Workflow

  1. Confirm fit.
  • The source query is expensive and stable.
  • Consumers can accept stale data.
  • Refresh cadence, ownership, and failure behavior are clear.
  • PostgreSQL is the target database.
  1. Design the materialized view.
  • Define the SQL query and output columns.
  • Add a unique column or unique column set if concurrent refresh is required.
  • Add indexes for consumer queries against the view.
  1. Integrate with Django.
  • Create the view with RunSQL.
  • Represent it as an unmanaged model with managed = False.
  • Keep the unmanaged model fields aligned with the SQL output.
  • Make writes impossible at the application boundary.
  1. Implement refresh.
  • Use REFRESH MATERIALIZED VIEW for simple refreshes.
  • Use REFRESH MATERIALIZED VIEW CONCURRENTLY only when the view is already populated and has a qualifying unique index.
  • Schedule refresh through a management command, task queue, or database job.

See [materialized-view-patterns.md](references/materialized-view-patterns.md) for migration, model, and refresh templates.

Safety Notes

  • A materialized view returns stored data; it is not automatically current.
  • Concurrent refresh avoids locking out reads but has prerequisites and still allows only one refresh at a time per view.
  • Refreshing a large view can be a major database workload. Measure it separately from reads.

Verification

Validate the SQL against source tables, test the unmanaged model reads, prove refresh behavior, and measure read latency before/after.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。