Elasticsearch Hapus Semua Indeks

Elasticsearch Hapus Semua Indeks



Elasticsearch adalah mesin analitik dan pencarian sumber terbuka gratis yang mendukung ELK Stack. Elasticsearch memungkinkan berbagai saluran data menggunakan alat seperti Logstash untuk mengumpulkan dan menggabungkan data. Elasticsearch kemudian menyimpan data yang disediakan, memungkinkan aplikasi untuk mengakses, mencari, mengurutkan, dan memfilter data dalam jumlah besar hampir secara real-time. Elasticsearch juga memungkinkan Anda untuk memvisualisasikan berbagai data menggunakan alat bawaan.

Fitur-fitur tersebut membuat Elasticseach sangat cocok untuk mencari dan menyortir sejumlah besar data dengan minimal atau tanpa latensi. Jadi, baik Anda membuat mesin telusur atau menganalisis log, metrik, dan data teks lainnya, Elasticsearch adalah pilihan yang tepat.







Di jantung Elasticsearch adalah indeks. Indeks mengacu pada unit yang bertanggung jawab untuk menyimpan dokumen di Elasticsearch. Indeks relatif setara dengan database dalam konteks database relasional. Misalnya, Anda dapat memiliki indeks yang menyimpan semua data untuk log aplikasi web.



Seperti semua database, Anda mungkin menghadapi skenario di mana Anda perlu menghapus semua data dari cluster Anda, memungkinkan Anda untuk memulai dengan yang bersih.



Artikel ini menunjukkan cara menggunakan fitur Elasticsearch API untuk menghapus semua indeks dari cluster Anda.





PERHATIAN: Metode dan teknik yang digunakan dalam artikel ini akan menyebabkan hilangnya data. Kami tidak bertanggung jawab atas kehilangan data yang mungkin terjadi karena petunjuk dalam artikel ini.

Elasticsearch Hapus Indeks API

Jika Anda memulai Elasticsearch, Anda perlu mengetahui cara melakukan panggilan API dasar. Ini karena Elasticsearch memanfaatkan API secara maksimal.



Seperti yang bisa Anda tebak, kami menggunakan Delete Index API untuk menghapus indeks dari sebuah cluster. Sintaks untuk permintaan penghapusan indeks adalah seperti yang ditunjukkan:

MENGHAPUS /< indeks >


Permintaan menghapus indeks yang ditentukan dan dokumen yang disimpan, pecahan, dan semua metadatanya.

Ingatlah bahwa ini tidak akan menghapus komponen Kibana apa pun yang terkait dengan indeks yang ditentukan seperti tampilan data, dll.

Anda dapat menentukan satu atau beberapa indeks dengan memisahkannya dengan koma. Contoh sintaks seperti yang ditunjukkan:

MENGHAPUS / nama_indeks
MENGHAPUS / indeks1, indeks2, indeks3... indeksN


Elasticsearch mencegah Anda menggunakan alias Indeks saat menghapus indeks. Sebagai gantinya, Anda diharuskan menggunakan nama indeks.

Contoh 1: Elasticsearch Hapus Indeks

Contoh berikut menunjukkan cara menggunakan Elasticsearch delete index API untuk menghapus indeks yang ada dari cluster:

keriting -XDELETE 'http://localhost:9200/kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: pelaporan'


Permintaan sebelumnya mengirimkan permintaan DELETE ke API hapus. Ini harus menghapus indeks dengan nama 'kibana_sample_data_logs'.

Output yang dihasilkan adalah seperti yang ditunjukkan:

{
'diakui' : BENAR
}

Contoh 2: Elasticsearch Hapus Beberapa Indeks

Kami dapat menghapus beberapa indeks dengan meneruskannya sebagai daftar yang dipisahkan koma. Contoh kueri seperti yang ditunjukkan:

keriting -XDELETE 'http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: pelaporan'


Perintah sebelumnya menghapus indeks yang ditentukan dan mengembalikan pesan seperti yang ditunjukkan:

{
'diakui' : BENAR
}


Catatan: Jika indeks tidak ada, Elasticsearch mengembalikan kesalahan seperti yang ditunjukkan:

Contoh 3: Elasticsearch Hapus Semua Indeks

Kita dapat menggunakan wildcard _all di API indeks hapus untuk menghapus semua indeks dari sebuah cluster. API indeks penghapusan akan, secara default, mencegah Anda meneruskan karakter pengganti dalam permintaan.

Anda dapat menonaktifkan ini dengan menyetel action.desctructive_requires_name ke false.

Kueri berikut menunjukkan cara mengaktifkan penggunaan karakter pengganti di API indeks hapus:

keriting -XPUT 'localhost:9200 /_cluster/pengaturan' -H 'kbn-xsrf: pelaporan' -H 'Jenis Konten: aplikasi/json' -d '
{
'sementara': {
'action.destructive_requires_name' : salah
}
}'


CATATAN: Meskipun Elasticsearch tidak merekomendasikan penggunaan pengaturan cluster sementara, hindari pengaturan parameter cluster yang merusak seperti penggunaan wildcard sebagai pengaturan cluster persisten.

Kueri sebelumnya harus mengembalikan hasilnya sebagai:

{
'diakui' : BENAR ,
'gigih' : { } ,
'sementara' : {
'tindakan' : {
'destructive_requires_name' : 'Salah'
}
}
}


Setelah berhasil, Anda dapat menghapus semua indeks di cluster dengan menjalankan perintah berikut:

keriting -XDELETE “http://localhost:9200/_all?pretty=true” -H 'kbn-xsrf: pelaporan'

Contoh 4: Elasticsearch Hapus Semua Indeks yang Cocok dengan Nama Tertentu

Jika Anda ingin menghapus semua indeks yang cocok dengan pola tertentu, Anda dapat menggunakan karakter wildcard (*).

Misalnya, untuk menghapus semua indeks yang dimulai dengan nama kibana, kita dapat menjalankan kueri berikut:

keriting -XDELETE “http://localhost:9200/kibana*” -H 'kbn-xsrf: pelaporan'


Permintaan sebelumnya menghapus semua indeks yang dimulai dengan kibana.

CATATAN: Permintaan sebelumnya memerlukan penggunaan wildcard. Oleh karena itu, Anda harus mengaktifkan dukungan wildcard seperti yang ditunjukkan di bagian sebelumnya.

Kesimpulan

Panduan ini mengajarkan Anda cara menggunakan API indeks penghapusan Elasticsearch. Anda juga mempelajari cara mengaktifkan dukungan wildcard di cluster Anda, menghapus semua indeks dan menghapus indeks yang cocok dengan pola tertentu.