DBAtlas · Atlas de operaciones de bases de datos

Actualizar estadísticas (para el optimizador)

Oracle

EXEC DBMS_STATS.GATHER_TABLE_STATS('HR', 'EMPLOYEE');
-- Whole schema: EXEC DBMS_STATS.GATHER_SCHEMA_STATS('HR');

La tarea AUTO suele recopilarlas por la noche; recópilelas manualmente cuando surja un problema. Se recomienda ESTIMATE_PERCENT=>AUTO_SAMPLE_SIZE.

PostgreSQL

ANALYZE customer;
-- Both cleanup and analyze: VACUUM ANALYZE customer;

Autovacuum lo hace automáticamente; un ANALYZE manual tras una carga de datos repentina da planes precisos.

MySQL

ANALYZE TABLE customer;

Adquiere un breve bloqueo de lectura en InnoDB; en tablas grandes ejecútelo en momentos de baja actividad.

SQL Server

UPDATE STATISTICS dbo.customer WITH FULLSCAN;
-- Whole database: EXEC sp_updatestats;

FULLSCAN es el más preciso pero el más costoso; en tablas grandes puede preferirse el muestreo (SAMPLE).

MongoDB

// There are no manual statistics; the planner measures at runtime.
// To clear a stale plan cache:
db.customer.getPlanCache().clear()

En lugar de estimar costos, MongoDB ejecuta pruebas reales (plan racing); no se necesitan estadísticas manuales.

Redis

# Not applicable: Redis has no query optimizer / statistics.

La complejidad de los comandos es fija; el rendimiento depende de la elección de la estructura de datos.

Abrir en DBAtlas →