Jestem nowy w ElasticSearch . Próbuję wymyślić, jak usunąć dane z ElasticSearch. Usunąłem swoje indeksy. Wydaje się jednak, że to nie usuwa samych danych. Inne rzeczy, które widziałem, wskazują na funkcję Usuń według zapytania . Jednak nie jestem nawet pewien, o co zapytać. Znam swoje indeksy. Zasadniczo chciałbym dowiedzieć się, jak to zrobić
DELETE FROM [Index]
Od PostMan w Chrome. Nie mam jednak szczęścia. Wygląda na to, że bez względu na to, co robię, dane się zawieszają. Do tej pory z powodzeniem usunąłem indeksy, używając komendy DELETE HTTP w PostMan i używając adresu URL takiego jak:
http://localhost:9200/[indexName]
Wydaje się jednak, że nie usuwają one samych danych (czyli dokumentów).
elasticsearch
użytkownik687554
źródło
źródło
Odpowiedzi:
Możesz usunąć za pomocą
cURL
lub wizualnie jednego z wielu narzędzi, które entuzjaści otwartego oprogramowania stworzyli dla Elasticsearch.Korzystanie z cURL
na przykład
Następnie otrzymasz odpowiedź, czy to się udało, czy nie. Możesz również usunąć cały indeks lub typy za pomocą indeksu, możesz także usunąć typ, pomijając identyfikator dokumentu w ten sposób -
Jeśli chcesz usunąć indeks -
Jeśli chcesz usunąć więcej niż jeden indeks zgodny z pewną konwencją nazewnictwa (zwróć uwagę na
*
symbol wieloznaczny), -Naocznie
Istnieją różne narzędzia, jak wspomniano powyżej, nie wymienię ich tutaj, ale połączę cię z jednym, który umożliwia natychmiastowe rozpoczęcie pracy, znajdującym się tutaj . To narzędzie nazywa się KOPF. Aby połączyć się z hostem, kliknij logo w lewym górnym rogu i wprowadź adres URL klastra.
Po połączeniu będziesz mógł administrować całym klastrem, usuwać, optymalizować i dostrajać swój klaster.
źródło
Jeśli kiedykolwiek będziesz musiał usunąć wszystkie indeksy, może się to przydać:
PowerShell:
źródło
Dokumentacja (lub The Definitive Guide ) mówi, że można również użyć następnego kwerendę, aby usunąć wszystkie indeksy:
I jest ważna uwaga:
źródło
Musisz wysłać
DELETE
zapytanie doMożesz także usunąć pojedynczy dokument:
Proponuję użyć elastichammera .
Po usunięciu możesz sprawdzić, czy indeks nadal istnieje z następującym adresem URL:
http://[your_host]:9200/_stats/
Powodzenia!
źródło
Usunięcie indeksu spowoduje usunięcie mapowania i pisanie dalej. możesz usunąć wszystkie wiersze za pomocą następującego zapytania
Jednak dla powyższego zapytania musisz zainstalować wtyczkę usuwania według zapytania, ponieważ Elasticsearch 2.0.0-beta1 usunięcie według zapytania zostało usunięte z głównego interfejsu API
Po więcej
http://blog.appliedinformaticsinc.com/how-to-delete-elasticsearch-data-records-by-dsl-query/
źródło
źródło
Zmiana
http
dohttps
jeśli używasz certyfikatu SSL w was aplikacjiźródło
Możesz usunąć indeks w pythonie w następujący sposób
źródło
najprostszy sposób!
gdzie
twitter
jest indeks w wyszukiwaniu elastycznymref; https://www.elastic.co/guide/en/elasticsearch/reference/current/docs-delete-by-query.html
źródło
W przypadku masowego usuwania według zapytania można użyć specjalnego interfejsu API usuwania według zapytania :
W historii ten interfejs API został usunięty, a następnie ponownie wprowadzony
Kto to interesujący ma długą historię.
źródło
Chciałem usunąć indeks logstash i dużo szukałem różnych narzędzi, takich jak curl. Ale znalazłem rozwiązanie na końcu. Zaloguj się do Kibana. Przejdź do zakładki Dev Tools i wpisz
DELETE /logstash-*
w polu zapytania i naciśnij zielony przycisk strzałki. jeśli zostanie „potwierdzony”: prawda w odpowiedzi oznacza, że dane zostały usunięte.źródło
Aby wyświetlić listę indeksów
curl -L localhost:9200/_cat/indices
9200
port domyślny [zmień port, jeśli używasz innego portu]Prawdopodobnie znajdziesz wszystkie indeksy zaczynające się na
logstash-yyyy-mm-dd
format (logstash- *)Możesz zobaczyć wszystkie indeksy i użyć
Aby usunąć indeksy i dane, uruchom następujące polecenie.
curl -XDELETE localhost:9200/index_name
(Które usuną zarówno dane, jak i indeksy).źródło
Tutaj jest wiele dobrych odpowiedzi, ale jest też coś, co chciałbym dodać:
źródło
Możesz usunąć cały indeks, typ dokumentu lub dane identyfikatora podmiotu. są to trzy sposoby:
curl -XDELETE localhost: 9200 / nazwa_indeksu
curl -XDELETE localhost: 9200 / nazwa_indeksu / typ dokumentu
curl -XDELETE localhost: 9200 / nazwa_indeksu / doc-type / documentId
a jeśli chcesz usunąć cały indeks, wybierz symbol wieloznaczny.
źródło
Możesz również usunąć indeks za pomocą akcji DELETE w „elasticsearch head” ( wtyczka do Chrome ). Dodaj go do swojego chrome i podłącz go do swojego hosta. Tam znajdziesz wszystkie swoje indeksy, a jeśli klikniesz przycisk czynności pod indeksem, który chcesz usunąć, znajdziesz opcję USUŃ w menu rozwijanym. kliknij i wpisz DELETE w wyskakującym okienku. Twój indeks zostanie usunięty. Rozszerzenie „Elasticsearch head” to łatwy sposób na przeglądanie indeksów i danych oraz zarządzanie nimi.
źródło
Możesz użyć rozszerzenia chrome elasticsearch-head, aby usunąć indeks
źródło
Możesz usunąć indeks za pomocą Kibana Console:
Aby uzyskać cały indeks:
Aby usunąć określony indeks:
źródło
Możesz usunąć jeden lub więcej indeksów, które naprawdę usuwają ich pliki z dysku . Na przykład:
Gdzie
$INDEXNAME
może być nazwa indeksu (np.users_v2
), Indeksy N oddzielone przecinkiem (npusers_v2,users_v3
.). Wzorzec indeksu (np.users_*
) Lub_all
też działa, chyba że jest zablokowany w konfiguracji przezaction.destructive_requires_name: true
.Usuwanie pojedynczych dokumentów jest możliwe, ale nie spowoduje to natychmiastowego ich wyczyszczenia . Usunięcie to tylko miękkie usunięcie, a dokumenty są naprawdę usuwane podczas scalania segmentów . W tej prezentacji znajdziesz wiele szczegółów na temat segmentów i połączeń . Chodzi o Solr, ale scalenia pochodzą od Lucene, więc masz te same opcje w Elasticsearch.
Po powrocie do interfejsu API możesz usunąć pojedyncze dokumenty według identyfikatora (podaj wartość routingu, jeśli indeksujesz za pomocą routingu):
Lub przez zapytanie:
źródło
Powiedz, że muszę usunąć indeks
filebeat-7.6.2-2020.04.30-000001
i wykonałem go za pomocą opcji curl DELETE (curl -X DELETE "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
) i powoduje to problem z uwierzytelnieniem, jak poniżej;W tym miejscu powinieneś uwierzytelnić żądanie zwijania przy użyciu nazwy użytkownika i hasła podanych dla Elasticsearch. Spróbuj więc
curl -X DELETE -u myelasticuser:myelasticpassword "localhost:9200/filebeat-7.6.2-2020.04.30-000001?pretty"
spowoduje {{potwierdzono ": prawda} .
źródło