موضوع مقاله: نواس‌کیوال | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # نواس‌کیوال | مقدمه: نواس‌کیوال مخفف not only sql به معنای نه تنها اس‌کیوال نامی است فراگیر برای ردهٔ گسترده‌ای از سامانه‌های مدیریت پایگاه داده که با نوع سنتی پایگاه‌های داده رابطه ای تفاوت‌های آشکار دارند. | ## بخش 1: نواس‌کیوال | روشن‌ترین این تفاوت‌ها عدم استفاده از اس‌کیوال به عنوان زبان پرسش نخستین در noSQL است. پس سیستمی برای ذخیره داده‌ها، ایجاد پیوند بین آن‌ها و عملیات بر روی آن‌ها (از مشخصات SQL) می‌تواند تعریفی ابتدایی برای SQL باشد. به عنوان مثال تمامی مطالب این سایت در پایگاه‌های داده و در جدول‌هایی مشخص به همراه مشخصات دقیق مانند نام نویسنده، تاریخ، متن، عنوان و … ذخیره شده و زمانی که شما صفحه را در مرورگر خودتان باز می‌کنید این اطلاعات از پایگاه‌های داده سرور سایت دریافت شده و برای شما نمایش داده می‌شوند. لازم به یادآوری است که SQL انواع مختلفی دارد؛ به عنوان مثال می‌توان به نسخه ویندوز (SQL Server)، نسخه مورد استفاده در گوشی‌های همراه هوشمند (SQLite) و نسخه مورد استفاده در اینترنت (MySQL) از این زبان اشاره کرد که همگی پیرو قوانین مرتبط با رابطه‌ای بودن نوع ذخیره‌سازی و بازیابی اطلاعات می‌باشند و هر جدول دارای یک کلید اصلی برای مشخص نمودن تفاوت میان سطرها می‌باشد. به دلیل رشد علم و فناوری با سرعت بالا و قدیمی بودن SQL شاید در گذشته بهترین سیستم برای مدیریت اطلاعات به‌شمار می‌رفت ولی به دلیل دو محدودیت بزرگ مجبوریم این روزها آن را با سیستمی نوین (مانند NoSQL) عوض کنیم. | ## بخش 2: نواس‌کیوال | در مواردی بنا به تجربه دیده شده مجبور به ایجاد داده‌های بی‌مورد یا موارد مشابه از طرف برنامه‌نویس شده یا برای قالب بندی کردن و طراحی شمای پایگاه داده مورد نظر مدت‌ها باید توسط کارشناسان طرحهایی پیاده‌سازی و اجرا گردد که این خود یک محدودیت بزرگ برای دنیای داده‌های بزرگ امروزیست که تصور کنید با این هزینه سرورهای پرسرعت را بتوانیم پشت سر بگذاریم و برای طراحی داده‌ها در دو سرور نیازمند طراحی‌های وقت گیر هم باشیم! پیچیدگی یا Complexity: این پیچیدگی طراحی پایگاه داده‌های SQL بقدری می‌باشد که در برنامه‌نویسی فرد یا افراد جدای برنامه‌نویس را لازم دارد تا بر اساس داده‌های موجود بهترین نوع چیدمان جداول را طراحی نمایند که برای نیازهای مورد نظر قابل قبول باشد که توضیح این پیچیدگی در محدودیت قبلی و مقیاس بندی هم توضیح داده شده بود. به دلیل محدودیت‌های کلاسیک SQL و مدرن شدن دنیای اینترنت و اطلاعات، کاربران و مدیران بخش داده‌ها به ارائه ایده‌های جدید با تمرکز بر تفکر «یک قالب مطابق با همه» یا “One size fits all” پرداخته‌اند که در آن قید و بندهای سیستم قبلی تا حد امکان موجود نباشد. در مدل NoSQL بنا به شیوه‌های مختلف، دیگر نیاز به طراحی و زمان طولانی برای طراحی پایگاه داده‌ها نمی‌باشد. در برخی از سرویس‌های NoSQL الگوریتم‌های هوشمندی هم به کار رفته‌است که دیگر نیازی به طراحی پایگاه داده نمی‌باشد و بر اساس ورودی‌های برنامه‌نویس و کاربر و تعیین نوع نیازمندی‌ها و پلتفرم و شرایط محیطی دیگر، نوع ذخیره‌سازی و مدیریت داده‌ها پیاده‌سازی می‌شود. | ## بخش 3: نواس‌کیوال | اولین و مهم‌ترین مزیت، عدم طراحی شمای (الگو) خاص برای داده هاست و در این سیستم داده‌های ورودی می‌تواند هر موقع تغییر نوع پیدا کرده و سیستم باید خودش را با آن مطابق کند. دومین مزیت قابلیت چند بخشی شدن خودکار و تشخیص هوشمند یکپارچگی بوده که در SQL طراح باید چند سرور بودن را در طراحی خود حتماً لحاظ می‌کرد و بر طبق آن شمای پایگاه داده را پیاده‌سازی می‌کرد ولی در سیستم NoSQL چند سرور بودن بخاطر هوشمندی و بالا بودن سطح سیستم هیچ مانعی برای ادامه کار ندارد. پس استفاده از NoSQL باعث افزایش سرعت در طراحی و اجرای پایگاه داده شده و همچنین محدودیت‌های قالب قدیمی را از میان برمی‌دارد که بیشتر مورد نیاز دنیای امروز و آینده اطلاعات و داده‌ها می‌باشد. اگر نیاز به ذخیره‌سازی حجم بالایی از داده‌های مختلف و پراکنده را دارید مونگو گزینه مناسبی برای شماست. کار کردن با مونگو به نسبت ساده است و اگر قصد شروع کار و آشنایی با NoSQLها را دارید شخصاً آن را پیشنهاد می‌کنم. | ## جمع‌بندی | Neo4j دیتابیسی بر پایه گراف (Graph) که برای ذخیره‌سازی ساختمان داده‌های مختلف شبکه ای و داده‌های ارتباطی بسیار مناسب می‌باشد.