بخشی از مقاله

چکیده

با توجه به توسعه اینترنت و محاسبات ابري و همچنین استقرار داده ها با استفاده ازفنّاوري سیستمهاي توزیع شده ازجمله چالشهایی که پیش روي بانکهاي اطلاعاتی است، میتوان به افزایش اندازه مجموعه داده و نیاز به سرعت بالا در پردازش این اطلاعات ، افزایش بیشتر ارتباط اطلاعات با یکدیگر، نیاز به همروندي بالاي خواندن و نوشتن با تأخیر کم، ظرفیت محدودو گوناگونی اطلاعات اشاره نمود سوالاتی که اینجا مطرح است این است که چگونه می توان با این چالش ها مقابله کرد و ارزش این حجم داده عظیم را به حداکثر رساند ؟

 آیا پایگاه داده هاي رابطه اي میتوانند پاسخگوي این حجم زیاد داده با گوناگونی فراوان از نظر نوع باشند؟و آیا پایگاه داده هاي NOSQL می توانند جایگزین پایگاه داده هاي رابطه اي باشند ؟

در این مقاله به مقایسه عملکرد پایگاه داده هاي NOSQL و پایگاه داده رابطه اي می پردازیم و نقطه ضعف ها و برتري هاي هر کدام را بیان می کنیم و می بینیم که پایگاه داده هاي Nosql در دسته بندي هاي مختلفی قرار می گیرند و ما می توانیم با توجه به نیازهاي خود و پرس و جوهایی که می خواهیم روي داده ها انجام دهیم ، حجم داده ها، ویژگی هاي هر یک از انواع Nosql و پایگاه داده هاي رابطه اي و با توجه به نظریه CAP می توان پایگاه داده Nosql مناسب و یا پایگاه داده رابطه اي را انتخاب نماییم.

-1 مقدمه

با توسعه روز افزون در حوزه کامپیوتر وفناوري اطلاعات براي سالها »مدل رابطه اي« تنها گزینه موجود براي مسائل کوچک و بزرگ پایگاه داده بود .با بالا رفتن حجم اطلاعات گوناگون کاربران مشتاق بودند تا گزینه هاي منعطف بیشتري را کشف و تجربه کنند، این گزینه هاي منحصربه فرد شامل طراحی کمتریا ساختارهاي داده اي متفاوت، تکثیر ساده تر، دسترس پذیري بالا، مقیاس پذیري و متدهاي جدیدو بهینه براي پرس و جو - query - می باشد و این به این مفهوم نیست که پایگاه داده هاي رابطهاي در حال نابود شدن هستند بلکه ما به دنبال راه حلی بهینه تر براي برخی کاربرد ها در داده هاي حجیم هستیم.

یکی از مهمترین مشکلات کار با داده هاي بزرگ مشکل بودن کار با آنها با پایگاه داده هاي سنتی و رابطه اي می باشد، چرا که این داده ها براي پردازش به شدت به سرورهاي موازي کار نیاز دارند . سیستم هاي نرم افزاري و پایگاههاي داده سنتی ، معماري مناسبی براي بهره برداري منا سب از مجموعه اي از ماشینها را ندا شته و محدودیت هاي ساختاري ، آنها را در مواجهه با ابعاد مختلف داده هاي بزرگ - حجم، سرعت ، تنوع - ناتوان و ناکارآمد ساخته بود.

راه حل مناسبی که براي مدیریت این داده هاي بزرگ در چند ساله اخیر ارائه شده مفهومی تحت عنوان NoSQL است . در این مقاله سعی داریم ابتدا معرفی مختصري از nosql داشته باشیم، مزایا و معایب آن را شرح دهیم سپس به تحلیل و ارزیابی این پایگاه داده ها بپردازیم و عمکرد هاي آن را با پایگاه داده رابطه اي - SQL - مقایسه می کنیم.

-2 معرفی NOSQL و ویژگی هاي متمایز آن از پایگاه داده هاي رابطه اي

محدودیت مدل رابطه اي در پشتیبانی از ابر داده ها و داده هایی با ساختارهاي ترکیب شده یعنی داده هاي ساخت یافته ، نیمه ساخت یافته و غیر ساخت یاقته یکی از دلایل اصلی معرفی NOSQL بود.

انواع مختلف پایگاه داده هاي NOSQL عبارتند از :
- 1 پایگاه داده هاي سند محور : در این پایگاه داده ها یک جفت داریم که شامل یک داده با ساختار پیچیده به نام سند و یک کلید براي این داده است.اسناد می توانند شامل جفت هاي بسیار متفاوت کلید-مقدار یا جفت هاي کلید-آرایه یا حتی اسناد و مدارك تودرتو باشند.از جمله این پایگاه داده ها MangoDB و Riak هستند.

