Pular para o conteúdo
← Voltar ao overview do Cosmos DB
Killer #4

Visual Index Policy Editor

Cosmos indexa todos os paths por default. Cada write paga 1 RU por path indexado. DBA precisa editar JSON gigante com inclusion/exclusion paths e um typo quebra o deployment. O editor visual mostra schema sampleado em árvore, toggle por path, calcula impacto em RU/write ao vivo e gera o JSON paste-ready.

Onde ele fica no app: Tools → Cosmos DB → Index Policy Editor

O que ele faz

  • Schema sampling de 100 docs para descobrir paths automaticamente.
  • Tree view de paths com toggle Include/Exclude por path.
  • Estimativa de custo: "Default 47 RU/write → após mudanças 12 RU/write — 74% mais barato".
  • JSON preview gerado automaticamente.
  • Draft persistido por (connection, ns) — pode iterar sem perder.

Passo a passo

  1. 1

    Sample schema

    Coloque o namespace (ex: `app.products`). Clique "Sample schema". Em ~3s mostra a árvore de paths descobertos.

  2. 2

    Toggle paths

    Clique no botão Include / Excluded ao lado de cada path. Live update do "After your changes: N RU per write" no topo.

  3. 3

    Save draft

    Botão "Save draft" persiste localmente. JSON preview embaixo já pronto para copy.

  4. 4

    Aplique no Cosmos

    Copie o JSON gerado, abra Azure portal → Containers → Settings → Indexing policy → cole → save. (Ou rode via az-cli `az cosmosdb sql container update`.)

  5. 5

    (Opcional) Valide via WHAT-IF

    Antes de aplicar em prod, rode WHAT-IF com `add-index` ou `drop-index` correspondente para confirmar o ganho.

Casos de uso reais

Path com BLOB grande indexado

Collection tinha campo `payload` (JSON blob 5-20kb) indexado por default. Excluído via editor. Writes caíram de 38 RU para 9 RU. Economia mensal R$ 1.8k.

Wildcard paths inúteis

Time tinha `/metadata/*` indexado mas só lia 2 sub-paths. Excluir wildcard + incluir só os 2 paths usados = -65% RU/write.