Menu Docs
Página inicial do Docs
/ / /
Driver C++
/

Índices compostos

Nesta página

  • Visão geral
  • Dados de amostra
  • Criar índice composto
  • Informações adicionais
  • Documentação da API

Í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.

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 .

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",...}

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 :

Para saber mais sobre os métodos discutidos neste guia, consulte a seguinte documentação da API:

Voltar

Índices de campo único