B-tree Index

PostgreSQL 🟡 Mid

Définition

Type d'index par défaut dans PostgreSQL. Structure en arbre équilibre optimisée pour les comparaisons d'égalité et de plage (<, >, BETWEEN, ORDER BY). PostgreSQL 18 (25 septembre 2025) ajoute le Skip Scan : un index multicolonne peut désormais être utilise même sans condition sur ses premières colonnes, la ou seul un scan complet était possible auparavant.

Analogie

Un dictionnaire avec des onglets alphabétiques : tu trouves n'importe quel mot en quelques sauts.

Exemple de code

CREATE INDEX idx_users_email
  ON users (email);
-- Equivalent a :
CREATE INDEX idx_users_email
  ON users USING btree (email);

Cas d'usage

Optimiser les requêtes de recherche, tri et filtrage sur des colonnes fréquemment interrogées.

#sgbd#interview#database#postgresql

En entretien

  1. Explique-moi le B-tree Index.

    C'est le type d'index par défaut dans PostgreSQL, une structure en arbre équilibré optimisée pour les comparaisons d'égalité et de plage comme <, >, BETWEEN ou ORDER BY. On l'utilise pour optimiser les requêtes de recherche, tri et filtrage sur des colonnes fréquemment interrogées.

  2. Qu'apporte le Skip Scan de PostgreSQL 18 ?

    Un index multicolonne peut désormais être utilisé même sans condition sur ses premières colonnes, là où seul un scan complet était possible auparavant. C'est un gain notable sur des requêtes qui ne filtrent que sur une colonne secondaire de l'index.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre