Elasticsearch
ฐานข้อมูล
ค้นหา ดัชนี และ aggregate ข้อมูล Elasticsearch ผ่านการสนทนา
- ค้นหาและสอบถาม Elasticsearch indices
- ดัชนี และจัดการเอกสาร
- ตั้งค่า mappings และ settings
คุณสามารถทำอะไรได้บ้าง
ค้นหาโดยไม่ต้องเขียน DSL
อธิบายการค้นหาของคุณเป็นภาษาอังกฤษธรรมดา — "ค้นหาบันทึกข้อผิดพลาดทั้งหมดจากบริการการชำระเงินใน 2 ชั่วโมงที่ผ่านมาด้วยรหัสสถานะ 5xx" — และ Neotask สร้าง Query DSL ที่ถูกต้อง ดำเนินการ และนำเสนอ Hit ในรูปแบบที่อ่านได้
สร้างการรวมกลุ่มสำหรับการวิเคราะห์
ขอการรวมกลุ่มโดยไม่ต้องเรียนรู้ไวยากรณ์การรวมของ Elasticsearch: "แสดงจำนวนคำขอตามจุดสิ้นสุดและเวลาตอบสนองโดยเฉลี่ย ที่ฝากไว้เป็นชั่วโมง" Neotask เขียนโครงสร้าง aggs ที่ซ้อนกันและจัดรูปแบบผลลัพธ์เป็นตาราง
ตรวจสอบความสมบูรณ์ของคลัสเตอร์
ขอรายงานสถานะคลัสเตอร์: ความสมบูรณ์โดยรวม (เขียว/เหลือง/แดง) ชาร์ดที่ยังไม่ได้กำหนด และเหตุใดจึงถูกยกเลิกการกำหนด การใช้ดิสก์ของโหนด และดัชนีใดๆ ที่มีความเสี่ยงหรือไม่ Neotask สอบถาม _cat และ _cluster APIs และอธิบายสิ่งที่จำเป็นต้องดำเนินการ
จัดการดัชนีและการแมป
สร้างดัชนีด้วยการแมปแบบกำหนดเอง เพิ่มฟิลด์ลงในการแมปที่มีอยู่ จัดทำดัชนีข้อมูลใหม่ และจัดการนามแฝง — ทั้งหมดนี้ผ่านการสนทนา Neotask ยืนยันการดำเนินการทำลายล้าง (เช่นการลบดัชนี) ก่อนดำเนินการ
ปรับแต่งและวินิจฉัยประสิทธิภาพ
ถามว่าทำไมข้อความค้นหาบางรายการจึงช้า รับคำอธิบายการวิเคราะห์โปรไฟล์ ระบุส่วนแบ่งข้อมูลยอดนิยม และค้นหาดัชนีที่มีความกดดันในการผสานสูง Neotask แปลข้อมูลภายในของ Elasticsearch เชิงเทคนิคให้เป็นคำแนะนำที่นำไปปฏิบัติได้
ลองถามดู
"ค้นหาดัชนีบันทึกสำหรับข้อผิดพลาดทั้งหมด 500 รายการจากชั่วโมงที่แล้ว"
"แสดงปริมาณคำขอตามบริการสำหรับวันนี้ โดยแบ่งออกเป็นกลุ่มรายชั่วโมง"
"ทำไมคลัสเตอร์ของฉันถึงเป็นสีเหลือง ชิ้นส่วนใดที่ยังไม่ได้กำหนด"
"สร้างดัชนีชื่อผลิตภัณฑ์พร้อมการจับคู่ชื่อ (ข้อความ) ราคา (ลอยตัว) และหมวดหมู่ (คำหลัก)"
"ดัชนีใดที่ใช้พื้นที่ดิสก์มากที่สุด"
"เหตุใดข้อความค้นหานี้จึงช้า" (วางข้อความค้นหาของคุณ JSON)
"ตั้งค่านโยบาย ILM เพื่อโรลโอเวอร์ดัชนีบันทึกทุกวันและลบหลังจาก 30 วัน"
"จัดทำดัชนีคำสั่งซื้อ-v1 ใหม่ในคำสั่งซื้อ-v2 ด้วยการแมปที่อัปเดต"เคล็ดลับมือโปร
รวมชื่อดัชนีและฟิลด์เวลาในข้อความแจ้งของคุณ: "ในดัชนี nginx-logs-* กรองเป็น 24 ชั่วโมงที่ผ่านมาโดยใช้ฟิลด์ @timestamp" เพื่อการสืบค้นที่แม่นยำและรวดเร็ว
ขอให้ Neotask ใช้บริบทตัวกรองแทนบริบทการค้นหาสำหรับตัวกรองบูลีนที่ไม่ให้คะแนน — มันจะปรับ DSL ของคุณให้เหมาะสมเพื่อประสิทธิภาพโดยอัตโนมัติ
เมื่อต้องจัดการกับชาร์ดที่ไม่ได้กำหนด ให้ขอเอาต์พุต "คำอธิบายการจัดสรร" และให้ Neotask ตีความมัน — JSON แบบดิบนั้นมีความหนาแน่นและยากที่จะแยกวิเคราะห์ด้วยตนเอง
สำหรับการเปลี่ยนแปลงการแมป ให้ Neotask ตรวจสอบเสมอว่ามีฟิลด์นี้อยู่แล้วก่อนที่จะเพิ่ม — Elasticsearch จะเพิกเฉยต่อการกำหนดฟิลด์ใหม่ด้วยประเภทอื่น ซึ่งทำให้เกิดข้อขัดแย้งในการแมป
ใช้นามแฝงดัชนีในข้อความแจ้งของคุณ เพื่อให้ Neotask กำหนดเป้าหมายนามแฝงแทนชื่อดัชนีเฉพาะ ทำให้ข้อความค้นหาของคุณเข้ากันได้กับดัชนีใหม่ในอนาคต