1 مهر 1398
Redis یک سیستم پایگاه داده No Sql رایگان برای نگهداری و بازیابی دادهها میباشد.
قصد داریم تا این سیستم پایگاه داده را برای شما توضیح دهیم.
Redis یا Remote Dictionary Server یک نوع پایگاهداده میباشد.
تفاوتی که Redis با دیگر پایگاهدادهها دارد سرعت فوقالعاده آن میباشد. در واقع Redis یک ذخیرهساز ساختارهای دادهای در RAM میباشد. ساختارهای دادهای یا Data Structure میتوانند یک رشته ساده و یا یک لیستی از دادهها باشند. Redis ساختارهای دادهای را داخل RAM برای ما نگهداری کرده و میتوانیم با سرعت بالا آنها را بازیابی کنیم.
از آنجایی که Redis دادهها را ذخیره و بازیابی میکند یک نوع دیتابیس است و چون از اطلاعات در داخل RAM نگهداری میکند اصطلاحا In-Memory Database نام گذاری میشود.
یکی از عوامل مهمی که باعث موفقیت Redis شده است، وجود سازگاری با اکثر زبانهای برنامهنویسی از جمله PHP و جاوا اسکریپت است.
شما میتوانید بدون هیچ نگرانی از این زبانها بهترین استفاده را ببرید.
از نکات مهمی که باعث ایجاد سرعت بیشتر در Redis شده است، استفاده از RAM برای ذخیرهسازی، نگهداری و بارگذاری دادهها میباشد.
این امر موجب افزایش دسترسی و بازیابی دادهها میگردد.
میتوان به جای اینکه دادهها را هربار از سرور گرفته و به مرورگر مخاطب ارسال کنیم، از Redis بگیریم.
در این حالت دادهها یک بار دریافت شده و روی Redis به عنوان کش یا حافظه پنهان قرار گیرند و هر بار که مخاطب درخواستی را در صفحات وب دارد، به جای بارگذاری صفحات در سرور و بازیابی دوباره آنها، فقط کافی است که دادهها از Redis به عنوان حافظه پنهان، بازیابی شوند.
گاهی سایت یا برنامهی وب که طراحی کردهاید، هنوز در ابتدای کار است.
درون پایگاهداده سایت، دادههای زیادی ذخیره نشده و کار برای بازیابی و دسترسی به آنها، راحت است.
در ادامه و با بزرگتر شدن سایت، با استفاده از این قابلیت در Redis شما میتوانید برای هر مقدار، یک کلید مشخص تعریف کرده و آن را ذخیره کنید.
این عاملی است تا با سرعت زیاد بتوانید دادهها و مقادیر خود را به بهترین شکل بازیابی کنید.
HashTable یا جدول هش، یک سری ساختارهایی هستند که برای ذخیره و بازیابی دادهها از آن استفاده میکنیم.
نحوه کار این جدول به این صورت است که برای هر داده یا دادهها، یک کلید مشخص تعریف میکنیم. در هنگام استفاده از این کلید در جدول هش، به آسانی به همان دادههایی که میخواستیم میرسیم.
از قابلیتهای دیگر Redis، استفاده از HyperLogLog است.
هر لیست حاوی تعدادی رشته است و رشتهها حاوی عناصر و کاراکترهای مشخص هستند.
زمانی که میخواهید در یک لیست بزرگ عنصری مشخص را پیدا کرده و بدانید این عنصر چه تعداد تکرار شده است، میتوانید از خاصیت HyperLogLog استفاده کنید. در این حالت با استفاده از الگوریتمهای خاصی که وجود دارد، شما میتوانید با دقت بسیار بالا امکان سنجش تکرار عناصر را داشته باشید.
Redis از یک سیستم تکثیر سریع و آسان با نام master-slave replication استفاده میکند.
در این سیستم نسخه متبوع یا slave، میتواند در صورت خرابی نسخه تابع یا master، جای خالی آن را پر کند. در واقع باید بگوییم که نسخههای فرعی(متبوع) خود رونوشتی از نسخههای اصلی(تابع) هستند.
تمامی حقوق برای گیتی سرور محفوظ است.