1. Moteur de base de données (Storage Engines)
Choix et tuning des moteurs de stockage dans MariaDB selon les cas d’usage : InnoDB, Aria, MyISAM, TokuDB, RocksDB, Spider, etc.
Objectif: 🎯 Objectif du composant
Adapter le moteur de stockage au profil de données et aux besoins métier pour maximiser performance, durabilité, scalabilité ou spécialisation.
Paramètres: ⚙️ Paramètres concernés
innodb_buffer_pool_size Cache mémoire InnoDB innodb_file_per_table Isolation des fichiers aria_pagecache_buffer_size Cache Aria myisam_sort_buffer_size Tri index MyISAM tokudb_cache_size Cache TokuDB rocksdb_block_cache_size Cache RocksDB default_storage_engine Moteur par défaut
Bonnes pratiques: ✅ Bonnes pratiques
- InnoDB par défaut (ACID, crash-safe) - Aria pour les tables temporaires - MyISAM uniquement en lecture seule - Activer innodb_file_per_table - Adapter chaque buffer à son moteur
Pièges à éviter: ⚠️ Pièges à éviter
- MyISAM sans crash recovery → pertes - Buffers trop faibles → accès disque fréquents - Mauvais moteur par défaut → incohérence - Confusion entre Aria et MyISAM
Recommandations: 👤 Recommandations par profil
OLTP : InnoDB + buffer_pool_size = 70% RAM Analytics : MyISAM si readonly, sinon InnoDB Temp Tables : Aria Sharding : Spider + InnoDB ou S3
Exemples: 🧪 Exemples de réglage
SET default_storage_engine = 'InnoDB'; SET GLOBAL innodb_buffer_pool_size = 8G; SET GLOBAL aria_pagecache_buffer_size = 256M;
Commandes utiles: 🛠️ Commandes utiles
SHOW ENGINES; SHOW VARIABLES LIKE '%engine%'; SHOW ENGINE INNODB STATUS;
Références: 🔗 Références officielles
- https://mariadb.com/kb/en/storage-engines/ - https://mariadb.com/kb/en/innodb/ - https://mariadb.com/kb/en/spider-storage-engine/
