Menu Docs

Como indexar valores de ObjectId em campos

Você pode utilizar o tipo de Atlas Search objectId para indexar valores ObjectId. Você pode consultar campos do tipo objectId usando os equals e em operadores.

Você também pode utilizar o tipo objectId para indexar:

Se você habilitar mapeamentos dinâmicos, o Atlas Search indexará automaticamente campos do tipo objectId. Você pode utilizar o Editor Visual ou o Editor JSON na UI do Atlas para indexar campos como o tipo objectId.

Para definir o índice para o tipo objectId , escolha seu método de configuração preferido na UI do Atlas e então selecione o banco de dados e collection.

  1. Clique em Refine Your Index para configurar seu índice.

  2. Na seção Field Mappings, clique em Add Field Mapping para abrir a janela Add Field Mapping.

  3. Clique em Customized Configuration.

  4. Selecione o campo a ser indexado no menu suspenso Field Name.

    Observação

    Você não pode indexar campos que contêm o sinal de dólar ($) no início do nome do campo.

  5. Clique no menu suspenso Data Type e selecione ObjectId. Para saber mais sobre esse tipo, consulte Propriedades do campo.

  6. Clique em Add.

A seguir está a sintaxeJSON para o tipo objectId. Substitua a definição de índice padrão pelo seguinte. Para saber mais sobre os campos, consulte Propriedades do campo.

{
"mappings": {
"dynamic": true|false,
"fields": {
"<field-name>": {
"type": "objectId"
}
}
}
}

O tipo Atlas Search objectId tem a seguinte opção:

Nome do campo UI
JSON Option
Tipo
necessidade
Descrição

Data Type

type

string

necessário

Etiqueta legível por humanos que identifica este tipo de campo. O valor deve ser objectId.

O exemplo de definição de índice seguinte utiliza a coleção sample_mflix.comments. Se você tiver os dados de amostra já carregados no seu cluster, você poderá utilizar o Editor Visual ou o Editor JSON na UI do Atlas para configurar o índice. Após selecionar seu método de configuração preferido, selecione o banco de dados e a coleção e refine seu índice para adicionar mapeamentos de campo.

O seguinte exemplo de definição de índice indexa o campo movie_id como o tipo de dados do objectId para suportar queries neste campo utilizando o operador igual da Atlas Search.

  1. Na janela Add Field Mapping, selecione movie_id no menu suspenso Field Name.

  2. Clique no menu suspenso Data Type e selecione ObjectId.

  3. Clique em Add.

Substitua a definição de índice padrão pela seguinte definição de índice.

{
"mappings": {
"dynamic": false,
"fields": {
"movie_id": {
"type": "objectId"
}
}
}
}

Dica

Consulte também: Exemplos adicionais de definição de índice