Performance Advisor
Três ferramentas live-data alimentadas pela sua conexão ativa: um forecast linear de capacity, um ranking de hotness de índice, e um sugestor de tamanho de connection pool. Sem simulação — tudo lê seu workload real.
O que é
Uma tab de workspace com três tabs: Capacity (forecastLinear sobre um histórico de métrica), Index Hotness (rankIndexHotness usando IndexStats), e Pool Tuner (suggestPoolSize a partir da concorrência atual de operações). Cada tab tem um botão "Fetch from active connection" que puxa os dados ao vivo; você também pode colar uma JSON sample para testar sem conexão ao vivo.
Quando usar
Rode Capacity antes de um release grande para prever quando storage / RU / IOPS vai saturar. Rode Index Hotness uma vez por trimestre para encontrar índices que ninguém tocou em 90 dias. Rode Pool Tuner quando logs da aplicação mostram wait de conexão MongoDB — ele te diz o tamanho ótimo de pool para o workload que você realmente tem.
Como abrir
- No app desktop do NoSqlStudio, abra o menu Tools → Performance Advisor, ou pressione Ctrl+Alt+Shift+F.
- Uma tab de workspace abre com três tabs no topo: Capacity / Hotness / Pool.
- Cada tab tem um botão "Fetch from active connection". Clique para puxar dados ao vivo. A saída renderiza como stats cards e (quando aplicável) um chart.
Cada pane
- Capacity — puxa 14 dias de histórico de métrica (ou qualquer range que você definir), roda forecastLinear, e projeta quando a métrica cruza um threshold configurável. Útil para crescimento de storage, saturação RU/sec, limites de IOPS.
- Index Hotness — puxa $indexStats de toda collection no database ativo, ranqueia índices por accesses-per-day, e flagga índices tocados 0 vezes na janela de lookback. Candidatos a drop aparecem em vermelho.
- Pool Tuner — puxa concorrência atual de operações, aplica uma sugestão estilo Little's-Law baseada em wait times observados, e produz o poolSize recomendado para sua config de driver.
Limitações (v1)
- Forecast é linear — não modela seasonality ou regimes piecewise. Para workloads sazonais (ex.: ciclos dia/noite) interprete o slope como ceiling de pior caso, não projeção exata.
- Index Hotness lê $indexStats, que reseta em todo restart de mongod. Se seu cluster reiniciou ontem, a janela de 90 dias está vazia — espere stats acumular ou estenda a janela.
- Pool Tuner assume que seu driver é o gargalo (não server CPU / eleição de replica). Num cluster estressado a recomendação pode oscilar.