ArangoDB คืออะไร
ArangoDB เป็นฐานข้อมูล NoSQL หลายโมเดลแบบโอเพ่นซอร์สซึ่งสามารถดาวน์โหลดมาใช้งานได้ฟรี พร้อมด้วยโมเดลข้อมูลที่ยืดหยุ่นสำหรับเอกสารและกราฟ ได้รับการออกแบบมาให้เป็น “ฐานข้อมูลแบบหลายโมเดล (multi-model database)” สามารถรองรับการจัดเก็บข้อมูลได้หลายรูปแบบ ดังนี้ คือ ฐานข้อมูลแบบกราฟ ฐานข้อมูลแบบเอกสาร และฐานข้อมูลแบบ key-value ทำให้ผู้ใช้สามารถรวมโมเดลข้อมูลทั้งหมดในการสืบค้นเดียวได้อย่างอิสระ เนื่องจากแอปพลิเคชันมีความซับซ้อนมากขึ้น คุณจึงมักต้องการฐานข้อมูล NoSQL มากกว่าหนึ่งฐานข้อมูลในการจัดเก็บข้อมูล การใช้ฐานข้อมูลหลายโมเดลสามารถทำให้สถาปัตยกรรมของฐานข้อมูลในระบบง่ายขึ้นโดยการรวม NoSQL หลายประเภทไว้ในโครงสร้างพื้นฐานเดียว และด้วยภาษา AQL ซึ่งเป็นภาษาที่ใช้ในการสืบค้นข้อมูลสำหรับฐานข้อมูล ArangoDB คุณจึงสามารถเข้าถึงข้อมูลใดๆ หรือทั้งหมดของคุณได้ นอกจากนี้ โมเดลต่างๆ ยังสามารถรวมไว้ในแบบสอบถามเดียวได้ และด้วยคุณสมบัติของ ArangoDB ที่รองรับการจัดเก็บข้อมูลได้หลายรูปแบบ คุณจึงสามารถสร้างแอปพลิเคชันแบบ Lean ซึ่งสามารถปรับขนาดในแนวนอนด้วยโมเดลข้อมูลใดๆ หรือทั้งหมดจากทั้งสามโมเดลได้
การติดตั้ง ArangoDB บน Windows โดยใช้ Docker
การติดตั้งฐานข้อมูล ArangoDB บน Windows โดยใช้ Docker จำเป็นต้องมีแอพพลิเคชัน ดังนี้
- Windows Subsystem for Linux (WSL)
- เปิดใช้งาน Hyper-V บน Windows
- Linux Kernel Update Package
- ระบบปฏิบัติการ Ubuntu 24.04
- โปรแกรม Docker Desktop
เมื่อติดตั้งแอพพลิเคชันที่กล่าวมานี้ตามลำดับแล้ว ให้ติดตั้ง ArangoDB ตามขั้นตอนดังนี้
1. เปิดโปรแกรม Docker Desktop ขึ้นมา
2. ค้นหา image ที่ชื่อ arangodb ใน Docker Desktop โดยพิมพ์ arangodb ในช่องค้นหา จะปรากฏหน้าจอดังนี้
3. ในส่วน Tag ให้เลือกเป็นเวอร์ชันล่าสุดโดยเลือก latest เสร็จแล้วคลิกที่ปุ่ม Pull เพื่อเรียกใช้ image ชื่อ arangodb
4. รอให้โปรแกรม Docker Desktop ดึง image ชื่อ arangodb จนเสร็จสมบูรณ์
5. เปิดโปรแกรม Windows Terminal ขึ้นมา
6. เข้าสู่หน้าต่าง Windows PowerShell
7. พิมพ์คำสั่งดังนี้
docker run –pull=always –restart=unless-stopped -p=8529:8529 -e ARANGO_ROOT_PASSWORD=argent2025 –name arangodb -d arangodb
8. เรียกใช้หน้าต่าง Command Prompt ในโปรแกรม Windows Terminal
9. ค้นหา IP address ที่ใช้อยู่โดยพิมพ์คำสั่ง ipconfig
10. มองหา IPv4 Address ในส่วน Ethernet adapter Ethernet ก็จะพบ IP address ของเครื่องที่ใช้อยู่
11. เปิดโปรแกรมเว็บบราวเซอร์ขึ้นมา
12. พิมพ์ IP address ตามด้วยเครื่องหมาย colon (:) แล้วตามด้วยหมายเลขพอร์ท 8529 แล้วกด Enter ก็จะเข้าสู่หน้าจอดังรูป
13. กรอกชื่อผู้ใช้เป็น root และรหัสผ่านที่ได้กำหนดไว้ในส่วน ARANGO_ROOT_PASSWORD เมื่อตอนติดตั้ง ArangoDB
14. เมื่อกรอกชื่อผู้ใช้และรหัสผ่านถูกต้อง ก็จะเข้าสู่ขั้นตอนการเลือกฐานข้อมูล ในที่นี้ให้เลือกเป็น _system โดยคลิกที่ปุ่ม Select DB: _system
15. โปรแกรมเว็บบราวเซอร์ก็จะเข้าสู่หน้าจอการจัดการฐานข้อมูล ArangoDB
การติดตั้ง ArangoDB บน Ubuntu (Linux)
1. เปิดโปรแกรม Windows Terminal ขึ้นมา
2. เรียกใช้หน้าต่าง Ubuntu 24.04 ในโปรแกรม Windows Terminal เพื่อเรียกใช้ระบบปฏิบัติการ Ubuntu บน Windows
3. พิมพ์คำสั่ง sudo apt-get update เพื่ออัพเดตระบบปฏิบัติการ Ubuntu
4. ติดตั้งแพ็กเกจ curl, apt-transport-https, wget, software-properties-common, net-tools และ gnupg2 โดยพิมพ์คำสั่งดังนี้
sudo apt-get install -y wget curl apt-transport-https gnupg2 software-properties-common net-tools
5. ดาวน์โหลด key ไฟล์ของฐานข้อมูล ArangoDB โดยพิมพ์คำสั่ง ดังนี้
sudo wget -qO- https://download.arangodb.com/arangodb311/DEBIAN/Release.key | gpg –dearmor > arango-key.gpg
6. พิมพ์คำสั่งดังนี้
sudo mv arango-key.gpg /etc/apt/trusted.gpg.d
sudo chown root:root /etc/apt/trusted.gpg.d/arango-key.gpg
sudo chmod ugo+r /etc/apt/trusted.gpg.d/arango-key.gpg
sudo chmod go-w /etc/apt/trusted.gpg.d/arango-key.gpg
7. พิมพ์คำสั่งดังนี้
echo ‘deb https://download.arangodb.com/arangodb311/DEBIAN/ /’ | sudo tee /etc/apt/sources.list.d/arangodb.list
8. อัพเดตระบบปฏิบัติการโดยพิมพ์คำสั่ง sudo apt-get update
9. ติดตั้งฐานข้อมูล ArangoDB โดยพิมพ์คำสั่ง sudo apt-get install arangodb3=3.11.9-1
10. ในระหว่างการติดตั้ง จะมีหน้าจอให้ผู้ติดตั้งกำหนดรหัสผ่านสำหรับผู้ใช้ root ของฐานข้อมูล ให้ตั้งรหัสผ่านดังภาพ แล้วกดปุ่ม ตกลง
11. กรอกรหัสผ่านที่ได้ตั้งไว้ซ้ำอีกครั้ง ดังภาพ
12. เข้าสู่หน้าจอที่ถามผู้ติดตั้งว่าต้องการอัพเกรดไฟล์ฐานข้อมูลโดยอัตโนมัติหรือไม่ ให้ตอบว่า ใช่
13. เข้าสู่หน้าจอที่ถามผู้ติดตั้งว่าต้องการสำรองข้อมูลในฐานข้อมูลก่อนจะอัพเกรดหรือไม่ ให้ตอบว่า ใช่
14. จากนั้นจะทำการติดตั้งโปรแกรมจัดการฐานข้อมูลดังกล่าวจนเสร็จสมบูรณ์
15. พิมพ์คำสั่ง ifconfig เพื่อค้นหา IP address ของเครื่องบน Ubuntu
16. IP address ของเครื่องจะแสดงหลังคำว่า inet ในส่วน eth0 ดังรูป
17. พิมพ์คำสั่ง sudo nano /etc/arangodb3/arangod.conf เพื่อเปิดไฟล์ arangod.conf
18. แก้ไขข้อมูลในส่วน endpoint ให้เป็น tcp:<ip-address>:8529 ดังภาพ
19. แก้ไขเสร็จแล้วให้บันทึกไฟล์นี้ในชื่อเดิม
20. รีสตาร์ทเซอร์วิส arangodb3 โดยพิมพ์คำสั่ง sudo systemctl restart arangodb3
21. เปิดโปรแกรมเว็บบราวเซอร์ขึ้นมา
22. พิมพ์หมายเลขไอพีที่ได้จากการค้นหา ตามด้วยหมายเลขพอร์ทที่กำหนดไว้ในไฟล์ arangod.conf ก็จะเข้าสู่หน้าจอดังรูป
23. กรอกชื่อผู้ใช้เป็น root พร้อมทั้งกรอกรหัสผ่านที่ได้กำหนดเอาไว้ตอนติดตั้ง
24. เมื่อล็อกอินสำเร็จแล้ว ก็จะเข้าสู่ขั้นตอนการเลือกฐานข้อมูล ให้เลือกฐานข้อมูลเป็น _system แล้วกดปุ่ม Select DB:_system
25. โปรแกรมเว็บบราวเซอร์ก็จะเข้าสู่หน้าจอที่ให้ผู้ใช้จัดการฐานข้อมูล ArangoDB
การเข้าใช้งานฐานข้อมูล ArangoDB ผ่านเว็บ
ระบบปฏิบัติการ Windows
1. เปิดโปรแกรม Docker Desktop ขึ้นมา
2. เปิดโปรแกรม Windows Terminal ขึ้นมา
3. จากนั้นให้ทำตามขั้นตอนเหมือนตอนติดตั้ง ArangoDB บน Windows
4. เมื่อทราบ IP address ของเครื่องที่ใช้โดยใช้คำสั่ง ipconfig แล้ว ให้เปิดโปรแกรมเว็บบราวเซอร์ขึ้นมา
5. กรอก IP address ตามด้วยหมายเลขพอร์ท 8529 แล้วกดปุ่ม Enter ก็จะปรากฎหน้าจอดังรูป
6. พิมพ์ชื่อผู้ใช้เป็น root แล้วตามด้วยรหัสผ่านที่ได้กำหนดไว้ตอนรันอิมเมจที่ชื่อ arangodb
7. เมื่อล็อกอินสำเร็จแล้ว ก็จะเข้าสู่ขั้นตอนการเลือกฐานข้อมูล ให้เลือกฐานข้อมูลเป็น _system แล้วกดปุ่ม Select DB: _system
8. โปรแกรมเว็บบราวเซอร์ก็จะเข้าสู่หน้าจอสำหรับจัดการฐานข้อมูล ArangoDB
ระบบปฏิบัติการ Ubuntu
1. เปิดโปรแกรม Windows Terminal ขึ้นมา
2. เรียกใช้หน้าต่าง Ubuntu 24.04 ขึ้นมา
3. พิมพ์คำสั่ง sudo su – เพื่อเข้าสู่ระบบปฏิบัติการ Ubuntu ในฐานะผู้ใช้ root
4. พิมพ์คำสั่ง sudo apt-get update เพื่ออัพเดทระบบปฏิบัติการ Ubuntu
5. พิมพ์คำสั่ง ifconfig เพื่อค้นหา IP address ของเครื่องที่ใช้อยู่
6. IP address จะแสดงออกมาหลังคำว่า inet ในส่วน eth0 ดังรูป
7. พิมพ์คำสั่ง sudo nano /etc/arangodb3/arangod.conf เพื่อเปิดไฟล์ arangod.conf
8. แก้ไขข้อมูลในส่วน endpoint ให้เป็น tcp://<ip-address>:8529 ดังรูป
9. จากนั้นให้บันทึกไฟล์นี้ในชื่อเดิม
10. สตาร์ทเซอร์วิส arangodb3 โดยพิมพ์คำสั่ง sudo systemctl start arangodb3
11. เปิดโปรแกรมเว็บบราวเซอร์ขึ้นมา
12. พิมพ์หมายเลขไอพีที่ได้จากการค้นหา ตามด้วยหมายเลขพอร์ทที่กำหนดไว้ในไฟล์ arangod.conf ก็จะเข้าสู่หน้าจอดังรูป
13. กรอก username เป็น root รวมทั้งกรอกรหัสผ่านที่ได้กำหนดไว้ตอนติดตั้ง ArangoDB เสร็จแล้วกดปุ่ม Login
14. เมื่อ Login สำเร็จแล้ว ให้เลือกฐานข้อมูลเป็น _system โดยคลิกที่ปุ่ม Select DB: _system
15. โปรแกรมเว็บบราวเซอร์ก็จะเข้าสู่หน้าจอสำหรับจัดการกับฐานข้อมูล ArangoDB
การสร้างฐานข้อมูลใหม่
เมื่อเข้าสู่หน้าจอสำหรับจัดการฐานข้อมูล ArangoDB แล้วให้ทำตามขั้นตอนดังนี้
1. คลิกเลือกเมนู Databases ตามรูป
2. คลิกที่ปุ่ม Add database
3. ให้สร้างฐานข้อมูลใหม่โดยกรอกชื่อฐานข้อมูลในช่อง Database name
4. เสร็จแล้วกดปุ่ม Create
5. เมื่อจะใช้ฐานข้อมูลที่สร้างขึ้นมาใหม่ ต้องออกจากฐานข้อมูลชื่อ _system เสียก่อนโดยคลิกที่ข้อความ DB: _SYSTEM ก็จะเข้าสู่หน้าจอเลือกฐานข้อมูล ดังรูป
6. เลือกฐานข้อมูลเป็นฐานข้อมูลที่สร้างขึ้นมาใหม่ ดังรูป
7. คลิกที่ปุ่ม Select DB: SWU_News_Items เพื่อจัดการกับฐานข้อมูล
การสร้าง Collection
1. คลิกเลือกเมนู Collections
2. คลิกที่ปุ่ม Add collection
3. สร้าง Collection ขึ้นมา ในที่นี้ ผมจะสร้าง Collection ชื่อ Category ขึ้นมา แล้วเลือกประเภทของ Collection เป็น Document
4. เสร็จแล้วคลิกที่ปุ่ม Create
การเพิ่มข้อมูล (Document) ใน Collection
1. คลิกที่ Collection ที่ต้องการเพิ่มข้อมูล
2. คลิกที่เมนู Content ดังรูป
3. คลิกที่ปุ่มเครื่องหมายบวกเพื่อเพิ่มข้อมูล (Document) ลงไปใน Collection
4. ให้เพิ่มข้อมูลลงไปในช่อง Document body โดยที่ข้อมูลที่จะเพิ่มลงไปจะต้องอยู่ในรูปของ JSON
5. เสร็จแล้วคลิกที่ปุ่ม Create
การสร้างเส้นเชื่อมความสัมพันธ์ระหว่าง Document
1. คลิกเลือกเมนู Collection
2. คลิกที่ปุ่ม Add collection
3. กรอกชื่อเส้นเชื่อมในช่อง Name แล้วเลือกประเภทของ Collection เป็น Edge ในช่อง Type
4. คลิกที่ปุ่ม Save
5. ถ้าจะเชื่อมความสัมพันธ์ระหว่าง ผศ. ดร. วริศรา อนันตไท ใน Collection ที่ชื่อ Officer กับ คณะมนุษยศาสตร์ ใน Collection ที่ชื่อ Department มีวิธีเชื่อมดังนี้
5.1. คลิกที่ Collection ชื่อ Officer
5.2. คลิกที่เมนู Content
5.3. คลิกเลือก Content ที่มีข้อมูล วริศรา ในฟิลด์ First Name และ อนันตไท ในฟิลด์ Last Name ดังรูป
5.4. คัดลอกข้อมูลในส่วน _id: โดยพิมพ์ข้อมูลนี้ในโปรแกรม text editor ซึ่งข้อมูลดังกล่าวจะถูกนำไปใช้ในการสร้างความสัมพันธ์ระหว่างข้อมูล
5.5. คลิกที่ Collection ชื่อ Department
5.6. คลิกที่เมนู Content
5.7. คลิกเลือก Content ที่มีข้อมูล คณะมนุษยศาสตร์ ในฟิลด์ Name
5.8. คัดลอกข้อมูลในส่วน _id: โดยพิมพ์ข้อมูลนี้ในโปรแกรม text editor
5.9. คลิกเลือกเมนู Collection
5.10. คลิกที่ Collection ที่ชื่อ Work
5.11. คลิกที่เมนู Content
5.12. คลิกที่ปุ่มเครื่องหมายบวก
5.13. กรอกข้อมูล id ของ officer และกรอกข้อมูล id ของ department ในส่วน _from: และ _to: ตามลำดับ พร้อมทั้งระบุเนื้อหาของความสัมพันธ์ดังกล่าวในส่วน Document body
5.14. เสร็จแล้วคลิกที่ปุ่ม Create
การสร้างกราฟของข้อมูลในฐานข้อมูล ArangoDB
เมื่อล็อคอินเข้าสู่โปรแกรม ArangoDB สำเร็จ พร้อมทั้งเลือกฐานข้อมูลที่ใช้ในการจัดการแล้ว ให้ทำตามขั้นตอนดังนี้
1. คลิกที่เมนู Graph
2. คลิกที่ปุ่ม Add Graph
3. จากหน้าจอข้างล่าง ให้กรอกข้อมูลดังนี้
Name: ให้ตั้งชื่อกราฟเป็นภาษาอังกฤษ ยกตัวอย่างเช่น ถ้าจะสร้างกราฟเชื่อมความสัมพันธ์ระหว่างพนักงาน (Officer) กับชิ้นของข่าว (Items) ให้ตั้งชื่อเป็น Publisher
Edge definition: ให้เลือก Edge ที่สร้างไว้ในตอนสร้าง Collection แบบ Edge ยกตัวอย่างเช่น ถ้าจะสร้างกราฟชื่อ Publisher ให้เลือก Edge ที่ขึ้นต้นด้วย Published โดย Double-Click ที่ชื่อ Edge ดังกล่าว
fromCollections: ให้เลือก Collection ต้นทาง ในตัวอย่างนี้ให้เลือกเป็น Officer
toCollections: ให้เลือก Collection ปลายทาง ในตัวอย่างนี้ให้เลือกเป็น Items
4. เสร็จแล้วคลิกที่ปุ่ม Create
5. คลิกที่กราฟชื่อ Publisher เพื่อดูกราฟเชื่อมระหว่างข้อมูล
6. โปรแกรมจะแสดงกราฟอย่างคร่าวๆ
7. คลิกที่ปุ่มที่อยู่ตรงกลาง ดังรูป เพื่อแสดงกราฟแบบเต็ม
8. คลิกที่ปุ่ม Load Full Graph
9. โปรแกรมก็จะแสดงกราฟแบบเต็มทางเว็บบราวเซอร์