หลายๆ คนอาจจะสงสัยว่า Graph Database คืออะไร สำหรับตัวของ Graph Database นั้น จะจัดอยู่ในประเภท NoSQL เหมือนกับ MongoDB หรือ Cassandra ครับ แต่ลักษณะพิเศษคือ ตัวเขาเองจะเหมาะกับข้อมูลที่มีขนาดใหญ่ และมี Structure ไม่ชัดเจน และสามารถแสดง Relation ของข้อมูลแต่ละตัวภายในที่มีความเกี่ยวข้องกันได้ครับ

Graph Database models diagram

สำหรับการทำงานของ Graph Database เอง จะมีอัลกอริทรึมที่ช่วยให้เข้าถึงความสัมพันธ์ของข้อมูลได้อย่างมีประสิทธิภาพและเป็นอิสระจากขนาดของข้อมูล ทำให้สามารถเข้าถึงส่วนต่างๆ ของข้อมูลได้อย่างรวดเร็ว

สำหรับ Property ของ Graph Database โดยหลักๆ แล้วจะมีด้วยกัน 2 ส่วน คือ

Graph Database properties

Node ถ้าเปรียบกับฐานข้อมูลอื่นๆ ก็จะเหมือนกับ Table โดยภายในของ Node ก็จะมี Properties ต่างๆ ที่ใช้เก็บข้อมูล

Relation จะเป็นความสัมพันธ์ของแต่ละ Node และที่แปลกกว่าคือ Relation เองก็จะมี Properties ของตัวเองด้วยเช่นกัน

สำหรับข้อมูลเพิ่มเติมสามารถอ่านเพิ่มได้จากลิงค์นี้ครับ
- https://neo4j.com/developer/graph-database/#_what_is_neo4j
- https://neo4j.com/developer/data-modeling/

ทีนี้เราลองมาใช้งาน Graph Database กันดีกว่าครับ สำหรับในบทความนี้ผมจะใช้ Graph Database ของ neo4j นะครับ เนื่องจากใช้เรียกใช้งานง่ายดี เหมาะกับการเริ่มต้นใช้งานครับ

จากนั้นก็พิมพ์คำสั่ง docker-compose up -d เพื่อสั่งรัน Graph Database ขึ้นมา และลองเข้า http://localhost:7474/browser/ ผ่านหน้า Browser เท่านี้เราก็จะสามารถใช้งาน Graph Database ได้แล้วครับ

Graph Database Browser

สำหรับในทความหน้าจะมาสอนใช้งาน Graph Database Browser กันนะครับ สำหรับบทความนี้ หากผิดพลาดประการใดก็ขออภัยมา ณ ที่นี้ด้วยนะครับ