

اگر مدت زیادی با دیتابیس ها کار کرده اید، با پایگاه های داده SQL آشنا هستید. آنها عموما به دلیل طرحواره هایشان ساختار سفت و سختی دارند و فقط به صورت عمودی مقیاس پذیر هستند، به این معنی که شما فقط می توانید با خرید سخت افزار گران قیمت عملکرد را افزایش دهید.
SQL در کاهش محتوای تکراری برتری دارد که به کاهش هزینه ذخیره سازی کمک می کند. در دهههای 1970، 1980 و 1990، زمانی که ذخیرهسازی قیمت بالایی داشت، بسیار عالی بود، اما در دهههای 2000، 2010 و فراتر از آن، زمانی که ذخیرهسازی بهطور مسخرهای ارزان است، بسیار عالی بود.
به این ترتیب، هیچ دلیل واقعی برای پایبندی به محدودیتهای SQL وجود نداشت و NoSQL به این ترتیب متولد شد.
پایگاه داده های NoSQL (معروف به “نه فقط SQL”) می توانند داده هایی را که به غیر از روابط جدولی در پایگاه های داده SQL مدل شده اند ذخیره و بازیابی کنند، که آنها را به ویژه برای مدیریتbig data مفید می کند.
مزایای NoSQL
انعطاف پذیری
پایگاه داده های NoSQL اساساً آزاد هستند زیرا از طرح واره استفاده نمی کنند و رابطه ای نیستند. این ویژگی NoSQL به دلیل طراحی است نه زبان خاصی که برای مدیریت پایگاه داده ایجاد شده است، بنابراین می توانید بسته به نیاز خود از چندین مدل داده مختلف با NoSQL استفاده کنید.
مقیاسپذیر
NoSQL به صورت افقی مقیاس پذیر است، به این معنی که شما نیازی به خرید سخت افزار گران قیمت ندارید، اما می توانید به سادگی یک قطعه دیگر را وارد کنید، و شما آماده هستید. در نتیجه، NoSQL اساساً بسته به میزان مسافتی که باید آن را طی کنید، بینهایت مقیاسپذیر است و خود گسترش آن نسبتاً آسان است.
کاهش هزینه های توسعه
از آنجایی که NoSQL به طور کلی از طرحواره استفاده نمی کند، نیازی به استخدام یک طراح طرح واره وجود ندارد. همچنین لازم نیست نگران اضافه کردن فیلدها یا انواع دادههای جدید باشید، زیرا میتوانید چیزها را با میل قلبی خود ترکیب و مطابقت دهید و فرآیند طراحی پایگاه داده را خستهکنندهتر کنید. بنابراین، راه اندازی پایگاه داده، عرضه و نگهداری و استفاده روزمره آسان تر خواهید داشت.
چالش های NoSQL
سازگاری داده ها
اشکال اصلی این است که بسیاری از پایگاه های داده NoSQL سازگاری را به خطر می اندازند. در حالی که بیشتر پایگاههای داده رابطهای از اصول ACID (اتمی، سازگاری، جداسازی، دوام) پیروی میکنند، همین را میتوان تنها در مورد درصد کمی از پایگاههای داده محبوب NoSQL (مانند Azure Cosmos DB، Amazon DynamoDB) گفت. به زبان ساده، ضمانت ACID به این معنی است که پایگاه داده ای که استفاده می کنید هیچ داده ای را از دست نمی دهد مگر اینکه در نظر گرفته شده باشد.
مقیاس پذیری
مسئله دیگر این است که NoSQL حجم زیادی از فضای ذخیرهسازی را اشغال میکند زیرا کپیسازی دادهها را نادیده میگیرد (و گاهی اوقات طبق تعریف به آن نیاز دارد). احتمالاً در نهایت به ترتیبی از فضای ذخیره سازی بالاتر از پایگاه داده SQL نیاز خواهید داشت. با این حال، از آنجایی که امروزه ذخیره سازی داده ها نسبتاً ارزان است، این نیاز در دراز مدت بر شما تأثیر زیادی نخواهد گذاشت.
انواع پایگاه های داده NoSQL
دیتابیس key value
دیتابیس key value از یک جدول هش استفاده میکنند که یک اشارهگر را ذخیره میکند، که کلید است، سپس به مقداری اشاره میکند که نوعی اطلاعات یا داده را ذخیره میکند. بنابراین نام، کلید-مقدار!
این نوع از مدل داده ها به دلیل این واقعیت که داده ها می توانند ترکیبی از هر چیزی باشند، واقعاً همه کاره است، بنابراین می توانید پایگاه داده ای متناسب با هر نیاز تخصصی پیدا کنید. جای تعجب نیست که ذخیرههای کلید-مقدار یکی از محبوبترین مدلهای داده برای پایگاههای داده NoSQL در نظر گرفته میشوند.
علاوه بر این، فروشگاههای با ارزش کلیدی برای موارد استفاده با کارایی بالا و/یا با حجم بالا عالی هستند. به عنوان مثال، پایگاه داده کلید-مقدار DynamoDB تقریباً در هر ثانیه به میلیون ها نفر در سراسر جهان خدمات ارائه می دهد.
ستون محور
این نوع مدل دادهها به جای ذخیرهسازی دادهها در یک ردیف، اطلاعات را در ستونهایی که در داخل خانوادههای دیگر ستونها قرار دارند، ذخیره میکند. ستون ها، داخل گروه ها، داخل ستون ها را تصور کنید.
از آنجایی که دادهها به شیوهای کارآمد قرار میگیرند، پایگاههای داده ستونگرا دارای قابلیتهای تجمیع دادهها و عملکرد دسترسی به داده عالی هستند. از طرف دیگر، پرس و جوی پیچیده مطمئناً به یک ناامیدی تبدیل می شود.
دیتابیس Document محور
دیتابیس Document محور XML و JSON را به روش سنتی SQL به هم متصل نمیکنند. و هنگامی که این دو از یکدیگر جدا شوند، می توانند در اوج بازدهی عمل کنند نه اینکه مجبور شوند به سرعت کندترین مخرج حرکت کنند. حتی برخی از پایگاههای داده NoSQL بهطور خاص برای XML ساخته شدهاند که مرتب هستند.
به اندازه کافی جالب توجه است که گاهی اوقات انبارهای اسناد به عنوان یک نوع فرعی از فروشگاههای ارزش کلیدی در نظر گرفته میشوند، اما این مدل فرعی داده به اندازهای بزرگ است که بخش خاص خود را دریافت کند. بخشی از محبوبیت آن انعطاف پذیری آن است زیرا می توانید هر نوع داده ای را که می خواهید وارد کنید.
همانطور که ممکن است با نام این مدل داده حدس بزنید، برای پایگاه داده ای که اطلاعات را به شکل نمودار نشان می دهد، عالی است.
با این نوع مدل داده، اطلاعات هم به عنوان گره و هم به عنوان لبه ذخیره می شود. به طور خاص، گره ها اطلاعاتی مانند آدرس ها، نام ها، تاریخ ها و غیره را ذخیره می کنند، در حالی که لبه ها روابط بین گره های مختلف را توصیف می کنند. این به مدلهای دادههای نموداری اجازه میدهد تا روابط بین مجموعههای اغلب متفاوت از دادهها را نشان دهند و به شما کمک میکند اطلاعات مرتبط و مفید را به دست آورید.
پایان.
لینک منبع : https://www.scnsoft.com/blog/nosql-databases