Interogări, tabele și vizualizări

Îmbunătățirea performanței interogărilor în PostgreSQL

Amy McCarty

Instructor

Interogare

 

SELECT *
FROM ...
  • Tabel
    • Tabel de bază
    • Tabel temporar
  • Vizualizare
    • Vizualizare
    • Vizualizare materializată
Îmbunătățirea performanței interogărilor în PostgreSQL

Tabel de bază

 

Descrie stocare organizată
Conține date
Încărcat proces de extragere, transformare, încărcare (ETL)
Sursă sistem HR, sistem de gestiune clienți, colectare sondaje etc.
Îmbunătățirea performanței interogărilor în PostgreSQL

Tabel temporar

 

Descrie stocare organizată (rânduri și coloane)
Conține date
Încărcat interogare (tranzient)
Sursă tabele de bază existente

 

CREATE TEMP TABLE my_temptable AS 
SELECT * 
FROM survey_monkey_results
WHERE survey_date >= '2019-01-01';

SELECT * FROM my_temptable
Îmbunătățirea performanței interogărilor în PostgreSQL

Vizualizare standard

 

Descrie interogare stocată
Conține instrucțiuni / definiție vizualizare
Încărcat niciodată
Sursă tabele de bază existente

 

Utilitatea vizualizării

  • Combină tabele frecvent unite
  • Coloane calculate
    • Metrici sumare
  • Afișează date parțiale dintr-un tabel
    • Afișează angajați, dar ascunde salariile
Îmbunătățirea performanței interogărilor în PostgreSQL

Vizualizare materializată

 

Descrie interogare stocată vizualizare
Conține date tabel
Încărcat proces de reîmprospătare tabel
Sursă tabele de bază existente vizualizare

Utilitatea vizualizării materializate

  • La fel ca vizualizarea
    • Mai rapidă
Îmbunătățirea performanței interogărilor în PostgreSQL

Rezumat: referințe în clauza FROM

Ce De ce
Tabel stocare de bază
Tabel temporar accelerează interogările pe tabele mari
Vizualizare logică complexă sau câmpuri calculate
Vizualizare materializată logică complexă ce afectează performanța
Îmbunătățirea performanței interogărilor în PostgreSQL

Schema de informații

  • Oferă metadate despre baza de date
  • Disponibil în multe baze de date
    • PostgreSQL, SQL Server, MySQL

 

SELECT table_type 
FROM information_schema.tables 
WHERE table_catalog = 'orders_schema' 
AND table_name = 'customer_table'

 

 

 

  • BASE TABLE : tabel de bază
  • LOCAL TEMPORARY : tabel temporar
  • VIEW : vizualizare sau vizualizare materializată
Îmbunătățirea performanței interogărilor în PostgreSQL

Să exersăm!

Îmbunătățirea performanței interogărilor în PostgreSQL

Preparing Video For Download...