PostgreSQLPytanie 01 z 11
B-tree, GIN i BRIN — kiedy który indeks?
Najpierw odpowiedz na głos lub w myślach, potem porównaj.
Odpowiedź
B-tree jest dobrym punktem startowym dla równości, zakresów i sortowania. GIN pomaga wyszukiwać elementy wewnątrz wartości, np. tablic lub JSONB. BRIN przechowuje podsumowania zakresów bloków i pasuje do dużych danych skorelowanych z kolejnością fizyczną.
SQL
CREATE INDEX orders_customer_date_idx
ON orders (customer_id, created_at DESC);Praktyka: przykład pasuje do historii zamówień wybranego klienta. Dobór kolumn wynika z filtrów i sortowania.
Pułapka: indeks zwiększa koszt zapisu i zajmuje miejsce. Nie każdy operator użyje każdego typu indeksu. Decyzję sprawdzam planem, zamiast indeksować wszystkie kolumny.
Jak poszło? Bądź szczery — „Jeszcze nie” dodaje pytanie do powtórki.