ทาง Elastic เพิ่งปล่อย Elastic stack 7.9 ออกมาให้ใช้งาน
มีสิ่งที่น่าสนใจเยอะมาก (จะเยอะไปไหน)
หนึ่งในนั้นคือ Elasticsearch ซึ่งเป็นหัวใจหลักของ Elastic stack เลย
เนื่องจากเป็นที่จัดเก็บข้อมูลทุก ๆ อย่างของระบบนั่นเอง
ดังนั้น การปรับปรุงและการเพิ่มเติม feature ของ Elasticsearch
จึงส่งผลกระทบอย่างมาก
ใน Elasticsearch 7.9 มี feature ใหม่ ๆ ที่น่าสนใจดังนี้
- Data stream
- Wildcard data type เป็นชนิดข้อมูลใหม่ ช่วยทำให้การค้นหาข้อมูลเจอง่ายขึ้น มาพร้อมกับ performance ที่ดีขึ้น
Data Stream คืออะไร
เป็นแนวคิดใหม่ของการจัดการข้อมูลในรูปแบบของ time-serie
หรือข้อมูลที่มาจากระบบ Logging, monitoring และ IoT ต่าง ๆ นั่นเอง
เพื่อช่วยให้ง่ายต่อการ scale, เก็บ, ค้นหา
แน่นอนว่า ช่วยลดค่าใช้จ่ายของการจัดเก็บและจัดการ
โดยที่ได้นำแนวทางของ ILM (Index Lifecycle Management) มาใช้งานด้วย
ทำให้ Data stream เป็นชื่อใหม่ของการจัดการข้อมูลใน Elasticsearch
โดยที่ index ของ DataSteam จะมีรูปแบบดังนี้
ในการค้นหาจะไปดึงข้อมูลจาก index ต่าง ๆ
ส่วนการ index data จะไปยัง index ล่าสุด
เพิ่มชนิดข้อมูล wildcard ขึ้นมาใหม่
ช่วยทำให้การค้นหาสะดวก ง่ายและรวดเร็วขึ้น
โดยเฉพาะการใช้งานสำหรับข้อมูลด้าน security, monitoring และ log
เนื่องจากข้อมูลชนิด text และ keyword ไม่ตอบโจทย์เรื่องเหล่านี้
การทำงานภายในของ wildcard data type
จะใช้หลักการทำงานของ n-gram สำหรับการค้นหา
โดยใช้งาน 3-gram
และเก็บข้อมูลของ doucment นั้น ๆ ด้วย binary doc value
ตัวอย่างการใช้งาน
ต้องทำการกำหนด mapping ของ field ที่ต้องการก่อนเสมอ
และทำการ indexing และ query ด้วย widecard query นั่นเอง
แถมยังมี flow การตัดสอนใจว่า เมื่อใดต้องใช้งาน
ลองใช้งานดูนะครับ ส่วน Kibana ได้ข่าวว่า
ทำการเปลี่ยนแปลง architecture ด้วย