Query, tabelle e viste, oh cielo

Migliorare le prestazioni delle query in PostgreSQL

Amy McCarty

Instructor

Query

 

SELECT *
FROM ...
  • Tabella
    • Tabella di base
    • Tabella temporanea
  • Vista
    • Vista
    • Vista materializzata
Migliorare le prestazioni delle query in PostgreSQL

Tabella di base

 

Descrive archiviazione organizzata
Contiene dati
Caricata processo ETL (extract, transform, load)
Fonte HR, CRM, raccolta sondaggi, ecc.
Migliorare le prestazioni delle query in PostgreSQL

Tabella temporanea

 

Descrive archiviazione organizzata (righe e colonne)
Contiene dati
Caricata query (transitoria)
Fonte tabelle di base esistenti

 

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

SELECT * FROM my_temptable
Migliorare le prestazioni delle query in PostgreSQL

Vista standard

 

Descrive query salvata
Contiene istruzioni / definizione della vista
Caricata mai
Fonte tabelle di base esistenti

 

Utilità della vista

  • Unisci tabelle spesso collegate
  • Colonne calcolate
    • Metriche di sintesi
  • Mostra parte dei dati di una tabella
    • Mostra i dipendenti ma nascondi gli stipendi
Migliorare le prestazioni delle query in PostgreSQL

Vista materializzata

 

Descrive query salvata vista
Contiene dati tabella
Caricata processo di refresh tabella
Fonte tabelle di base esistenti vista

Utilità della vista materializzata

  • Come una vista
    • Più veloce
Migliorare le prestazioni delle query in PostgreSQL

Riepilogo riferimenti nella clausola FROM

Cosa Perché
Tabella archiviazione di base
Tabella temp accelera query su tabella grande
Vista logica complessa o campi calcolati
Vista materializzata logica complessa che rallenta le prestazioni
Migliorare le prestazioni delle query in PostgreSQL

Information schema

  • Fornisce metadati sul database
  • Presente in molti database
    • PostgreSQL, SQL Server, MySQL

 

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

 

 

 

  • BASE TABLE : tabella di base
  • LOCAL TEMPORARY : tabella temporanea
  • VIEW : vista o vista materializzata
Migliorare le prestazioni delle query in PostgreSQL

Passiamo alla pratica!

Migliorare le prestazioni delle query in PostgreSQL

Preparing Video For Download...