Project Oxygen & Ideo-LabIDEO LAB Dashboard 2026

5. Sort Buffer & Join Buffer

Buffers temporaires utilisés pour les opérations de tri et de jointures sans index. Alloués par thread, leur taille impacte fortement la mémoire.

Retour à Mariadb
Objectif: 🎯 Objectif du composant
Améliorer les performances de requêtes nécessitant des tris ou des jointures non optimisées, tout en maîtrisant l’impact mémoire.
Paramètres: ⚙️ Paramètres concernés
sort_buffer_size Utilisé pour les tris (ORDER BY) join_buffer_size Utilisé pour les joins sans index
Bonnes pratiques: ✅ Bonnes pratiques
- Garder ces buffers modestes (1–2MB) - Ajouter des index si possible - Monitorer Sort_merge_passes - Utiliser EXPLAIN pour comprendre
Pièges à éviter: ⚠️ Pièges à éviter
- Buffers trop larges = explosion mémoire - Croire que cela remplace un index - Ne pas analyser les plans de requête - Ignorer les threads simultanés
Recommandations: 👤 Recommandations par profil
OLTP : sort 512K, join 1MB BI : sort 2–4MB, join 2–8MB Test : max 8MB mais monitoré
Exemples: 🧪 Exemples de réglage
SET GLOBAL sort_buffer_size = 1048576; SET GLOBAL join_buffer_size = 2097152;
Commandes utiles: 🛠️ Commandes utiles
SHOW GLOBAL VARIABLES LIKE 'join_buffer_size'; SHOW STATUS LIKE 'Sort_merge_passes'; EXPLAIN SELECT * FROM ...;
Références: 🔗 Références officielles
- https://mariadb.com/kb/en/sort_buffer_size/ - https://mariadb.com/kb/en/join_buffer_size/