Pencarian Elastik

Cara Memetik Indeks Elasticsearch Delete

Cara Memetik Indeks Elasticsearch Delete
Elasticsearch menyukai data; tidak ada yang boleh mempertikaikan perkara itu. Walau bagaimanapun, data boleh menjadi berlebihan dan tidak berguna pada satu ketika atau yang lain, yang memerlukan penghapusannya.

Nasib baik, dengan Elasticsearch, ketika data menjadi berlebihan, yang perlu anda lakukan hanyalah mengakses alat untuk melakukan permintaan dan memindahkan data melalui rangkaian.

Panduan ringkas ini akan menunjukkan kepada anda cara menggunakan Elasticsearch API yang hebat untuk menghapus dokumen dan indeks.

NOTA: Kami menganggap bahawa anda menjalankan Elasticsearch di sistem anda dan anda mempunyai alat untuk membuat permintaan seperti cURL. Kami juga menyediakan permintaan Kibana mentah jika anda menggunakan Konsol Kibana (disyorkan).

Cara Menyenaraikan Indeks?

Sekiranya anda ingin memadam dan mengindeks di Elasticsearch, pertama anda perlu mengesahkannya sebelum menghantar permintaan DELETE.

Sekiranya anda cuba memadam indeks yang tidak ada, anda akan mendapat ralat, seperti yang ditunjukkan di bawah:

HAPUS / ini_index_does_not_exist

Untuk arahan cURL:

curl -XDELETE "http: // localhost: 9200 / this_index_does_not_exist"

Menghapus indeks akan memberikan ralat sebagai:


"ralat":
"root_cause": [

"type": "index_not_found_exception",
"alasan": "tidak ada indeks seperti ini [this_index_does_not_exist]",
"index_uuid": "_na_",
"sumber.taip ":" index_or_alias ",
"sumber.id ":" ini_index_does_not_exist ",
"indeks": "ini_index_does_not_exist"

],
"type": "index_not_found_exception",
"alasan": "tidak ada indeks seperti ini [this_index_does_not_exist]",
"index_uuid": "_na_",
"sumber.taip ":" index_or_alias ",
"sumber.id ":" ini_index_does_not_exist ",
"indeks": "ini_index_does_not_exist"
,
"status": 404

Terdapat pelbagai cara untuk memeriksa sama ada indeks wujud; yang terbaik ialah menyenaraikan namanya. Contohnya, anda boleh menggunakan wildcard untuk memadankan nama tertentu.

Permintaan contoh di bawah menyenaraikan indeks dengan nama te *

DAPATKAN / te *

Perintah cURL adalah:

curl -XGET "http: // localhost: 9200 / te *"

Perintah ini harus mengembalikan semua indeks yang sesuai dengan corak tertentu, yang membolehkan anda mengingat hanya sebahagian nama indeks yang ingin anda hapus.


"temp":
"alias": ,
"pemetaan": ,
"tetapan":
"indeks":
"penghalaan":
"peruntukan":
"sertakan":
"_tier_preference": "data_content"


,
"number_of_shards": "1",
"disediakan_nama": "temp",
"tarikh_ciptaan": "1611180802266",
"number_of_replicas": "1",
"uuid": "c7dOH6MQQUmHM2MKJ73ekw",
"versi":
"dibuat": "7100299"



,
"temp_1":
"alias": ,
"pemetaan": ,
"tetapan":
"indeks":
"penghalaan":
"peruntukan":
"sertakan":
"_tier_preference": "data_content"


,
"number_of_shards": "1",
"disediakan_nama": "temp_1",
"tarikh_ciptaan": "1611180811874",
"number_of_replicas": "1",
"uuid": "pq1UUR2XTZS3xfs6Hxr4gg",
"versi":
"dibuat": "7100299"



,
"temp_2":
"alias": ,
"pemetaan": ,
"tetapan":
"indeks":
"penghalaan":
"peruntukan":
"sertakan":
"_tier_preference": "data_content"


,
"number_of_shards": "1",
"disediakan_nama": "temp_2",
"tarikh_ciptaan": "1611180815041",
"number_of_replicas": "1",
"uuid": "8NdXWPuBTLe6r4eZ407W9Q",
"versi":
"dibuat": "7100299"




Cara lain adalah dengan menambahkan parameter ign_unavailable pada permintaan. Sebagai contoh:

HAPUS / abaikan_me?abaikan_ tidak tersedia = benar
Untuk pengguna cURL:
[cc lang = "text" width = "100%" height = "100%" escaped = "true" theme = "blackboard" nowrap = "0"]
curl -XDELETE “http: // localhost: 9200 / ign_me?abaikan_ tidak tersedia = benar ”

Cara Memadam sebuah  Indeks?

Setelah anda mempunyai indeks yang ingin anda hapus dari Elasticsearch, gunakan permintaan HAPUS diikuti dengan nama indeks.

Sintaks umum adalah:

HAPUS /

Nama indeks boleh berupa indeks tertentu atau wildcard yang memilih sekumpulan indeks. Pastikan menggunakan kad liar dengan betul; jika tidak, anda mungkin membuang indeks yang salah.

NOTA: Menghapus indeks Elasticsearch menggunakan alias tidak dibenarkan.

Pertimbangkan contoh permintaan di bawah yang membuang indeks temp_1:

HAPUS / temp_1

Untuk arahan cURL:

curl -XDELETE "http: // localhost: 9200 / temp_1"

Melaksanakan perintah ini harus bertindak balas dengan objek JSON, yang menunjukkan kejayaan penghapusan indeks.


"Diakui": benar

Elasticsearch cukup pintar untuk mengetahui bahawa anda boleh membuang indeks secara tidak sengaja. Oleh itu, anda boleh menetapkan jenis ungkapan wildcard yang dibenarkan.

Jenis ungkapan wildcard ini merangkumi:

  • Semua: Termasuk semua indeks, termasuk terbuka, tertutup, dan tersembunyi (bermula dengan)
  • Buka: Termasuk indeks terbuka sahaja
  • Tertutup: Termasuk indeks tertutup sahaja
  • Tiada: Tidak dinyatakan ungkapan wildcard.

Kesimpulannya

Untuk panduan ringkas dan ringkas ini, kami membincangkan proses penggunaan Elasticsearch untuk menghapus indeks dari kluster. Kami juga membincangkan cara mudah yang boleh anda laksanakan untuk mengelakkan kesilapan pada indeks yang tidak ada.

Terima kasih kerana membaca.

Cara Menunjukkan Kaunter FPS dalam Permainan Linux
Permainan Linux mendapat dorongan utama ketika Valve mengumumkan sokongan Linux untuk klien Steam dan permainan mereka pada tahun 2012. Sejak itu, ban...
Cara memuat turun dan Mainkan Sid Meier's Civilization VI di Linux
Pengenalan permainan Civilization 6 adalah konsep moden mengenai konsep klasik yang diperkenalkan dalam siri permainan Age of Empires. Idea itu cukup ...
Cara Memasang dan Memainkan Doom di Linux
Pengenalan Doom Seri Doom berasal dari tahun 90an selepas pembebasan Doom yang asal. Ini adalah hit seketika dan sejak saat itu dan seterusnya siri pe...