برخی از تفاوتهای کلی SQL و NoSQL
- بانکهای اطلاعاتی SQL به صورت اصلی با عنوان بانک اطلاعاتی رابطهای یا RDBMS شناخته میشود؛ بانکهای اطلاعاتی NoSQL به عنوان بانک اطلاعاتی غیر رابطهای و توزیع شده شناخته میشود.
- بانکهای اطلاعاتی SQL دادهها را در جداول و ستونها ذخیره میکند، این درحالیست که ذخیرهسازی در بانکهای اطلاعاتی NoSQL مبتنی بر سندات، key-valueها، گرافها و wide-column است.
- بانکهای اطلاعاتی SQL، شِمای کلی را از بانک پیشنهاد میدهند، اما NoSQL برای این مورد منعطف است و میتواند بدون دردسر تغییر کند.
- بانکهای اطلاعاتی SQL تمرکز و تاکید بسیاری روی موضوع ACID که مخفف (Atomicity, Consistency, Isolation and Durability) است تمرکز دارد، درحالیکه NoSQL روند CAP را اجرا میکند که مخفف (Consistency, Availability and Partition tolerance) است.
- برای محیطهایی با تراکنش بسیار زیاد، بانکهای اطلاعاتی SQL توانایی بهتری را از خودشان نشان دادهاند، این مورد برای اپلیکیشنهایی با حجم داده بالا بسیار مناسب هستند.
- مقیاسپذیری در بانکهای اطلاعاتی مدل رابطهای بسیار سخت است و تقریبا نیاز دارد که کلیت بانک اطلاعاتی را تغییر دهید، این در حالیست که تغییر دادن و توسعه یک بانک اطلاعاتی در سیستم بانکهای اطلاعاتی NoSQL بسیار سادهتر و روند آسانتری دارد.
منبع : راکت