- 2 پایگاه داده هاي گراف : از ساختار گراف براي ذخیره سازي اطلاعات مربوط به شبکه استفاده می شود مانند ارتباطات اجتماعی از جمله پایگاه داده هاي گراف می توان Neo4J وGraphDB را نام برد.

- 3 پایگاه داده هاي کلید مقدار : از ساده ترین پایگاه داده هاي غیر رابطه اي است .در این پایگاه داده ها هر مقدار با یک کلید منحصر به خودش ذخیره می شود .مانند پایگاه داده هاي سند محور هستند ولی مقدار آن سند نیست .از جمله این پایگاه داده ها Redis و BigTable هستند.

- 4 پایگاه داده هاي ستونی : مانند Cassandra و HBase ستون هایی از داده ها را به جاي سطرها یی از داده ها ذخیره می کنند واین نوع پایگاه داده ها براي انجام Query روي مجموعه داده هاي بسیار بزرگ خیلی بهینه عمل می کنند.

از ویژگی هاي NOSQL می توان به موارد زیر اشاره کرد: الف - اهمیت کمتر به سازگاري داده ها :

پایگاه داده هاي NOSQL از مدل همروندي و تراکنشی ضعیف تري نسبت به ACID بهره می برند. ب - شماي منعطف تر :

بی شمایی یا شماي ضعیف در انبار داده ها یک پیشرفت در جستارهاي تحلیلی حرفه اي فاقد عمومیت به حساب می آمد که پایگاه داده هاي NOSQL نیز به آن توجه وافري داشته اند.

ج - طراحی شده براي محیط هاي توزیع شده :

جهش هاي صورت گرفته در توسعه معماري کامپیوتر ،پردازش هاي توزیع شده و موازي ، محاسبات ابري و همچنین نیاز به تکرار و توزیع داده ها میان سرویس دهنده هاي متعدد : نیاز به یک پایگاه داده با قابلیت وسعت پذیري افقی را بیش از پیش روشن ساخته اند.یعنی پایگاه داده اي که بتواند به سادگی و با هزینه کم با افزودن گره هاي جدید به شبکه اش توسعه یابد که این برخلاف پایگاه داده هاي رابطه اي است که تنها به وسعت پذیري عمودي یعنی به ارتقا کارایی یک تک گره با افزودن به منابع آن یا با فناوري هاي مجازي سازي اهتمام ورزیده اند.

-3 ارزیابی پایگاه داده هاي NOSQL

در جدول شماره 1 تعدادي از پایگاه داده هاي محبوب NOSQL را مورد بررسی قرار می دهیم . ابتدا برخی پارامتر هاي مورد بررسی را شرح می دهیم:

دسترسی پذیري:

به ویژه دسترس پذیري بالا بدان معناست که سیستم به شیوه اي طراحی و اجرا شده است که حتی بعد از اینکه گره ها در خوشه از کار بیفتند - به عبارتی عملیا ت هاي خواندن و نوشتن - یا برخی از قطعات به خاطر ارتقا خراب شوند امکان ادامه عملیات را فراهم می آورد.

سازگاري :

منظور از سازگاري این است که تراکنش هایی که تکمیل می شوند نتایجی که تولید می کنند باید مطابق با محدودیت هاي پایگاه داده باشد.

ماندگاري:

یعنی نتایج تولیدي از تراکنش هایی که تکمیل شده اند باید از بین نرود ،تغییر نکند و ماندگار باشد. عملکرد در خواندن:عملکرد در خواندن باید به صورت بهینه باشد.

زمان ترمیم:
زمانی که طول می کشد تا یک نود خراب ترمیم شود.

قابلیت اعتماد:

مربوط به احتمال عملکرد بدون شکست یک سیستم براي یک دوره زمانی تعریف شده و زمانی قابلیت اعتماد بالامی رود که سیستم عملکرد عالی و بدون شکست براي یک مدت طولانی داشته باشد.

مقیاس پذیري:

مقیاس پذیري به این معناست که پایگاه داده هنگام افزایش بار کاري بتواند با افزودن نود جدید - مقیاس پذیري افقی - یا بهبود نودهاي موجود - مقیاس پذیري عمودي - عملکرد خوب خود را حفظ کند و در مورد پایگاه داده هاي NOSQL این مقیاس پذیري افقی است که این یک مزیت براي این پایگاه داده ها محسوب می شود زیرا هم باعث کاهش هزینه ها می شود و هم احتمال شکست کاهش می یابد.

زمان رسیدن به ثبات و تعادل:

زمانی که طول می کشد تا یک نود ترمیم شده یا تازه به سیستم پیوسته به حالت ثبات و تعادل برسد.

عملکرد در نوشتن:
عملکرد در نوشتن باید بهینه باشد.

جدول -1 خلاصه خصوصیات کیفیتی متفاوت تعدادي پایگاه داده معروف                                              

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید