คาราเมล: ฐานข้อมูลหลายมิติสําหรับการใช้งานความเร็วสูงโดยใช้ทฤษฎี K-d tree และ Nearest Neighbor Search
- ชื่อนักเรียนผู้จัดทำโครงงานวิทยาศาสตร์
พงษ์พนิชย์ ละอองเพชร, ชิษณุพงษ์ รองปาน, อัฑฒกร ปราบพล
- อาจารย์ที่ปรึกษาโครงงานวิทยาศาสตร์
ชนะภัย ชลธาร, คณิศร เสมพืช
- โรงเรียนที่กำกับดูแลโครงงานวิทยาศาสตร์
- ปีที่จัดทำโครงงานวิทยาศาสตร์
บทคัดย่อโครงงานวิทยาศาสตร์
คาราเมลเป็นฐานข้อมูลหลายมิติที่นํา K-d tree มาใช้งานเพื่อความเร็วสูงและการใช้ memory ตํ่า โดยทําในภาษา low level ชื่อว่า Rust
สาเหตุที่จัดทําเพราะว่าเรามีฐานข้อมูลหลายมิติอยู่หลายเจ้าให้ใช้งาน แต่ส่วนใหญ่จะบังคับให้เราใช้ embeddings ของเขา ไม่อนุญาติให้ใช้ของเราเอง คาราเมลอนุญาติให้ผู้ใช้นํา embeddings ของตัวเอง หรือใช้ embedding ของเจ้าอื่นก็ได้
โดยใช้ 3 codebase
1: carameldb: ตัวฐานข้อมูลหลัก (Rust)
2: caramel-javascript: api สําหรับให้ผู้ใช้งาน connect กับ caramel โดยไม่ต้องทํา request เอง (Typescript)
3: caramel-pack: server ที่รวม embedding ให้ใช้ สามารถเปิดแล้วไปใช้กับ caramel ได้เลย (Python)
ประโยชน์ของคาราเมลคือช่วยให้บริษัท enterprise สามารถนํา caramel ไปใช้งานได้เลยโดยไม่ต้องเลือก embeddings เพราะใช้ของตัวเองได้เลย