مقدمه
مجموعهها (Sets) در ردیس یک ساختار دادهای منحصر به فرد برای ذخیرهسازی مقادیر یکتا و بدون ترتیب هستند. این مقاله به بررسی روشهای ایجاد و مدیریت مجموعهها میپردازد.
ایجاد مجموعه با دستور SADD
برای افزودن اعضا به یک مجموعه از دستور زیر استفاده میکنیم:
SADD key member [member ...]
مثال عملی:
SADD cars Toyota Maserati Ford
خروجی: 3
(تعداد اعضای اضافه شده)
مشاهده اعضای مجموعه با دستور SMEMBERS
برای مشاهده تمام اعضای یک مجموعه:
SMEMBERS key
مثال:
SMEMBERS cars
خروجی نمونه:
1) "Mazda"
2) "Ford"
3) "Maserati"
4) "Toyota"
ویژگیهای کلیدی مجموعهها
1. عدم ترتیب
اعضا در مجموعهها ترتیب خاصی ندارند:
SADD names Rob Rim John
SMEMBERS names
خروجی ممکن است به هر ترتیبی باشد.
2. یکتایی مقادیر
مقادیر تکراری به صورت خودکار حذف میشوند:
SADD cars Ford # افزودن مقدار تکراری
SMEMBERS cars # فقط یک نمونه از Ford نمایش داده میشود
3. ذخیرهسازی به صورت رشته
تمام مقادیر (حتی اعداد) به صورت رشته ذخیره میشوند:
SADD numbers 1 2 3 4 5
SMEMBERS numbers
نکات فنی مهم
- کارایی: افزودن عضو جدید با پیچیدگی O(1)
- محدودیتها:
- حداکثر ۴ میلیارد عضو در هر مجموعه
- عدم پشتیبانی از ترتیب
- کاربردهای معمول:
- مدیریت تگها
- دنبالکنندگان/دنبالشوندگان در شبکههای اجتماعی
- آدرسهای IP یکتا
- محصولات منحصر به فرد
مثالهای پیشرفته
1. افزودن چندین عضو به صورت همزمان
SADD products "Laptop" "Phone" "Tablet" "Monitor"
2. بررسی تعداد اعضا
SCARD products
3. ترکیب با سایر دستورات
# افزودن عضو و بررسی تعداد کل
SADD products "Keyboard"
SCARD products
نتیجهگیری
مجموعهها در ردیس ابزاری قدرتمند برای مدیریت دادههای یکتا هستند که:
- عملکرد بالایی برای عملیات اضافه کردن و بررسی وجود عضو ارائه میدهند
- به صورت ذاتی از یکتایی دادهها اطمینان حاصل میکنند
- برای سناریوهای مختلفی مانند مدیریت کاربران، محصولات و تگها مناسب هستند
- از عملیات پیشرفته مجموعهای مانند اجتماع، اشتراک و تفاوت پشتیبانی میکنند
در مقالات بعدی به بررسی سایر دستورات مجموعهها و عملیات پیشرفتهتر خواهیم پرداخت.