คืออะไร Elasticsearch
เครื่องมือค้นหาและวิเคราะห์
Elasticsearch เป็นเครื่องมือค้นหาและวิเคราะห์แบบกระจายและโอเพ่นซอร์สที่สร้างบน Apache Lucene มันให้ความสามารถในการค้นหาข้อความเต็ม การค้นหาแบบมีโครงสร้าง และการวิเคราะห์แบบเรียลไทม์
Elasticsearch คืออะไร
Elasticsearch เป็นฐานข้อมูล NoSQL ที่ปรับให้เหมาะสมสำหรับการค้นหาและวิเคราะห์ข้อมูลปริมาณมาก มันจัดทำดัชนีข้อมูลในรูปแบบ JSON และให้ REST API ที่ทรงพลังสำหรับการสืบค้น
คุณสมบัติหลัก
- การค้นหาข้อความเต็ม — การค้นหาภาษาธรรมชาติพร้อมคะแนนความเกี่ยวข้อง
- สถาปัตยกรรมแบบกระจาย — การขยายตัวแนวนอนข้ามคลัสเตอร์
- เรียลไทม์ — การจัดทำดัชนีและค้นหาแบบเกือบทันที
- RESTful API — การโต้ตอบแบบง่ายผ่าน HTTP
แนวคิดหลัก
- ดัชนี — คอลเลกชันของเอกสาร (คล้ายกับฐานข้อมูล)
- เอกสาร — หน่วยข้อมูลในรูปแบบ JSON
- ชาร์ด — พาร์ติชันแนวนอนของดัชนี
- เรพลิกา — สำเนาของชาร์ดสำหรับความทนทานต่อความผิดพลาด
กรณีการใช้งาน
- การค้นหาเว็บไซต์และแอปพลิเคชัน
- การวิเคราะห์บันทึก (ELK Stack)
- การตรวจสอบเมตริก
- การวิเคราะห์ธุรกิจ
- ระบบแนะนำ
ประโยชน์
- ความเร็วในการค้นหาข้ามเอกสารหลายพันล้าน
- สคีมาข้อมูลที่ยืดหยุ่น
- ภาษาสืบค้นที่หลากหลาย (Query DSL)
- การรวมกลุ่มสำหรับการวิเคราะห์
- ชุมชนที่กระตือรือร้น