เมื่อไหร่ควรใช้ฐานข้อมูลแบบ key-value

แนวคิด NoSQL

Miriam Antona

Software engineer

กรณีที่เหมาะสม

  • เซสชันผู้ใช้
    • key: session ID
    • value: ข้อมูลเซสชัน

ภาพผู้ใช้

แนวคิด NoSQL

กรณีที่เหมาะสม

  • โปรไฟล์และการตั้งค่าของผู้ใช้
    • key: user ID
    • value: โปรไฟล์/การตั้งค่าของผู้ใช้

ภาพผู้ใช้พร้อมการตั้งค่า

แนวคิด NoSQL

กรณีที่เหมาะสม

  • ตะกร้าสินค้า
    • key: user ID
    • value: ข้อมูลตะกร้าสินค้า

ภาพตะกร้าสินค้า

แนวคิด NoSQL

กรณีที่เหมาะสม

  • การแนะนำแบบเรียลไทม์

ภาพข้อความ "You may also like" พร้อมเสื้อยืดสามสีต่างกัน

แนวคิด NoSQL

กรณีที่เหมาะสม

  • การโฆษณา

ภาพหน้าจอคอมพิวเตอร์ที่แสดงโฆษณา

แนวคิด NoSQL

กรณีที่เหมาะสม

  • เก็บข้อมูลเป็น value ในออบเจกต์เดียว
  • บันทึกข้อมูลด้วยการดำเนินการเดียว
      SET user:457:preferences {"language":"en_US","color":"green","timezone":"GTM-4"}
    
  • ดึงข้อมูลด้วยการดำเนินการเดียว
      GET user:457:preferences
    
  • รวดเร็ว
แนวคิด NoSQL

กรณีที่ไม่เหมาะสม

  • ค้นหาข้อมูลด้วย value
แนวคิด NoSQL

กรณีที่ไม่เหมาะสม

  • ค้นหาข้อมูลด้วย value
key value
user:1:address {"street" : "123 Sesame Street" , "city" : "New York City"}
user:2:address {"street" : "742 Evergreen Terrace" , "city" : "Springfield"}
user:3:address {"street" : "221b Baker Street" , "city" : "London"}
user:4:address {"street" : "4 Privet Drive" , "city" : "Little Whinging"}
... ...

 

  • ข้อมูลที่สัมพันธ์กัน
แนวคิด NoSQL

มาฝึกกันเถอะ!

แนวคิด NoSQL

Preparing Video For Download...