Visão geral
Índices de campo único são índices que contêm uma referência a um único campo nos documentos de uma coleção. Esses índices melhoram a consulta de campo único e o desempenho de classificação. Elas também oferecem suporte a índices TTL que removem automaticamente documentos de uma collection após um determinado período de tempo ou em um horário especificado.
Para criar um único índice de campo , 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
1para ascendente ou-1para descendente.
Observação
O índice _id_ padrão é um exemplo de um único índice de campo . 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 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 aprender a criar um cluster MongoDB Atlas gratuito e carregar os conjuntos de dados de amostra, consulte o Guia de Introdução do MongoDB.
Criar Índice de Campo Único
O exemplo seguinte utiliza o método create_index() para criar um índice de campo único ascendente no campo title :
auto index_specification = make_document(kvp("title", 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"))); std::cout << bsoncxx::to_json(*document) << std::endl;
{ "_id" :..., "plot" : "Peter Pan enters the nursery of the Darling children...", "genres" : [ "Adventure", "Fantasy", "Family" ], "runtime" : 105,...}
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: