https://www.elastic.co/v7

ทาง 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 ของข้อมูลจากระบบต่างให้ได้มาตรฐาน
ทำให้สามารถนำข้อมูลไปวิเคราะห์ได้ง่ายขึ้น

ลองไปใช้งานกันดูครับ
ว่าระบบปัจจุบันของเราต้องเปลี่ยนและแก้ไขอะไรบ้าง