Make the MongoDB docs better! We value your opinion. Share your feedback for a chance to win $100.
Click here >
Menu Docs
Página inicial do Docs
/ /

Como indexar campos de data para uma pesquisa facet

Você pode usar o tipo dateFacet do MongoDB Search para indexar valores de data para facet.

O MongoDB Search suporta apenas queries de operadores de faceta em campos indexados como o tipo dateFacet . Para realizar uma pesquisa normal também no mesmo campo, você também deve indexar o campo como data do tipo.

Para faceta campos de string em documentos incorporados, você deve indexar os campos pai como o tipo de documento. Quando você faceta um campo de string dentro de documentos incorporados, o MongoDB Search retorna a contagem de faceta apenas para o número de documentos pai correspondentes.

O MongoDB Search não indexa dinamicamente os valores de data para facet. Você deve usar mapeamentos estáticos para indexar valores de data para facet. Você pode usar o Editor Visual ou o Editor JSON na UI do Atlas para indexar campos de data como o tipo number.

Aplicam-se as seguintes limitações:

  • Você não pode indexar um campo de data para faceting se ele estiver dentro de uma matriz ou se estiver dentro de um documento em uma matriz.

  • O MongoDB Search não suporta a facet de data em campos indexados como parte de um campo embeddedDocuments .

    Observação

    Para solicitar esse recurso e fornecer seu feedback, use o feedback do MongoDB.

Para definir o índice para o tipo dateFacet , 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 DateFacet. Para saber mais sobre esse tipo, consulte Propriedades do campo.

  6. Clique em Add.

A seguir está a sintaxeJSON para o tipo dateFacet. 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": "dateFacet"
}
}
}
}

O tipo MongoDB Search dateFacet usa o seguinte parâmetro:

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

The following index definition example uses the sample_mflix.movies collection. If you have the sample data already loaded on your cluster, you can use the Visual Editor or JSON Editor in the Atlas UI to configure the index. After you select your preferred configuration method, select the database and collection, and refine your index to add field mappings.

O exemplo de definição de índice a seguir indexa o campo released como o tipo dateFacet do MongoDB Search para oferecer suporte a queries nesse campo usando o facet (Operador de pesquisa do MongoDB).

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

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

  3. Clique em Add.

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

{
"mappings": {
"dynamic": false,
"fields": {
"released": {
"type": "dateFacet"
}
}
}
}

O exemplo de definição de índice a seguir indexa o campo released como os tipos dateFacet e date para retornar os seguintes tipos de resultados para suas queries:

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

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

  3. Clique em Add.

  4. Repita a etapa 1 e selecione Date no menu suspenso Data Type.

  5. Clique em Add.

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

{
"mappings": {
"dynamic": false,
"fields": {
"released": [
{
"type": "dateFacet"
},
{
"type": "date"
}
]
}
}
}

Para aprender mais sobre o coletor facet e ver exemplos de queries, consulte Exemplos.

Para saber como criar um índice com uma definição de faceta e consultar esse índice usando o coletor facet, consulte o tutorial Como usar facets com o MongoDB Search.

Voltar

data

Nesta página