Mettre à jour les statistiques (pour l'optimiseur)
Oracle
EXEC DBMS_STATS.GATHER_TABLE_STATS('HR', 'EMPLOYEE');
-- Whole schema: EXEC DBMS_STATS.GATHER_SCHEMA_STATS('HR');La tâche AUTO les collecte généralement la nuit ; collectez-les manuellement en cas de problème. ESTIMATE_PERCENT=>AUTO_SAMPLE_SIZE est recommandé.
PostgreSQL
ANALYZE customer;
-- Both cleanup and analyze: VACUUM ANALYZE customer;Autovacuum le fait automatiquement ; un ANALYZE manuel après un chargement massif de données donne des plans exacts.
MySQL
ANALYZE TABLE customer;Pose un bref verrou en lecture sur InnoDB ; sur les grandes tables, exécutez-le en période de faible activité.
SQL Server
UPDATE STATISTICS dbo.customer WITH FULLSCAN;
-- Whole database: EXEC sp_updatestats;FULLSCAN est le plus précis mais le plus coûteux ; sur les grandes tables, l'échantillonnage (SAMPLE) peut être préférable.
MongoDB
// There are no manual statistics; the planner measures at runtime.
// To clear a stale plan cache:
db.customer.getPlanCache().clear()Au lieu d'une estimation de coût, MongoDB effectue des essais réels (plan racing) ; les statistiques manuelles ne sont pas nécessaires.
Redis
# Not applicable: Redis has no query optimizer / statistics.La complexité des commandes est fixe ; les performances dépendent du choix de la structure de données.