Elasticsearch Poista kenttä

Elasticsearch Poista Kentta



'Elasticearch-indeksien kanssa työskennellessäsi saatat kohdata tapauksen, jossa joudut poistamaan kentän olemassa olevasta dokumentista. Valitettavasti Elasticsearch ei tarjoa alkuperäistä pyyntöä, jota voisimme käyttää mainitun toiminnon suorittamiseen.

Voimme kuitenkin käyttää dokumenttien päivityssovellusliittymää ja välittää komentosarjan, jonka avulla voimme poistaa kentän sen nimen perusteella.'







MERKINTÄ : Tämä prosessi edellyttää perustiedot Elasticsearch-komentosarjasta ja dokumenttien päivityssovellusliittymästä. Tutustu aiheeseen liittyviin asiakirjoihin tai opetusohjelmiimme saadaksesi lisätietoja.



Sukellaan sisään.



Tarkista, onko asiakirja olemassa

Ennen kuin poistat kentän tietystä dokumentista, on hyvä varmistaa, että kohdeasiakirja on hakemistossa.





Voimme käyttää hakusovellusliittymää kohdeasiakirjan hakemiseen.

Oletetaan esimerkiksi, että meillä on kibana_sample_logs_data-indeksi. Voimme etsiä hakemistosta asiakirjaa, joka sisältää tietyn IP-osoitteen.



MERKINTÄ : Yllä olevaa esimerkkiä käytetään vain havainnollistamiseen. Voit tarkistaa eri menetelmillä, onko tietty asiakirja saatavilla hakemistossa.

curl -XGET 'http://localhost:9200/kibana_sample_data_logs/_search' -H 'kbn-xsrf: raportointi' -H 'Sisältötyyppi: sovellus/json' -d'
{
'koko': 0,
'kysely': {'match': {
'ip': '171.24.97.162'
}}
}'

Tuloksena oleva tulos:

{
'otti': 3,
'timed_out': false,
'_shards': {
'yhteensä': 1,
'onnistui': 1,
'ohitettu': 0,
'epäonnistui': 0
},
'osumat': {
'kaikki yhteensä': {
'arvo': 17,
'relaatio': 'eq'
},
'max_score': null,
'osumat': []
}

}

Seuraavaksi yksinkertainen komentosarja voi poistaa kohdekentän asiakirjasta. Aloita kirjautumalla Kibana-konsoliisi ja suorittamalla komento:

curl -XPOST 'http://localhost:9200/kibana_sample_data_logs/_update/5pA49IIBkTjaZ6TtsiB5' -H 'kbn-xsrf: raportointi' -H 'Sisältötyyppi: sovellus/json' -d'
{
'script': 'ctx._source.remove('\''ip'\'')'
}'

Yllä oleva pyyntö käyttää kivutonta kontekstiohjelmaa asiakirjan päivittämiseen ja ip-kentän poistamiseen määritetyllä tunnuksella.

Lähtö:

{
'_index': 'kibana_sample_data_logs',
'_id': '5pA49IIBkTjaZ6TtsiB5',
'_versio': 2,
'tulos': 'päivitetty',
'_shards': {
'yhteensä': 2,
'onnistui': 2,
'epäonnistui': 0
},
'_seq_no': 14074,
'_ensisijainen_termi': 1
}

Kun asiakirja on päivitetty, voit varmistaa suorittamalla kyselyn.:

curl -XGET 'http://localhost:9200/kibana_sample_data_logs/_doc/5pA49IIBkTjaZ6TtsiB5' -H 'kbn-xsrf: raportointi'

Yllä olevan pyynnön tulee palauttaa asiakirjaan tallennetut tiedot määritetyllä tunnuksella.

Voimme varmistaa, että IP-kenttä ei ole enää asiakirjassa.

Johtopäätös

Tässä artikkelissa opit käyttämään Elasticsearchin komentosarjaominaisuuksia kentän poistamiseen olemassa olevasta asiakirjasta.

Kiitos kun luit!!