Índices de campo único
Nesta página
Visão geral
Os índices de campo único são índices com uma referência a um único campo dentro dos documentos de uma coleção. Eles melhoram o desempenho da consulta de campo único e da classificação e oferecem suporte a índices TTL que removem automaticamente documentos de uma coleção após um determinado período de tempo ou em um horário específico.
Ao criar um índice de campo único, você deve especificar o seguinte:
O campo no qual criar o índice
A ordem de classificação para os valores indexados (crescente ou decrescente)
Observação
O índice _id_
é um exemplo de índice de campo único. Este índice é criado automaticamente no campo _id
quando uma nova coleção é criada.
Dados de amostra
Os exemplos neste guia usam a collection movies
no banco de dados sample_mflix
dos conjuntos de banco de dados de amostra do Atlas. Para saber como criar um cluster MongoDB Atlas gratuito e carregar os conjuntos de dados de amostra, consulte o guia Iniciar com Atlas .
A seguinte classe de dados Kotlin modela os documentos nesta coleção:
data class Movie( val id: ObjectId, val title: String? = "", val type: String? = "", val genres: List<String>? = null, val cast: List<String>? = null, val plot: String? = "", )
Criar Índice de Campo Único
O exemplo a seguir cria um índice em ordem crescente no campo title
:
collection.createIndex(Indexes.ascending(Movie::title.name))
O seguinte é um exemplo de uma consulta coberta pelo índice criado no exemplo de código anterior:
val filter = Filters.eq(Movie::title.name, "Batman") val sort = Sorts.ascending(Movie::title.name) val results = collection.find(filter).sort(sort) results.forEach { result -> println(result) }
Movie(id=573a1398f29313caabceb515, title=Batman, ...)
Informações adicionais
Para saber mais sobre índices de campo único, consulte Índices de campo único no manual do MongoDB Server .
Documentação da API
Para saber mais sobre qualquer um dos métodos discutidos nesta guia, consulte a seguinte documentação da API: