Visual Index Policy Editor
Cosmos डिफ़ॉल्ट रूप से सभी paths को index करता है। प्रत्येक write प्रति indexed path 1 RU भुगतान करता है। DBA को inclusion/exclusion paths के साथ विशाल JSON edit करना पड़ता है और एक typo deployment को तोड़ देता है। Visual editor sampled schema को tree में दिखाता है, प्रति path toggle, live RU/write impact की गणना करता है, और paste-ready JSON उत्पन्न करता है।
ऐप में यह कहाँ रहता है: Tools → Cosmos DB → Index Policy Editor
यह क्या करता है
- Paths को स्वचालित रूप से खोजने के लिए 100 docs का Schema sampling।
- प्रति path Include/Exclude toggle के साथ paths की Tree view।
- Cost estimation: "Default 47 RU/write → परिवर्तनों के बाद 12 RU/write — 74% सस्ता"।
- स्वचालित रूप से उत्पन्न JSON preview।
- (connection, ns) के अनुसार persisted draft — खोए बिना iterate कर सकते हैं।
चरण-दर-चरण
- 1
Sample schema
Namespace (जैसे `app.products`) डालें। "Sample schema" पर क्लिक करें। ~3s में discovered paths का tree दिखाता है।
- 2
Paths Toggle करें
प्रत्येक path के बगल में Include / Excluded बटन पर क्लिक करें। शीर्ष पर "After your changes: N RU per write" का live update।
- 3
Save draft
"Save draft" बटन स्थानीय रूप से persist करता है। नीचे JSON preview copy के लिए तैयार है।
- 4
Cosmos में लागू करें
उत्पन्न JSON कॉपी करें, Azure portal → Containers → Settings → Indexing policy खोलें → paste करें → save। (या az-cli `az cosmosdb sql container update` के माध्यम से चलाएँ।)
- 5
(वैकल्पिक) WHAT-IF के माध्यम से validate करें
prod में लागू करने से पहले, ganho की पुष्टि के लिए संगत `add-index` या `drop-index` के साथ WHAT-IF चलाएँ।
वास्तविक use cases
बड़ा BLOB indexed path
Collection में डिफ़ॉल्ट रूप से indexed `payload` field (JSON blob 5-20kb) था। Editor के माध्यम से excluded। Writes 38 RU से 9 RU पर गिरे। मासिक बचत R$ 1.8k।
बेकार Wildcard paths
Team के पास `/metadata/*` indexed था लेकिन केवल 2 sub-paths पढ़ता था। Wildcard exclude + केवल उपयोग किए गए 2 paths include = -65% RU/write।