Redis یکی از پایگاههای داده نوع NoSQL است که بر پایه ساختار دادهای کلید-مقدار (Key-Value) طراحی شده است. در این مدل، تمامی اطلاعات با یک کلید مشخص شده و مقدار مرتبط با آن ذخیره میشود. هر دادهای که در Redis ذخیره میشود، همیشه بهصورت یک جفت کلید و مقدار تعریف میگردد.
تعریف کلید-مقدار در Redis
Redis به دستهای از پایگاههای داده با نام “Key-Value Store” تعلق دارد. برخلاف پایگاههای داده رابطهای (مانند PostgreSQL یا MySQL) که از مفاهیمی مانند جداول و ستونها استفاده میکنند، Redis از یک کلید برای ارجاع به مقدار استفاده میکند. این مقدار میتواند انواع مختلفی داشته باشد، از جمله:
- رشته (String)
- لیست (List)
- مجموعه (Set)
- هش (Hash)
این ساختار، Redis را به گزینهای سریع و کارآمد برای ذخیره و بازیابی دادهها تبدیل کرده است.
تفاوت Redis با پایگاههای داده رابطهای
یکی از تفاوتهای مهم Redis با پایگاههای داده رابطهای این است که در Redis، دادهها تنها زمانی قابل بازیابی هستند که کلید مربوط به آنها را بدانید. برخلاف سیستمهای SQL که میتوان با اجرای پرسوجو (Query) دادهها را بر اساس مقدار جستجو کرد، در Redis فقط از طریق کلید میتوان به مقدار دسترسی داشت. این ویژگی، Redis را به پایگاهی مناسب برای ذخیره دادههایی که نیاز به دسترسی سریع دارند، تبدیل میکند.
دستورات اصلی در Redis
دو دستور اصلی برای کار با دادهها در Redis عبارتاند از:
- SET: برای تعریف و ذخیره یک جفت کلید-مقدار استفاده میشود.
- GET: برای بازیابی مقدار مرتبط با یک کلید خاص به کار میرود.
برای مثال، برای ذخیره یک مقدار میتوان از دستور زیر استفاده کرد:
SET name "Adnan"
این دستور، مقدار “Adnan” را با کلید “name” ذخیره میکند. پس از ذخیره داده، Redis پاسخ “OK” را ارسال میکند که نشاندهنده موفقیتآمیز بودن عملیات است.
برای بازیابی مقدار ذخیرهشده، از دستور GET استفاده میشود:
GET name
خروجی این دستور مقدار ذخیرهشده (در این مثال “Adnan”) خواهد بود.
مثالهایی از تعریف و بازیابی مقادیر
فرض کنید میخواهیم اطلاعات یک کاربر شامل نام و نام خانوادگی را ذخیره کنیم. برای انجام این کار از دستورات زیر استفاده میکنیم:
SET FName "Ali"
SET LName "Karimi"
برای بازیابی این مقادیر، میتوانیم دستورات زیر را اجرا کنیم:
GET FName
GET LName
اگر کلیدی وجود نداشته باشد یا اشتباه وارد شود، Redis مقدار nil
را برمیگرداند:
GET Age
(nil)
نکات مهم در استفاده از Redis
- تمام دادهها بر پایه کلید ذخیره و بازیابی میشوند: بدون دانستن کلید، امکان دسترسی به دادهها وجود ندارد.
- پشتیبانی از انواع داده: علاوه بر رشتهها، میتوان از انواع پیچیدهتری مانند لیستها، هشها و مجموعهها نیز استفاده کرد.
- سرعت بالا: Redis به دلیل ذخیره دادهها در حافظه اصلی (RAM) سرعت بسیار بالایی دارد، که آن را به گزینهای ایدهآل برای مواردی مانند کش (Cache) تبدیل کرده است.
جمعبندی
Redis یک پایگاه داده NoSQL مبتنی بر ساختار کلید-مقدار است که برای ذخیره و بازیابی سریع دادهها طراحی شده است. این پایگاه داده به دلیل سادگی، کارایی بالا و پشتیبانی از انواع مختلف داده، در کاربردهایی مانند کشینگ، صفها و مدیریت دادههای لحظهای (Real-Time) بسیار محبوب است. با استفاده از دستورات سادهای مانند SET
و GET
، میتوان به راحتی دادهها را ذخیره و بازیابی کرد.