English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

API de Índice do Elasticsearch

Essas APIs são responsáveis por gerenciar todos os aspectos dos índices, como configurações, alias, mapeamento, templates de índice.

Criar índice

Esta API pode ajudar a criar índices. Quando o usuário passar um objeto JSON para qualquer índice, pode criar automaticamente o índice, ou criar antes disso. Para criar um índice, você precisa enviar uma solicitação PUT com configurações, mapeamento e alias, ou apenas enviar uma solicitação simples sem corpo.

PUT colleges

Após executar o código acima, obtemos a seguinte saída-

{
   "acknowledged": true
   "shards_acknowledged": true
   "index": "colleges"
}

Também podemos adicionar algumas configurações na instrução acima-

PUT colleges
{
  "settings": {
      "index": {
         "number_of_shards": 3,
         "number_of_replicas": 2
      }
   }
}

Após executar o código acima, obtemos a seguinte saída-

{
   "acknowledged": true
   "shards_acknowledged": true
   "index": "colleges"
}

Excluir índice

Esta API pode ajudá-lo a excluir qualquer índice. Basta passar uma solicitação de exclusão com o nome específico do índice.

DELETE /colleges

Você pode usar _all ou*Excluir todos os índices.

Obter índice

Você pode chamar essa API apenas enviando uma solicitação GET para um ou mais índices. Isso retornará informações sobre o índice.

GET colleges

Após executar o código acima, obtemos a seguinte saída-

{
   "colleges": {
      "aliases": {
         "alias_1": { },
         "alias_2": {
            "filter": {
               "term": {
                  "user": "pkay"
               }
            },
            "index_routing": "pkay",
            "search_routing": "pkay"
         }
      },
      "mappings": {},
      "settings": {
         "index": {
            "creation_date": "1556245406616",
            "number_of_shards": "1",
            "number_of_replicas": "1",
            "uuid": "3ExJbdl2R1qDLssIkwDAug",
            "version": {
               "created": "7000099"
            },
            "provided_name": "colleges"
         }
      }
   }
}

Você pode usar _all ou*Obter informações de todos os índices.

Índice existe

A existência do índice pode ser determinada ao enviar uma solicitação GET apenas para o índice. Se a resposta HTTP for200,existe. Se for404,não existe.

HEAD colleges

Após executar o código acima, obtemos a seguinte saída-

200-OK

Configurações do índice

Basta adicionar a palavra-chave _settings ao final da URL para obter as configurações do índice.

GET /colleges/_settings

Após executar o código acima, obtemos a seguinte saída-

{
   "colleges": {
      "settings": {
         "index": {
            "creation_date": "1556245406616",
            "number_of_shards": "1",
            "number_of_replicas": "1",
            "uuid": "3ExJbdl2R1qDLssIkwDAug",
            "version": {
               "created": "7000099"
            },
            "provided_name": "colleges"
         }
      }
   }
}

Estatísticas do índice

Esta API pode ajudá-lo a extrair informações estatísticas sobre um índice específico. Basta enviar uma solicitação GET com a URL do índice e a palavra-chave _stats no final.

GET /_stats

Após executar o código acima, obtemos a seguinte saída-

………………………………………………
},
   "request_cache": {
      "memory_size_in_bytes": : 849,
      "evictions": 0,
      "hit_count": : 1171,
      "miss_count": : 4
   },
   "recovery": {
      "current_as_source": 0,
      "current_as_target": 0,
      "throttle_time_in_millis": 0
   }
}………………………………………………

Enxague (Flush)

O processo de refrescamento do índice garante que todos os dados armazenados no log de transação também sejam permanentemente armazenados no Lucene. Isso reduz o tempo de recuperação, pois, após a abertura do índice Lucene, não é necessário reindexar dados do log de transação.

POST colleges/_flush

Após executar o código acima, obtemos a seguinte saída-

{
   "_shards": {
      "total": 2,
      "successful": 1,
      "failed": 0
   } 
}