Elasticsearch Xóa tất cả các chỉ mục

Elasticsearch Xoa Tat Ca Cac Chi Muc



Elasticsearch là một công cụ phân tích và tìm kiếm mã nguồn mở miễn phí cung cấp năng lượng cho ELK Stack. Elasticsearch cho phép các đường ống dữ liệu khác nhau sử dụng các công cụ như Logstash để thu thập và tổng hợp dữ liệu. Sau đó, Elasticsearch lưu trữ dữ liệu được cung cấp, cho phép các ứng dụng truy cập, tìm kiếm, sắp xếp và lọc một lượng lớn dữ liệu trong thời gian gần như thực. Elasticsearch cũng cho phép bạn trực quan hóa các dữ liệu khác nhau bằng các công cụ tích hợp sẵn.

Các tính năng như vậy làm cho El Plasticeach rất thích hợp để tìm kiếm và sắp xếp một lượng lớn dữ liệu với độ trễ tối thiểu hoặc không có. Vì vậy, cho dù bạn đang tạo công cụ tìm kiếm hay phân tích nhật ký, số liệu và dữ liệu văn bản khác, Elasticsearch là một lựa chọn tuyệt vời.







Trung tâm của Elasticsearch là một chỉ mục. Chỉ mục đề cập đến đơn vị chịu trách nhiệm lưu trữ tài liệu trong Elasticsearch. Một chỉ mục tương đối tương đương với một cơ sở dữ liệu trong ngữ cảnh của cơ sở dữ liệu quan hệ. Ví dụ: bạn có thể có một chỉ mục chứa tất cả dữ liệu cho nhật ký của một ứng dụng web.



Giống như tất cả các cơ sở dữ liệu, bạn có thể gặp trường hợp cần xóa tất cả dữ liệu khỏi cụm của mình, cho phép bạn bắt đầu với một phương tiện chặn sạch.



Bài viết này hướng dẫn bạn cách sử dụng các tính năng của API Elasticsearch để xóa tất cả các chỉ mục khỏi cụm của bạn.





THẬN TRỌNG: Các phương pháp và kỹ thuật được sử dụng trong bài viết này sẽ dẫn đến mất dữ liệu. Chúng tôi không chịu trách nhiệm về bất kỳ mất mát dữ liệu nào có thể xảy ra do các hướng dẫn trong bài viết này.

API xóa chỉ mục Elasticsearch

Nếu bạn đang bắt đầu Elasticsearch, bạn sẽ cần biết cách thực hiện các lệnh gọi API cơ bản. Điều này là do Elasticsearch sử dụng tối đa các API.



Như bạn có thể đoán, chúng tôi sử dụng API Xóa chỉ mục để xóa một chỉ mục khỏi một cụm. Cú pháp cho các yêu cầu xóa chỉ mục như được hiển thị:

XÓA BỎ / < mục lục >


Yêu cầu xóa chỉ mục được chỉ định và các tài liệu, phân đoạn được lưu trữ và tất cả siêu dữ liệu của nó.

Hãy nhớ rằng điều này sẽ không loại bỏ bất kỳ thành phần Kibana nào được liên kết với chỉ mục được chỉ định, chẳng hạn như chế độ xem dữ liệu, v.v.

Bạn có thể chỉ định một hoặc nhiều chỉ số bằng cách phân tách chúng bằng dấu phẩy. Một cú pháp ví dụ như được hiển thị:

XÓA BỎ / index_name
XÓA BỎ / index1, index2, index3 ... indexN


Elasticsearch ngăn bạn sử dụng bí danh Chỉ mục khi xóa chỉ mục. Thay vào đó, bạn được yêu cầu sử dụng tên chỉ mục.

Ví dụ 1: Elasticsearch Delete Index

Ví dụ sau cho thấy cách sử dụng API chỉ mục xóa Elasticsearch để xóa chỉ mục hiện có khỏi cụm:

Xoăn -XDELETE 'http://localhost:9200/kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: báo cáo'


Yêu cầu trước đó sẽ gửi một yêu cầu DELETE tới API xóa. Thao tác này sẽ xóa chỉ mục có tên “kibana_sample_data_logs”.

Kết quả đầu ra như được hiển thị:

{
'thừa nhận' : thật
}

Ví dụ 2: Elasticsearch xóa nhiều chỉ số

Chúng tôi có thể xóa nhiều chỉ số bằng cách chuyển chúng dưới dạng danh sách được phân tách bằng dấu phẩy. Một truy vấn ví dụ như được hiển thị:

Xoăn -XDELETE 'http://localhost:9200kibana_sample_data_flights,kibana_sample_data_logs?pretty=true' -H 'kbn-xsrf: báo cáo'


Lệnh trước đó sẽ xóa các chỉ số được chỉ định và trả về một thông báo như được hiển thị:

{
'thừa nhận' : thật
}


Lưu ý: Nếu chỉ mục không tồn tại, Elasticsearch trả về lỗi như được hiển thị:

Ví dụ 3: Elasticsearch Xóa tất cả các chỉ số

Chúng tôi có thể sử dụng ký tự đại diện _all trong API xóa chỉ mục để xóa tất cả các chỉ mục khỏi một cụm. Theo mặc định, API xóa chỉ mục sẽ ngăn bạn chuyển các ký tự đại diện trong yêu cầu.

Bạn có thể vô hiệu hóa điều này bằng cách đặt action.desctructive_requires_name thành false.

Truy vấn sau đây cho bạn biết cách bật việc sử dụng các ký tự đại diện trong API chỉ mục xóa:

Xoăn -XPUT 'localhost: 9200 / _cluster / settings' -H 'kbn-xsrf: báo cáo' -H 'Content-Type: application / json' -d '
{
'tạm thời': {
'action.destructive_requires_name': false
}
} '


LƯU Ý: Mặc dù Elasticsearch không khuyến nghị sử dụng cài đặt cụm tạm thời, hãy tránh đặt các thông số cụm phá hủy chẳng hạn như sử dụng ký tự đại diện làm cài đặt cụm liên tục.

Truy vấn trước đó sẽ trả về kết quả là:

{
'thừa nhận' : thật ,
'kiên trì' : { } ,
'tạm thời' : {
'hoạt động' : {
'Destro_requires_name' : 'sai'
}
}
}


Sau khi thành công, bạn có thể xóa tất cả các chỉ số trong cụm bằng cách chạy lệnh sau:

Xoăn -XDELETE “http://localhost:9200/_all?pretty=true” -H 'kbn-xsrf: báo cáo'

Ví dụ 4: Elasticsearch Xóa tất cả các chỉ số phù hợp với tên cụ thể

Nếu bạn muốn xóa tất cả các chỉ số khớp với một mẫu cụ thể, bạn có thể sử dụng một ký tự đại diện (*).

Ví dụ: để xóa tất cả các chỉ số bắt đầu bằng tên kibana, chúng ta có thể chạy truy vấn sau:

Xoăn -XDELETE “http://localhost:9200/kibana *” -H 'kbn-xsrf: báo cáo'


Yêu cầu trước đó xóa tất cả các chỉ số bắt đầu bằng kibana.

LƯU Ý: Yêu cầu trước đó yêu cầu sử dụng các ký tự đại diện. Do đó, bạn phải bật hỗ trợ ký tự đại diện như được hiển thị trong phần trước.

Sự kết luận

Hướng dẫn này đã dạy bạn cách sử dụng API chỉ mục xóa Elasticsearch. Bạn cũng đã học cách bật hỗ trợ ký tự đại diện trong cụm của mình, xóa tất cả các chỉ số và xóa các chỉ số phù hợp với một mẫu cụ thể.