sql >> Databáze >  >> RDS >> Mysql

Jak implementovat Materialized View s MySQL?

Provozuji projekt s názvem Flexviews (http://github.com/greenlion/swanhart-tools ), který do MySQL přidává postupně obnovitelné materializované pohledy (neboli rychlé obnovení), a to i pro pohledy, které používají spojení a agregaci. Na tomto projektu pracuji tři roky. Zahrnuje nástroj pro sběr dat změn pro čtení protokolů databáze. Nejsou použity žádné spouštěče.

Zahrnuje dvě metody obnovy. První je podobná vaší metodě, s tím rozdílem, že se vytvoří nová verze a poté se použije RENAME TABLE k výměně nové za starou. Pohled není v žádném okamžiku nedostupný pro dotazování, ale 2x je místo krátkodobě využito.

Druhý způsob je opravdový „fast refresh“, má dokonce podporu pro agregaci a spojení.

Je o tom příspěvek na blogu:http://www.mysqlperformanceblog.com/2011/04/04/flexviews-part-3-improving-query-performance-using-materialized-views/

Flexviews je výrazně pokročilejší než příklad FromDual, na který odkazuje astander.



  1. Mysql vyvolá výjimku na Regex

  2. Dotaz Oracle se nezkompiluje

  3. Jak změnit výchozí profil pošty databáze pro uživatele v SQL Server (T-SQL)

  4. Funkce ATAN() v Oracle