Elasticsearch: API de índice

Estas API son responsables de administrar todos los aspectos del índice, como configuraciones, alias, asignaciones, plantillas de índice.

Crear índice

Esta API le ayuda a crear un índice. Se puede crear un índice automáticamente cuando un usuario pasa objetos JSON a cualquier índice o se puede crear antes de eso. Para crear un índice, solo necesita enviar una solicitud PUT con configuraciones, asignaciones y alias o simplemente una solicitud simple sin cuerpo.

PUT colleges

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

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

También podemos agregar algunas configuraciones al comando anterior:

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

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

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

Eliminar índice

Esta API le ayuda a eliminar cualquier índice. Solo necesita pasar una solicitud de eliminación con el nombre de ese índice en particular.

DELETE /colleges

Puede eliminar todos los índices simplemente usando _todos o *.

Obtener índice

Esta API se puede llamar simplemente enviando una solicitud de obtención a uno o más índices. Esto devuelve la información sobre index.

GET colleges

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

{
   "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"
         }
      }
   }
}

Puede obtener la información de todos los índices utilizando _todos o *.

El índice existe

La existencia de un índice se puede determinar simplemente enviando una solicitud de obtención a ese índice. Si la respuesta HTTP es 200, existe; si es 404, no existe.

HEAD colleges

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

200-OK

Configuración de índice

Puede obtener la configuración del índice simplemente agregando la palabra clave _settings al final de la URL.

GET /colleges/_settings

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

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

Estadísticas de índice

Esta API le ayuda a extraer estadísticas sobre un índice en particular. Solo necesita enviar una solicitud de obtención con la URL del índice y la palabra clave _stats al final.

GET /_stats

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

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

Enjuagar

El proceso de vaciado de un índice asegura que cualquier dato que actualmente solo se conserva en el registro de transacciones también se conserva permanentemente en Lucene. Esto reduce los tiempos de recuperación, ya que no es necesario volver a indexar los datos de los registros de transacciones después de abrir Lucene indexado.

POST colleges/_flush

Al ejecutar el código anterior, obtenemos el resultado como se muestra a continuación:

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