پایگاه داده های NoSQL به نوعی از پایگاه داده ها می گویند که به صورت رابطه ای (Relational) پیاده سازی نشده اند. پایگاه داده های مرسوم مانند SQL Server یا MySQL را به یاد بیاورید. جداول، سطر ها و ستون ها تمام چیزهایی بودند که با آن ها سر و کار داشتیم. در واقع پایگاه داده رابطه ای (Relational Database) که از تئوری جبر رابطه ای (Relational Algebra) استفاده میکند، دیگر برای بسیاری از مسائل مترکز به داده (Data Intensive) مناسب نیستند. مسائل متمرکز به داده معمولا مسائلی هستند که در آن ها، حجم زیادی از داده بایستی ذخیره و پردازش شود و این پردازش معمولا باید با سرعت بالایی همراه باشد (مخصوصا مسائل مرتبط با مه داده یا همان Big Data).
پایگاه داده های NoSQL جهت حل این قبیل مسائل به وجود آمدند و به سرعت جایگاه خود را در عرصه پایگاه های داده به دست آوردند. علاوه بر این، پایگاه داده های NoSQL راحت تر میتوانند با زبان های برنامه نویسی به وسیله ORM (Object Relational Mapping) ارتباط بر قرار کنند.
با توجه به کاربردهای هر پایگاه داده، مزیت های دیگر مختلفی را میتوان برای پایگاه داده های NoSQL در نظر گرفت. از جمله این مزیت ها میتوان به موارد زیر اشاره کرد:
Scalability (توسعه پذیری): که در درس توسعه پذیری سیستم های توزیع شده بیشتر در مورد آن توضیح دادیم.
Performance (کارایی): در بعضی از مسائل، کارایی (برای مثال سرعت پاسخ به درخواست ها) در پایگاه داده های NoSQL بهتر است
Hight Availability (دسترسی بالا): به این معنی که داده ها در پایگاه داده، در اکثر اوقات در دسترس باشند. برای مثال بعضی از پایگاه داده های NoSQL توزیع شده میتوانند با از کار افتادن چندین Node (گره) باز هم قابل دسترس باشند.
البته این که بگوییم پایگاه داده های NoSQL جای پایگاه داده های رابطه ای را گرفته اند، دور از انصاف است. در بسیاری از کاربردها و نرم افزارها، هنوز پایگاه داده های رابطه ای بر پایگاه داده های NoSQL ارجحیت دارند.
کارتون عالیه
باتشکر
متشكرم از تدريس عالي شما ، همه مطالب آموزشي با بيان ساده خيلي خوب توضيح داده شده، سپاس فراوان
بسیار عالی و آموزنده