🗂️ 5) Indexing & partitionnement
Objectif : optimiser la structure physique (index & partitions) sans créer de dette : choisir le bon type (B-tree / bitmap), concevoir des index composites, tirer parti du partition pruning, et maîtriser la maintenance (rebuild, stats, bloat).
Types d’index : B-tree vs Bitmap
Cas d’usage, cardinalité, DML, concurrence, data warehouse vs OLTP.
Index composites : ordre & sélectivité
Égalités d’abord, range ensuite, predicates sargables, index-only, INCLUDE-like.
Partitionnement : stratégies & design
Range/List/Hash, composite partitioning, clés, data lifecycle, pruning, local/global indexes.
Partition pruning : le vrai “gain”
Predicate design, partition key, local indexes, pruning dynamique vs statique.
Volumétrie & maintenance
Rebuild vs coalesce, fragmentation, stats partitions, online ops, purge/archivage.
Checklist “schema tuning” (safe)
Valider usage réel, mesurer avant/après, éviter sur-indexation, gouvernance change & rollback.
Diagrammes (Mermaid-ready)
Décision index, design partitions, et chaîne pruning → perf.
Commandes & vues (index/partitions)
DBA_INDEXES, DBA_IND_STATISTICS, DBA_TAB_PARTITIONS, segment sizes, usage.
Runbook (template) : index / partition change
Process standard : hypothèse → test → déploiement → monitoring → rollback.
