Learning
PostgreSQL

Indexek és teljesítmény

Index alapok, mikor jön létre automatikusan, CREATE INDEX minták és EXPLAIN ANALYZE használat.

Indexek és teljesítmény

Mi az index?

Az index olyan adatszerkezet, ami gyorsítja a keresést (tipikusan B-tree). Index nélkül nagy táblán gyakori a Seq Scan.

Mikor jön létre automatikusan?

  • PRIMARY KEY
  • UNIQUE

Index létrehozása

CREATE INDEX idx_users_email ON users(email);
CREATE INDEX idx_orders_user_id ON orders(user_id);
CREATE INDEX idx_orders_status_created ON orders(status, created_at);

Törlés:

DROP INDEX idx_users_email;

EXPLAIN ANALYZE

EXPLAIN ANALYZE
SELECT * FROM orders WHERE user_id = 1;

Figyeld: Seq Scan vs Index Scan, actual time.

Rövid összefoglaló

  • Indexelj WHERE és JOIN-ban gyakori oszlopokat.
  • Foreign key mezőket érdemes explicit indexelni.
  • EXPLAIN ANALYZE megmutatja, mit csinál a planner.

On this page