Elasticsearch Ștergeți toți indecșii

Elasticsearch Stergeti Toti Indecsii



Elasticsearch este un motor de căutare și analiză gratuit, open-source, care alimentează ELK Stack. Elasticsearch permite diferitelor conducte de date folosind instrumente precum Logstash pentru a colecta și agrega datele. Elasticsearch stochează apoi datele furnizate, permițând aplicațiilor să acceseze, să caute, să sorteze și să filtreze cantități mari de date aproape în timp real. Elasticsearch vă permite, de asemenea, să vizualizați diferitele date folosind instrumente încorporate.

Astfel de caracteristici fac ca Elasticseach să fie foarte potrivit pentru căutarea și sortarea cantităților extinse de date cu o latență minimă sau deloc. Deci, indiferent dacă creați un motor de căutare sau analizați jurnalele, valorile și alte date text, Elasticsearch este o alegere excelentă.







În centrul Elasticsearch este un index. Un index se referă la unitatea responsabilă cu stocarea documentelor în Elasticsearch. Un index este relativ echivalent cu o bază de date în contextul bazelor de date relaționale. De exemplu, puteți avea un index care conține toate datele pentru jurnalele unei aplicații web.



La fel ca toate bazele de date, s-ar putea să întâlniți un scenariu în care trebuie să eliminați toate datele din cluster, permițându-vă să începeți cu o soluție curată.



Acest articol vă arată cum să utilizați funcțiile API Elasticsearch pentru a elimina toți indecșii din cluster.





ATENȚIE: Metodele și tehnicile utilizate în acest articol vor duce la pierderea datelor. Nu ne asumăm responsabilitatea pentru orice pierdere de date care poate apărea din cauza instrucțiunilor din acest articol.

API-ul Elasticsearch Delete Index

Dacă porniți Elasticsearch, va trebui să știți cum să efectuați apelurile API de bază. Acest lucru se datorează faptului că Elasticsearch utilizează API-urile la maximum.



După cum puteți ghici, folosim API-ul Delete Index pentru a elimina un index dintr-un cluster. Sintaxa pentru cererile de ștergere a indexului este așa cum se arată:

ȘTERGE /< index >


Solicitarea elimină indexul specificat și documentele stocate, fragmentele și toate metadatele acestuia.

Rețineți că acest lucru nu va elimina nicio componentă Kibana asociată cu indexul specificat, cum ar fi vizualizările de date etc.

Puteți specifica un singur indic sau mai mulți indici, separându-i cu virgule. Un exemplu de sintaxă este așa cum se arată:

ȘTERGE / nume_index
ȘTERGE / index1,index2,index3...indexN


Elasticsearch vă împiedică să utilizați alias-ul Index atunci când ștergeți un index. În schimb, vi se cere să utilizați numele indexului.

Exemplul 1: Elasticsearch Delete Index

Următorul exemplu arată cum să utilizați API-ul Elasticsearch delete index pentru a elimina un index existent din cluster:

răsuci -XDELETE „http://localhost:9200/kibana_sample_data_logs?pretty=true” -H „kbn-xsrf: raportare”


Solicitarea anterioară trimite o solicitare DELETE către API-ul de ștergere. Acest lucru ar trebui să elimine indexul cu numele „kibana_sample_data_logs”.

Rezultatul rezultat este așa cum se arată:

{
'recunoscut' : Adevărat
}

Exemplul 2: Elasticsearch Ștergeți mai mulți indici

Putem elimina mai mulți indici trecându-i ca o listă separată prin virgulă. Un exemplu de interogare este așa cum se arată:

răsuci -XDELETE „http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true” -H „kbn-xsrf: raportare”


Comanda anterioară șterge indicii specificați și returnează un mesaj așa cum se arată:

{
'recunoscut' : Adevărat
}


Notă: Dacă indexul nu există, Elasticsearch returnează o eroare așa cum se arată:

Exemplul 3: Elasticsearch Ștergeți toți indicii

Putem folosi wildcard-ul _all din API-ul de ștergere a indexului pentru a elimina toți indicii dintr-un cluster. API-ul de ștergere a indexului vă va împiedica, în mod implicit, să treceți metacaracterele în cerere.

Puteți dezactiva acest lucru setând action.desctructive_requires_name la false.

Următoarea interogare vă arată cum să activați utilizarea metacaracterilor în API-ul de ștergere a indexului:

răsuci -XPUT „localhost:9200 /_cluster/settings” -H „kbn-xsrf: raportare” -H „Tip de conținut: aplicație/json” -d '
{
„tranzitoriu”: {
„action.destructive_requires_name”: fals
}
}'


NOTĂ: Deși Elasticsearch nu recomandă utilizarea setărilor clusterului tranzitoriu, evitați setarea parametrilor distructivi ai clusterului, cum ar fi utilizarea metacaracterilor ca setare persistentă a clusterului.

Interogarea anterioară ar trebui să returneze rezultatul ca:

{
'recunoscut' : Adevărat ,
'persistent' : { } ,
'tranzitoriu' : {
'acțiune' : {
'nume_distructiv_necesita' : 'fals'
}
}
}


Odată cu succes, puteți elimina toți indicii din cluster rulând următoarea comandă:

răsuci -XDELETE „http://localhost:9200/_all?pretty=true” -H „kbn-xsrf: raportare”

Exemplul 4: Elasticsearch Ștergeți toți indicii care se potrivesc cu anumite nume

Dacă doriți să eliminați toți indicii care se potrivesc cu un anumit model, puteți utiliza un caracter joker (*).

De exemplu, pentru a elimina toți indicii care încep cu numele kibana, putem rula următoarea interogare:

răsuci -XDELETE „http://localhost:9200/kibana*” -H „kbn-xsrf: raportare”


Solicitarea anterioară elimină toți indicii care încep cu kibana.

NOTĂ: Solicitarea anterioară necesită utilizarea metacaracterelor. Prin urmare, trebuie să activați suportul pentru wildcard așa cum se arată în secțiunea anterioară.

Concluzie

Acest ghid v-a învățat cum să utilizați API-ul de ștergere a indexului Elasticsearch. Ați învățat, de asemenea, cum să activați suportul pentru wildcard în clusterul dvs., să eliminați toți indicii și să eliminați indicii care se potrivesc cu un anumit model.