提升 PostgreSQL 查询性能
Amy McCarty
Instructor
面向行存储
面向列存储
| id | name | species | age | habitat | received |
|---|---|---|---|---|---|
| 01 | Bob | panda | 2 | Asia | 2018 |
| 02 | Sunny | zebra | 3 | Africa | 2018 |
| 03 | Beco | zebra | 10 | Africa | 2017 |
| 04 | Coco | koala | 5 | Australia | 2016 |
面向行存储
| id | name | species | age | habitat | received |
|---|---|---|---|---|---|
| 01 | Bob | panda | 2 | Asia | 2018 |
面向列存储

减少行数
WHERE 过滤INNER JOINDISTINCTLIMIT分区
索引
使用分区与索引


SELECT species
FROM zoo_animals
WHERE habitat = 'Africa'
是什么
为什么
用于何处
查询规划器

EXPLAIN
SELECT species
FROM zoo_animals
WHERE habitat = 'Africa'
查询计划
Seq Scan on zoo_animals (cost=0.00..
17.70 rows=2 width=182)
Filter: (state_code = 15)
提升 PostgreSQL 查询性能