The Indexes class provides static factory methods for the MongoDB index key types. Each method returns an instance of the Bson
type, which can in turn be used with the createIndex()
methods.
Você pode importar os métodos da classe Indexes
estaticamente, como mostrado no seguinte código:
import org.mongodb.scala.model.Indexes._
Os exemplos deste guia pressupõem essa importação estática.
Ascendente
Para especificar uma chave de índice ascendente, use um dos métodos ascending()
.
O exemplo seguinte especifica uma chave de índice ascendente para o campo quantity
:
ascending("quantity")
O exemplo a seguir especifica uma chave de índice composto composta composta pelo campo quantity
classificado em ordem crescente e o campo totalAmount
classificado em ordem crescente:
ascending("quantity", "totalAmount")
Descendente
Para especificar uma chave de índice descendente, use um dos métodos descending()
.
O exemplo seguinte especifica uma chave de índice descendente no campo quantity
:
descending("quantity")
O exemplo a seguir especifica uma chave de índice composto composta pelo campo quantity
classificado em ordem decrescente e o campo totalAmount
classificado em ordem decrescente:
descending("quantity", "totalAmount")
Índice composto
Para especificar um índice composto, use o método compoundIndex()
.
O exemplo a seguir especifica uma chave de índice composto composta pelo campo quantity
classificado em ordem crescente, seguido pelo campo totalAmount
classificado em ordem crescente, seguido pelo campo orderDate
classificado em ordem decrescente:
compoundIndex(ascending("quantity", "totalAmount"), descending("orderDate"))
Text Index
Para especificar uma chave de índice de texto, use o método text()
.
O exemplo seguinte especifica uma chave de índice de texto para o campo description
:
text("description")
Índice com hash
Para especificar uma chave de índice hashed, use o método hashed()
.
O exemplo seguinte especifica uma chave de índice hashed para o campo timestamp
:
hashed("timestamp")
Índice Geoespacial
Existem ajudantes para criar as chaves de índice para os vários índices geoespaciais suportados pelo MongoDB.
2dsphere
Para especificar uma chave de índice dsphere 2 , use um dos métodos geo2dsphere()
.
O seguinte exemplo especifica um índice 2dsphere
no campo location
:
geo2dsphere("location")
2d
Para especificar uma chave de índice 2d
, use o método geo2d()
.
Importante
Um índice 2d
é para dados armazenados como pontos em um plano bidimensional e destina-se a legacy coordinate pairs usados no MongoDB Server versão 2.2 e anterior.
O seguinte exemplo especifica um índice 2d
no campo points
:
geo2d("points")