DB Compare
Compare schemas e índices entre duas conexões. Diff visual com highlighting de breaking-change. Conecte como gate de PR para que drift estrutural entre dev / staging / produção seja pego antes do deploy.
O que é
Uma tab de workspace que compara schema + índices de duas conexões side by side. O engine lê listas de collection, sample documents (para inferência de schema), e `db.collection.getIndexes()` de cada lado, depois renderiza um diff estrutural com marcadores de breaking-change (ex.: fields removidos, narrowing de tipo, índices droppados).
Quando usar
Rode antes de um release para confirmar que dev / staging combina com produção. Rode como gate de PR para que drift estrutural não consiga landar sem review. Rode durante incident response para verificar que um cluster mal-comportado não perdeu um índice.
Como abrir
- No app desktop do NoSqlStudio, abra o menu Tools → Migrate and Diff → Compare DBs, ou pressione Ctrl+Alt+Shift+C.
- Um workspace abre com pickers source / target e um botão Run Compare.
- Escolha duas conexões + os databases para comparar, depois clique em Run Compare.
Lendo o diff
- Coluna Schema — fields presentes em um lado e não no outro, mismatches de tipo, e mudanças de required-field.
- Coluna Índices — índices presentes em um lado, índices com specs diferentes, índices que deveriam ser unique mas não são.
- Breaking changes — items que o engine flagga como prováveis de causar runtime failures são destacados em vermelho e listados primeiro.
- Export — o engine exporta o diff como JSON ou CSV para anexar a um ticket. O workspace Schema Diff consome o mesmo formato de diff para emitir um script de migração.
Limitações (v1)
- Inferência de schema é sample-based — mesmo caveat que Schema Diff. Defina o sample size para cobrir documents representativos.
- Comparar collections enormes em sample size completo é lento. O wizard tem default 1000-doc sample; aumente só quando você especificamente precisar de cobertura completa.
- Compare só lê — não modifica nenhum dos clusters. Use Schema Diff ou DB Copy para de fato reconciliar.