Skip to main content

Redis Sets

1. บทนำ

Redis Sets เป็นโครงสร้างข้อมูลที่ใช้เก็บค่าที่ไม่ซ้ำกันและไม่มีลำดับแน่นอน เหมาะสำหรับการจัดการข้อมูลที่ต้องการความเป็นเอกลักษณ์ เช่น รายชื่อผู้ใช้ที่ออนไลน์ หรือแท็กที่ใช้ในบทความ

2. คำสั่งพื้นฐานของ Redis Sets

Redis มีคำสั่งสำหรับจัดการ Sets หลายคำสั่ง ดังนี้:

2.1 การเพิ่มข้อมูลเข้า Set

SADD myset "A"
SADD myset "B"
SADD myset "A"
  • SADD ใช้เพื่อเพิ่มค่าลงใน Set
  • ค่าที่ซ้ำกันจะไม่ถูกเพิ่มเข้าไป

2.2 การดึงค่าทั้งหมดจาก Set

SMEMBERS myset
  • SMEMBERS ใช้เพื่อดึงค่าทั้งหมดที่อยู่ใน Set

2.3 การตรวจสอบค่าภายใน Set

SISMEMBER myset "A"
  • SISMEMBER ใช้เพื่อตรวจสอบว่าค่าที่ระบุมีอยู่ใน Set หรือไม่

2.4 การนับจำนวนสมาชิกใน Set

SCARD myset
  • SCARD ใช้เพื่อดึงจำนวนสมาชิกทั้งหมดที่อยู่ใน Set

2.5 การลบค่าจาก Set

SREM myset "B"
  • SREM ใช้เพื่อลบค่าที่ระบุออกจาก Set

2.6 การหาค่าที่เหมือนกันระหว่างสอง Sets (Intersection)

SINTER set1 set2
  • SINTER ใช้เพื่อหาค่าที่มีอยู่ในทั้งสอง Sets

2.7 การหาค่าที่รวมกันของสอง Sets (Union)

SUNION set1 set2
  • SUNION ใช้เพื่อดึงค่าทั้งหมดที่มีอยู่ในทั้งสอง Sets

2.8 การหาค่าที่แตกต่างระหว่างสอง Sets (Difference)

SDIFF set1 set2
  • SDIFF ใช้เพื่อดึงค่าที่มีอยู่ใน set1 แต่ไม่มีใน set2

3. ข้อควรระวัง

  • Redis Sets ไม่มีลำดับในการจัดเก็บข้อมูล
  • หากต้องการเรียงลำดับข้อมูล ควรใช้ Sorted Sets (Zsets)
  • การดึงข้อมูลทั้งหมดจาก Set ที่มีขนาดใหญ่อาจใช้ทรัพยากรมาก

4. สรุป

  • Redis Sets ใช้เก็บค่าที่ไม่ซ้ำกันและไม่มีลำดับ
  • รองรับการเพิ่มค่า ตรวจสอบค่า และการดำเนินการระหว่าง Sets เช่น Intersection, Union และ Difference
  • เหมาะสำหรับการจัดการข้อมูลที่ต้องการความเป็นเอกลักษณ์ เช่น รายชื่อผู้ใช้งานที่กำลังออนไลน์