Redis یک ذخیرهکننده داده در حافظه NoSQL است که اطلاعات را به صورت key:value در حافظه نگه میدارد. به دلیل استفاده از حافظه برای ذخیره دادهها، ردیس از سرعت بسیار بالایی برخوردار است و این ویژگی باعث جلب محبوبیت فراوان شده است. ردیس معمولاً به عنوان Cache، پایگاه داده، یا سیستم مبادله پیام (Message Broker) مورد استفاده قرار میگیرد.
تاریخچه Redis
Redis یا به طور کامل “Remote Dictionary Server” در سال ۲۰۰۹ توسط “Salvatore Sanfilippo” توسعه یافت. ردیس از ایدهای الهام گرفته که یک سیستم همزمان میتواند به عنوان حافظه نهان (cache) و پایگاه داده در نظر گرفته شود. طراحی ردیس به گونهای است که دادهها به صورت مستقیم در حافظه کامپیوتر نگهداری می شوند و تغییر پیدا میکنند. همچنین، این ویژگی را دارد که یک نسخه از داده های ذخیره شده در ردیس را در دیسک نیز ذخیره کنند تا در مواقعی که سیستم دوباره راهاندازی میشود، این داده ها از دست نرود و بتوانیم درباره آنها استفاده بکنیم..
ویژگی های Redis
سرعت بالا
تمام دادههای Redis در حافظه ذخیره میشوند که این امکان را فراهم میکند تا به دادهها با تاخیر کم و با سرعت بالا دست دسترسی پیدا کنیم. برخلاف پایگاه دادههای SQL، ردیس به مراجعه به دیسک نیاز ندارد، که باعث کاهش تاخیر زمان دسترسی به میکروثانیه میشود. به دلیل این ویژگی، ردیس میتواند، دستورات بیشتری را پردازش کند و زمان پاسخ دهی سریعتری داشته باشد. نتیجه این عملکرد، سرعت بالای ردیس است.
داده ساختارهای متنوع
برخلاف ذخیره کننده داده key:value دیگر که تنها ساختارهای محدودی را ارائه میدهند، ردیس دارای تنوع بسیار زیادی از ساختارهای داده است که به نیازهای برنامه شما پاسخ میدهد. انواع داده در ردیس شامل string, list, sorted list, hash و انواع دیگری از داده ها می باشد.
سادگی و آسان بودن استفاده از Redis
با استفاده از ردیس می توانیم، کدهای پیچیده را با تعداد خطوط کمتر و سادهتر بنویسیم. در ردیس، برای ذخیره، دسترسی و استفاده از دادهها، شما نیاز به تعداد کمتری خط کد دارید. توسعهدهندگانی که از ردیس استفاده میکنند، میتوانند از ساختار دستوری ساده به جای زبانهای مورد استفاده در پایگاه دادههای دیگر استفاده کنند.به عنوان مثال، شما میتوانید از ساختار داده hash در ردیس برای انتقال داده با تنها یک خط کد استفاده کنید. در حالی که این کار در یک سیستم ذخیره داده بدون ساختارهای داده hash، نیاز به تعداد زیادی خط کد دارد تا از یک فرمت به فرمت دیگر تبدیل شود.
ردیس با ساختارهای داده اصلی، گزینههای زیادی برای تغییر و تعامل با دادههای شما ارائه می دهد. بیش از صد client متنباز برای توسعهدهندگان ردیس در دسترس است. زبانهای پشتیبانیشده شامل جاوا، پایتون، PHP، C#، C++، C، جاوااسکریپت، نود جیاس، Ruby، R، GO و بسیاری دیگر هستند.
on Redis چیست ؟