Índices compostos
Nesta página
Visão geral
Índices compostos são índices que contêm referências a vários campos dentro dos documentos de uma coleção. Esses índices melhoram a consulta de vários campos e o desempenho de classificação.
Para criar um índice composto, chame o método create_index()
e especifique um documento contendo as seguintes informações:
Campos nos quais criar o índice.
Ordem de classificação para os valores indexados. Use ``1`` para ascendente ou
-1
para descendente.
Dados de amostra
Os exemplos neste guia utilizam a coleção do movies
no banco de dados de dados do sample_mflix
a partir dos conjuntos de dados de amostra do Atlas. Para acessar essa coleção a partir do seu aplicação C++ , instancie um mongocxx::client
que se conecte a um Atlas cluster e atribua os seguintes valores às suas variáveis db
e collection
:
auto db = client["sample_mflix"]; auto collection = db["movies"];
Para saber como criar um cluster MongoDB Atlas gratuito e carregar os conjuntos de dados de amostra, consulte o guia Iniciar com Atlas .
Criar índice composto
O exemplo seguinte cria um índice composto ascendente nos campos title
e year
:
auto index_specification = make_document(kvp("title", 1), kvp("year", 1)); auto result = collection.create_index(index_specification.view());
A seguinte query é coberta pelo índice criado no exemplo de código anterior:
auto document = collection.find_one(make_document(kvp("title","Peter Pan"), kvp("year", 1924))); std::cout << bsoncxx::to_json(*document) << std::endl;
{ "_id" :..., "plot" : "Peter Pan enters the nursery of the Darling children...", ..., "year" : 1924, "imdb" : ..., "type", "movie",...}
Informações adicionais
Para ver exemplos executáveis que demonstram como gerenciar índices, consulte Otimizar Queries com Índices.
Para saber mais sobre índices, consulte os seguintes recursos no manual do MongoDB Server :
Documentação da API
Para saber mais sobre os métodos discutidos neste guia, consulte a seguinte documentação da API: