Para agentes de IA: hay un índice de documentación disponible en https://www.mongodb.com/es/docs/llms.txt — versiones en markdown de todas las páginas están disponibles agregando .md a cualquier ruta URL.
Docs Menu

Índices de un solo campo

Índices de un solo campo son índices con una referencia a un solo campo de un documento en una colección. Estos índices mejoran la performance de query y ordenación en un único campo. También admiten Índices TTL que remueven documentos automáticamente de una colección después de un cierto período de tiempo o a una hora específica.

Cuando se crea un índice de campo único, se deben especificar los siguientes detalles:

  • El campo en el que crear el índice

  • El orden de clasificación de los valores indexados puede ser ascendente o descendente.

Nota

El índice _id_ por defecto es un ejemplo de índice de campo único. Este índice se crea automáticamente en el campo _id cuando se crea una nueva colección.

Los ejemplos de esta guía utilizan la colección movies en la base de datos sample_mflix de los conjuntos de datos de muestra de Atlas. Para acceder a esta colección desde tu aplicación Ruby, crea un objeto Mongo::Client que se conecte a un clúster de Atlas y asigna los siguientes valores a tus variables database y collection:

database = client.use('sample_mflix')
collection = database[:movies]

Para aprender a crear un clúster gratuito de MongoDB Atlas y cargar los conjuntos de datos de muestra, consulta la guía Comenzar con Atlas.

Utiliza el método create_one para crear un índice de campo único. El siguiente ejemplo crea un índice en orden ascendente en el campo title:

# Creates an index on the "title" field
collection.indexes.create_one({ title: 1 })

Puedes verificar que el índice se creó al listar los índices en la colección. Deberías ver un índice para title en la lista, como se muestra en la siguiente salida:

# Lists all indexes on the collection
puts collection.indexes.collect(&:to_json)
{"v": 2, "key": {"title": 1}, "name": "title_1"}

A continuación, se muestra un ejemplo de una query que está cubierta por el índice creado en el campo title:

# Finds a document with the title "Sweethearts" by using the newly created index
filter = { title: 'Sweethearts' }
doc = collection.find(filter).first
if doc
puts doc.to_json
else
puts "No document found"
end
{"_id":...,"plot":"A musical comedy duo...",
"genres":["Musical"],...,"title":"Sweethearts",...}

Para ver ejemplos ejecutables que demuestran cómo gestionar índices, consulte Optimizando consultas utilizando índices.

Para aprender más sobre los índices de campo único, consulta Índices de campo único en el manual de MongoDB Server.

Para obtener más información sobre cualquiera de los métodos mencionados en esta guía, consulta la siguiente documentación de la API: