![](http://www.somkiat.cc/wp-content/uploads/2019/02/image-8-1024x544.png)
ทาง Elastic ได้ปล่อย Elastic Stack 7.0.0 beta 1 ออกมาให้ลองทดสอบใช้กันดูแล้ว
ใน stack ก็ประกอบไปด้วยตัวหลัก ๆ คือ
- Elasticsearch
- Logstash/Beat
- Kibana
มาดูกันว่าแต่ละตัวมีอะไรน่าสนใจบ้าง โดยเฉพาะกับ Elasticsearch
เริ่มจาก Elasticsearch 7
ความสามารถที่ปรับปรุงเด็ด ๆ คือ
ความเร็วในการดึงข้อมูลเป็นเป้าหมายหลักของระบบเลย
โดยค่าจำนวนของเอกสารที่เจอจะไม่ถูกต้องเสมอไป
เพราะว่าทำให้การทำงานช้าลงไปอย่างมาก
และการกำหนดจำนวนผลการค้นหาที่นำมาคำนวณค่า score
หรือความเหมือนสูงสุดไว้ที่ 10,000 document ซึ่งเป็นค่า default
แน่นอนว่าเปลี่ยนได้ ส่งผลให้การค้นหาเร็วขึ้น
แต่วิธีการนี้ไม่ได้ใช้กับการ aggregate นะ
มีเรื่องที่ผมใช้งานบ่อย ๆ คือ Function Score
สำหรับการจัดการ score ranking ของเอกสารต่าง ๆ
ซึ่งตอนนี้เป็น Function Score 2.0 แล้วหรือ Script Score Query
กับอีกอย่างที่รอมานานคือ
ตอนนี้สามารถวิเคราะห์ข้อมูลในหน่วยเวลา nanosecond แล้ว
เพราะว่าที่ผ่านมามีหน่วยเล็กที่สุดคือ milisecond นั่นเอง
ทำให้เห็นว่า มี use case ที่ต้องการวิเคราะห์ข้อมูล
ในหน่วยเวลาที่เร็วและละเอียดขึ้นอย่างมาก
การสร้างข้อมูลมันเร็วจริง ๆ
เรื่องอื่น ๆ ที่น่าสนใจ เช่น
- สนับสนุน JDK 11
- ปรับปรุงการจัดการข้อมูลในและระหว่าง Cluster เช่น soft-delete index และการ discovery host เป็นต้น
- ใครใช้ Elasticsearch 5.0 ไม่สามารถ reindex มา 7 ได้ตรง ๆ ต้อง reindex เป็น 6 ก่อนนะ
- เรื่อง breaking change นี่ต้องอ่านให้ดี ๆ
ส่วนอีกสองตัวคือ Kibana และ Logstash ก็มีเปลี่ยนแปลงเช่นกัน
Kibana ก็ทำการเปลี่ยน UI และ Navigation ต่าง ๆ
รวมทั้งมี Dark Theme ให้แล้วด้วย
รวมทั้ง feature อื่น ๆ ที่ใน community ขอเพิ่ม
ทั้ง auto-suggestion และ Map ที่ดีขึ้น
ส่วนพวก Beat และ Logstash ก็เพิ่มการ integrate ไปยังระบบอื่น ๆ ได้มากขึ้น
ทั้ง CouchDB, NATS และ MariaDB เป็นต้น
อีกอย่างหนึ่งที่น่าสนใจคือ Elastic Common Schema (ECS)
สำหรับการกำหนด schema ของข้อมูลที่จะนำเข้า Elasticsearch
ควบคุม schema ของข้อมูลจากระบบต่างให้ได้มาตรฐาน
ทำให้สามารถนำข้อมูลไปวิเคราะห์ได้ง่ายขึ้น
ลองไปใช้งานกันดูครับ
ว่าระบบปัจจุบันของเราต้องเปลี่ยนและแก้ไขอะไรบ้าง