Покращення продуктивності запитів у PostgreSQL
Amy McCarty
Instructor
SELECT *
FROM ...
| Describe | організоване сховище |
| Contains | дані |
| Loaded | процес extract, transform, load (ETL) |
| Source | програма HR, система керування клієнтами, опитування тощо |
| Describe | організоване сховище (рядки й стовпці) |
| Contains | дані |
| Loaded | запит (нетривале) |
| Source | наявні базові таблиці |
CREATE TEMP TABLE my_temptable AS
SELECT *
FROM survey_monkey_results
WHERE survey_date >= '2019-01-01';
SELECT * FROM my_temptable
| Describe | збережений запит |
| Contains | інструкції / визначення подання |
| Loaded | ніколи |
| Source | наявні базові таблиці |
Корисність подань
| Describe | збережений запит | view |
| Contains | дані | table |
| Loaded | процес оновлення | table |
| Source | наявні базові таблиці | view |
Корисність матеріалізованих подань
| Що | Навіщо |
|---|---|
| Table | базове сховище |
| Temp table | пришвидшує запит на великій таблиці |
| View | складна логіка або обчислювані поля |
| Materialized view | складна логіка, що сповільнює виконання |
SELECT table_type
FROM information_schema.tables
WHERE table_catalog = 'orders_schema'
AND table_name = 'customer_table'
Покращення продуктивності запитів у PostgreSQL