Elasticsearch Ištrinkite visus indeksus

Elasticsearch Istrinkite Visus Indeksus



„Elasticsearch“ yra nemokamas atvirojo kodo paieškos ir analizės variklis, kuris maitina ELK Stack. „Elasticsearch“ leidžia įvairiems duomenų srautams rinkti ir kaupti duomenis naudojant tokius įrankius kaip „Logstash“. Tada „Elasticsearch“ išsaugo pateiktus duomenis, leisdama programoms pasiekti, ieškoti, rūšiuoti ir filtruoti didelius duomenų kiekius beveik realiuoju laiku. „Elasticsearch“ taip pat leidžia vizualizuoti įvairius duomenis naudojant integruotus įrankius.

Dėl tokių ypatybių Elasticseach puikiai tinka ieškant ir rūšiuojant didelius duomenų kiekius su minimalia delsa arba visai jos nėra. Taigi, nesvarbu, ar kuriate paieškos variklį, ar analizuojate žurnalus, metrikas ir kitus tekstinius duomenis, Elasticsearch yra puikus pasirinkimas.







Elasticsearch esmė yra indeksas. Rodyklė nurodo padalinį, atsakingą už dokumentų saugojimą Elasticsearch. Indeksas yra santykinai lygiavertis duomenų bazei reliacinių duomenų bazių kontekste. Pavyzdžiui, galite turėti rodyklę, kurioje saugomi visi žiniatinklio programos žurnalų duomenys.



Kaip ir visose duomenų bazėse, galite susidurti su scenarijumi, kai turėsite pašalinti visus duomenis iš klasterio, kad galėtumėte pradėti nuo švaraus lapo.



Šiame straipsnyje parodyta, kaip naudoti Elasticsearch API funkcijas, kad pašalintumėte visus indeksus iš savo grupės.





ĮSPĖJIMAS: Šiame straipsnyje naudojami metodai ir metodai sukels duomenų praradimą. Mes neprisiimame atsakomybės už duomenų praradimą, kuris gali atsirasti dėl šiame straipsnyje pateiktų instrukcijų.

Elasticsearch Delete Index API

Jei pradedate Elasticsearch, turėsite žinoti, kaip atlikti pagrindinius API iškvietimus. Taip yra todėl, kad „Elasticsearch“ maksimaliai išnaudoja API.



Kaip galite atspėti, indekso pašalinimui iš klasterio naudojame „Delete Index“ API. Indekso ištrynimo užklausų sintaksė yra tokia:

IŠTRINTI /< indeksas >


Užklausa pašalina nurodytą indeksą ir saugomus dokumentus, fragmentus ir visus jo metaduomenis.

Atminkite, kad tai nepašalins jokių „Kibana“ komponentų, susijusių su nurodytu indeksu, pvz., duomenų rodinių ir kt.

Galite nurodyti vieną ar kelis indeksus, atskirdami juos kableliais. Sintaksės pavyzdys yra toks, kaip parodyta:

IŠTRINTI / indekso_pavadinimas
IŠTRINTI / indeksas1,indeksas2,indeksas3...indeksasN


Elasticsearch neleidžia naudoti indekso slapyvardžio, kai ištrinate indeksą. Vietoj to turite naudoti indekso pavadinimą.

1 pavyzdys: Elasticsearch Delete Index

Šiame pavyzdyje parodyta, kaip naudoti Elasticsearch trynimo indekso API, kad pašalintumėte esamą indeksą iš klasterio:

garbanoti -XDELETE http://localhost:9200/kibana_sample_data_logs?pretty=true -H 'kbn-xsrf: ataskaitų teikimas'


Ankstesnė užklausa siunčia DELETE užklausą ištrynimo API. Tai turėtų pašalinti indeksą pavadinimu „kibana_sample_data_logs“.

Gauta išvestis yra tokia, kaip parodyta:

{
'pripažino' : tiesa
}

2 pavyzdys: Elasticsearch ištrinti kelis indeksus

Galime pašalinti kelis indeksus, perduodami juos kaip kableliais atskirtą sąrašą. Užklausos pavyzdys yra toks, kaip parodyta:

garbanoti -XDELETE 'http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: ataskaitų teikimas'


Ankstesnė komanda ištrina nurodytus indeksus ir grąžina pranešimą, kaip parodyta:

{
'pripažino' : tiesa
}


Pastaba: jei indekso nėra, Elasticsearch grąžina klaidą, kaip parodyta:

3 pavyzdys: Elasticsearch Ištrinkite visus indeksus

Galime naudoti _all pakaitos simbolį ištrynimo indekso API, kad pašalintume visus indeksus iš klasterio. Indekso ištrynimo API pagal numatytuosius nustatymus neleis užklausoje perduoti pakaitos simbolių.

Tai galite išjungti nustatę action.descstructive_requires_name į false.

Šioje užklausoje parodyta, kaip įjungti pakaitos simbolius ištrynimo indekso API:

garbanoti -XPUT 'localhost:9200 /_cluster/settings' -H 'kbn-xsrf: ataskaitų teikimas' -H „Turinio tipas: programa/json“ -d
{
'praeinantis': {
'action.desstructive_requires_name' : klaidinga
}
}'


PASTABA: nors Elasticsearch nerekomenduoja naudoti trumpalaikių klasterio nustatymų, venkite nustatyti destruktyvių klasterio parametrų, pvz., pakaitos simbolių naudojimo kaip nuolatinio klasterio nustatymo.

Ankstesnė užklausa turėtų pateikti tokį rezultatą:

{
'pripažino' : tiesa ,
'atkaklus' : { } ,
'praeinantis' : {
'veiksmas' : {
'destruktyvus_reikalingas_pavadinimas' : 'netikras'
}
}
}


Kai pavyks, galite pašalinti visus klasterio indeksus vykdydami šią komandą:

garbanoti -XDELETE „http://localhost:9200/_all?pretty=true“ -H 'kbn-xsrf: ataskaitų teikimas'

4 pavyzdys: Elasticsearch Ištrinkite visus indeksus, kurie atitinka konkrečius pavadinimus

Jei norite pašalinti visus indeksus, atitinkančius konkretų šabloną, galite naudoti pakaitos simbolį (*).

Pavyzdžiui, norėdami pašalinti visus indeksus, prasidedančius pavadinimu kibana, galime vykdyti šią užklausą:

garbanoti -XDELETE „http://localhost:9200/kibana*“ -H 'kbn-xsrf: ataskaitų teikimas'


Ankstesnė užklausa pašalina visus indeksus, prasidedančius raide kibana.

PASTABA: ankstesnei užklausai reikia naudoti pakaitos simbolius. Taigi, kaip parodyta ankstesniame skyriuje, turite įjungti pakaitos simbolių palaikymą.

Išvada

Šis vadovas išmokė naudoti Elasticsearch trynimo indekso API. Taip pat sužinojote, kaip klasteryje įjungti pakaitos simbolių palaikymą, pašalinti visus indeksus ir pašalinti indeksus, atitinkančius konkretų šabloną.