Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Proprietà dell'indice: parziale FilterExpression
Tipi di indice supportati
| Opzione | 3.6 | 4.0 | 5.0 | 8.0 | Cluster elastico |
|---|---|---|---|---|---|
| campo singolo | No | No | Sì | Sì | No |
| compound | No | No | Sì | Sì | No |
| chiave multipla | No | No | Sì | Sì | No |
| geospaziale | No | No | No | No | No |
Utilizzate l'FilterExpression opzione partial per creare un indice parziale che includa solo i documenti che soddisfano una condizione di filtro specificata. Ciò consente di creare indici più efficienti indicizzando solo un sottoinsieme di documenti in una raccolta, anziché indicizzando tutti i documenti, riducendo le dimensioni dell'indice e risparmiando spazio in memoria. Poiché la dimensione dell'indice è inferiore, le query che lo utilizzano sono più efficienti. Amazon DocumentDB utilizzerà l'indice parziale nei seguenti scenari:
Il predicato della query corrisponde esattamente all'espressione del filtro dell'indice parziale.
Il risultato previsto dal filtro di interrogazione è un sottoinsieme logico del filtro parziale.
Un sottopredicato della query può essere utilizzato insieme ad altri indici.
Per ulteriori informazioni, consulta Indice parziale.
Esempi
Gli esempi seguenti mostrano come creare indici parziali nel seguente documento di esempio:
{ "productId": "PROD133726", "sku": "SKU24224", "name": "Basic Printer", "manufacturer": "The Manufacturer", "tags": [ "printer", "basic", "electronics", "business" ], "barcodes": [ "542364671", "886330670", "437445606" ], "reviews": [ { "review_date": ISODate('2024-01-19T21:37:10.585Z'), ... } ], "material": "Polycarbonate", "color": "Space Gray", "supplier": { "supplierId": "SUP4", "location": { "type": "Point", "coordinates": [ -71.0589, 42.3601 ] } }, "productEmbedding": [ -0.019320633663838058, 0.019672111388113596 ], "lastUpdated": ISODate('2025-10-20T21:37:10.585Z') }
campo singolo
Crea un indice parziale a campo singolo sul produttore per i prodotti che hanno il colore grigio siderale:
db.collection.createIndex( { "manufacturer": 1 }, { "name": "manufacturer_space_gray", "partialFilterExpression": { "color": { $eq: "Space Gray" } } } )
Questo indice verrà utilizzato per trovare prodotti di colore grigio siderale in base al produttore:
db.collection.find({ "manufacturer": "The Manufacturer", "color": { $eq: "Space Gray" } })
composto
Crea un indice composto parziale sul produttore e sul colore per i prodotti che hanno un materiale in policarbonato:
db.collection.createIndex( { "manufacturer": 1, "color": 1 }, { "name": "manufacturer_and_color_polycarbonate", "partialFilterExpression": { "material": { $eq: "Polycarbonate" } } } )
Questo indice verrà utilizzato per trovare prodotti in policarbonato suddivisi per produttore e colore:
db.collection.find({ "manufacturer": "The Manufacturer", "color": "Space Gray", "material": { $eq: "Polycarbonate" } })
chiave multipla
Crea un indice parziale a più chiavi sui tag per i prodotti il cui produttore è The Manufacturer:
db.collection.createIndex( { "tags": 1 }, { "name": "tags_the_manufacturer", "partialFilterExpression": { "manufacturer": { $eq: "The Manufacturer" } } } )
Questo indice verrà utilizzato per trovare prodotti etichettati con stampante il cui produttore è The Manufacturer:
db.collection.find({ "tags": "printer", "manufacturer": { $eq: "The Manufacturer" } })