การเพิ่มประสิทธิภาพคิวรีใน PostgreSQL
Amy McCarty
Instructor
SELECT *
FROM ...
| คำอธิบาย | พื้นที่จัดเก็บข้อมูลแบบมีโครงสร้าง |
| บรรจุ | ข้อมูล |
| โหลดข้อมูล | กระบวนการ extract, transform, load (ETL) |
| แหล่งที่มา | ระบบ HR, ระบบจัดการลูกค้า, การเก็บแบบสำรวจ ฯลฯ |
| คำอธิบาย | พื้นที่จัดเก็บแบบมีโครงสร้าง (แถวและคอลัมน์) |
| บรรจุ | ข้อมูล |
| โหลดข้อมูล | คิวรี (ชั่วคราว) |
| แหล่งที่มา | base table ที่มีอยู่ |
CREATE TEMP TABLE my_temptable AS
SELECT *
FROM survey_monkey_results
WHERE survey_date >= '2019-01-01';
SELECT * FROM my_temptable
| คำอธิบาย | คิวรีที่จัดเก็บไว้ |
| บรรจุ | คำสั่ง / view definition |
| โหลดข้อมูล | ไม่มีการโหลด |
| แหล่งที่มา | base table ที่มีอยู่ |
ประโยชน์ของ view
| คำอธิบาย | คิวรีที่จัดเก็บไว้ | view |
| บรรจุ | ข้อมูล | table |
| โหลดข้อมูล | กระบวนการ refresh | table |
| แหล่งที่มา | base table ที่มีอยู่ | view |
ประโยชน์ของ materialized 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