เมื่อเดือนธันวาคมที่ผ่านมา MySQL ประกาศเพิ่มฟีเจอร์การรันโค้ดภาษา JavaScript จากในฐานข้อมูลโดยตรง (stored programs) ลักษณะเดียวกับที่ Oracle Database ทำได้มาก่อนหน้านี้ (เวอร์ชัน 21c เป็นต้นมา)
เหตุผลของการรันโค้ด JavaScript ในฐานข้อมูลโดยตรง มีเพื่อให้ไม่ต้องดึงข้อมูลออกมาจากฐานข้อมูลก่อน (minimize data movement) เหมาะสำหรับกรณีที่มีข้อมูลจำนวนมากๆ หรือแยกเก็บฐานข้อมูลอยู่คนละที่กับเซิร์ฟเวอร์ประมวลผล ช่วยลดทั้งเวลาและค่าใช้จ่ายในการดึงข้อมูลลง โดยเฉพาะการประมวลผลบนคลาวด์ที่มีค่าโอนย้ายข้อมูลราคาแพง
โค้ด JavaScript จะถูกรันผ่าน GraalVM ซึ่งเป็นคอมไพเลอร์ของ Oracle ที่ใช้รันภาษาโปรแกรมได้หลายภาษา (เช่น JavaScript, Java, Ruby, Python, R) โดยจำเป็นต้องใช้ไลเซนส์ GraalVM Enterprise Edition เวอร์ชันเสียเงินเท่านั้น
ตัวอย่างการรันโค้ดสามารถใช้ JavaScript จากคำสั่ง SQL ได้ และการที่ GraalVM รันอยู่ในสภาพแวดล้อม VM sandbox ทำให้โค้ดไม่สามารถไปยุ่งกับโมดูลอื่นๆ ของเซิร์ฟเวอร์ MySQL ช่วยเรื่องความปลอดภัยในภาพรวม
Comments
เฮ้ JS นายจะไปอยู่ทุกที่แบบนี้ไม่ได้นะ 555
..: เรื่อยไป