Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Propiedad del índice: parcial FilterExpression
Tipos de índices compatibles
| Opción | 3.6 | 4.0 | 5.0 | 8.0 | Clúster elástico |
|---|---|---|---|---|---|
| campo único | No | No | Sí | Sí | No |
| compuesto | No | No | Sí | Sí | No |
| tecla múltiple | No | No | Sí | Sí | No |
| geoespacial | No | No | No | No | No |
Utilice la FilterExpression opción parcial para crear un índice parcial que solo incluya los documentos que cumplan una condición de filtro especificada. Esto permite crear índices más eficaces al indexar solo un subconjunto de documentos de una colección, en lugar de indexar todos los documentos, lo que reduce el tamaño del índice y ahorra espacio en la memoria. Como el tamaño del índice es más pequeño, las consultas que lo utilizan son más eficaces. Amazon DocumentDB utilizará el índice parcial en los siguientes escenarios:
El predicado de la consulta coincide exactamente con la expresión del filtro de índice parcial.
El resultado esperado del filtro de consulta es un subconjunto lógico del filtro parcial.
Un subpredicado de la consulta se puede usar junto con otros índices.
Para obtener más información, consulte Índice parcial.
Ejemplos
En los siguientes ejemplos se muestra cómo crear índices parciales en el siguiente documento de ejemplo:
{ "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 único
Crea un índice parcial de campo único sobre el fabricante para los productos de color gris espacial:
db.collection.createIndex( { "manufacturer": 1 }, { "name": "manufacturer_space_gray", "partialFilterExpression": { "color": { $eq: "Space Gray" } } } )
Este índice se utilizará para buscar productos de color gris espacial por fabricante:
db.collection.find({ "manufacturer": "The Manufacturer", "color": { $eq: "Space Gray" } })
compuesto
Cree un índice compuesto parcial sobre el fabricante y el color de los productos que tienen un material de policarbonato:
db.collection.createIndex( { "manufacturer": 1, "color": 1 }, { "name": "manufacturer_and_color_polycarbonate", "partialFilterExpression": { "material": { $eq: "Polycarbonate" } } } )
Este índice se utilizará para buscar productos de policarbonato por fabricante y color:
db.collection.find({ "manufacturer": "The Manufacturer", "color": "Space Gray", "material": { $eq: "Polycarbonate" } })
tecla múltiple
Crea un índice parcial con varias claves en las etiquetas de los productos cuyo fabricante sea The Manufacturer:
db.collection.createIndex( { "tags": 1 }, { "name": "tags_the_manufacturer", "partialFilterExpression": { "manufacturer": { $eq: "The Manufacturer" } } } )
Este índice se utilizará para buscar productos etiquetados con una impresora cuyo fabricante sea El fabricante:
db.collection.find({ "tags": "printer", "manufacturer": { $eq: "The Manufacturer" } })