Performance Advisor
Tres herramientas live-data alimentadas por su conexión activa: un forecast lineal de capacity, un ranking de hotness de índice, y un sugestor de tamaño de connection pool. Sin simulación — todo lee su workload real.
Qué es
Un tab de workspace con tres tabs: Capacity (forecastLinear sobre un histórico de métrica), Index Hotness (rankIndexHotness usando IndexStats), y Pool Tuner (suggestPoolSize a partir de la concurrencia actual de operaciones). Cada tab tiene un botón "Fetch from active connection" que jala los datos en vivo; también puede pegar una JSON sample para probar sin conexión en vivo.
Cuándo usar
Corra Capacity antes de un release grande para prever cuándo storage / RU / IOPS va a saturar. Corra Index Hotness una vez por trimestre para encontrar índices que nadie tocó en 90 días. Corra Pool Tuner cuando logs de la aplicación muestran wait de conexión MongoDB — le dice el tamaño óptimo de pool para el workload que realmente tiene.
Cómo abrirlo
- En el app desktop del NoSqlStudio, abra el menú Tools → Performance Advisor, o presione Ctrl+Alt+Shift+F.
- Un tab de workspace abre con tres tabs arriba: Capacity / Hotness / Pool.
- Cada tab tiene un botón "Fetch from active connection". Haga clic para jalar datos en vivo. La salida renderiza como stats cards y (cuando aplicable) un chart.
Cada pane
- Capacity — jala 14 días de histórico de métrica (o cualquier rango que defina), corre forecastLinear, y proyecta cuándo la métrica cruza un threshold configurable. Útil para crecimiento de storage, saturación RU/sec, límites de IOPS.
- Index Hotness — jala $indexStats de cada collection en el database activo, ranquea índices por accesses-per-day, y flagga índices tocados 0 veces en la ventana de lookback. Candidatos a drop aparecen en rojo.
- Pool Tuner — jala concurrencia actual de operaciones, aplica una sugerencia estilo Little's-Law basada en wait times observados, y produce el poolSize recomendado para su config de driver.
Limitaciones (v1)
- Forecast es lineal — no modela seasonality o regímenes piecewise. Para workloads estacionales (ej.: ciclos día/noche) interprete el slope como ceiling del peor caso, no proyección exacta.
- Index Hotness lee $indexStats, que reset en cada restart de mongod. Si su cluster reinició ayer, la ventana de 90 días está vacía — espere a que stats acumulen o extienda la ventana.
- Pool Tuner asume que su driver es el cuello de botella (no server CPU / elección de replica). En un cluster estresado la recomendación puede oscilar.