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
- เหมาะสำหรับการจัดการข้อมูลที่ต้องการความเป็นเอกลักษณ์ เช่น รายชื่อผู้ใช้งานที่กำลังออนไลน์