Afortunadamente, con Elasticsearch, cuando los datos se vuelven redundantes, todo lo que necesita hacer es acceder a una herramienta para realizar solicitudes y transferir datos a través de la red.
Esta guía rápida le mostrará cómo utilizar la poderosa API de Elasticsearch para eliminar documentos e índices.
NOTA: Suponemos que tiene Elasticsearch ejecutándose en su sistema y que tiene una herramienta para realizar solicitudes como cURL. También proporcionamos solicitudes Kibana sin procesar si está utilizando la consola Kibana (recomendado).
Cómo enumerar el índice?
Si desea eliminar e indexar en Elasticsearch, primero debe verificar que existe antes de enviar la solicitud DELETE.
Si intenta eliminar un índice que no existe, obtendrá un error, similar al que se muestra a continuación:
ELIMINAR / this_index_noes_not_existPara el comando cURL:
curl -XDELETE "http: // localhost: 9200 / this_index_does_not_exist"Eliminar un índice dará un error como:
"error" :
"causa principal" : [
"tipo": "index_not_found_exception",
"motivo": "no existe tal índice [this_index_does_not_exist]",
"index_uuid": "_na_",
"recurso.escriba ":" index_or_alias ",
"recurso.id ":" this_index_does_not_exist ",
"índice": "this_index_noes_not_exist"
],
"tipo": "index_not_found_exception",
"motivo": "no existe tal índice [this_index_does_not_exist]",
"index_uuid": "_na_",
"recurso.escriba ":" index_or_alias ",
"recurso.id ":" this_index_does_not_exist ",
"índice": "this_index_noes_not_exist"
,
"estado": 404
Hay varias formas de comprobar si existe un índice; lo mejor es enumerar su nombre. Por ejemplo, puede usar comodines para hacer coincidir un nombre específico.
La solicitud de ejemplo a continuación enumera índices con nombres te *
OBTENER / te *El comando cURL es:
curl -XGET "http: // localhost: 9200 / te *"Este comando debe devolver todos los índices que coincidan con ese patrón específico, lo que le permitirá recordar solo el nombre parcial del índice que desea eliminar.
"temp":
"alias": ,
"asignaciones": ,
"ajustes" :
"índice":
"enrutamiento":
"asignación":
"incluir":
"_tier_preference": "data_content"
,
"número_de_partidos": "1",
"nombre_proporcionado": "temp",
"creation_date": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"versión" :
"creado": "7100299"
,
"temp_1":
"alias": ,
"asignaciones": ,
"ajustes" :
"índice":
"enrutamiento":
"asignación":
"incluir":
"_tier_preference": "data_content"
,
"número_de_partidos": "1",
"nombre_proporcionado": "temp_1",
"creation_date": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"versión" :
"creado": "7100299"
,
"temp_2":
"alias": ,
"asignaciones": ,
"ajustes" :
"índice":
"enrutamiento":
"asignación":
"incluir":
"_tier_preference": "data_content"
,
"número_de_partidos": "1",
"nombre_proporcionado": "temp_2",
"creation_date": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"versión" :
"creado": "7100299"
Otra forma es agregar el parámetro ignore_unavailable a la solicitud. Por ejemplo:
BORRAR / ignorarme?ignore_unavailable = verdaderoPara usuarios de cURL:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
curl -XDELETE “http: // localhost: 9200 / ignore_me?ignore_unavailable = true "
Cómo eliminar un Índice?
Una vez que tenga el índice que desea eliminar de Elasticsearch, use la solicitud DELETE seguida del nombre del índice.
La sintaxis general es:
ELIMINAR /El nombre del índice puede ser un índice específico o un comodín que selecciona un grupo de índices. Asegúrese de utilizar los comodines correctamente; de lo contrario, puede eliminar los índices incorrectos.
NOTA: No se permite eliminar índices de Elasticsearch usando alias.
Considere la solicitud de ejemplo a continuación que elimina el índice temp_1:
BORRAR / temp_1Para el comando cURL:
curl -XDELETE "http: // localhost: 9200 / temp_1"La ejecución de este comando debe responder con un objeto JSON, lo que indica la eliminación exitosa del índice.
"Reconocido": verdadero
Elasticsearch es lo suficientemente inteligente como para saber que puede eliminar índices accidentalmente. Por lo tanto, puede establecer qué tipos de expresiones comodín están permitidas.
Este tipo de expresiones de comodines incluyen:
- Todas: Incluye todos los índices, incluidos abiertos, cerrados y ocultos (comenzando por)
- Abierto: Incluye solo índices abiertos
- Cerrado: Incluye solo índices cerrados
- Ninguno: No se permiten expresiones comodín.
Conclusión
Para esta guía rápida y sencilla, analizamos el proceso de uso de Elasticsearch para eliminar índices de un clúster. También discutimos formas sencillas que puede implementar para evitar errores en índices que no existen.
Gracias por leer.