بخشی از مقاله
چکیده:
امروزه نرخ رشد دادهها افزایش چشمگیری دارد؛ بهطوریکه دادههای عظیم، یکی از مباحث مهم حال حاضر و آینده تحقیقاتی است و حوزههای بسیاری نظیر تحقیقات علمی، مدیریت دولتی، صنایع و بنگاهها را متحول کرده است. برای نگهداری و پردازش این دادهها نیاز به توسعه سیستمهای پایگاه داده عظیم در مقیاسهای بزرگ میباشد، اما چون گستردگی این دادهها زیاد و در دسترس افراد مختلفی هستند، این رشد سریع بسیاری از مسائل و چالشهای امنیتی را ایجاد و گسترش داده است. از این رو در این مقاله بر آن شدیم تا امنیت را در دو محور متفاوت مورد بررسی قرار دهیم. در محور اول مروری خواهیم داشت به برخی از چالشهای امنیتی موجود در دادههای عظیم و همچنین بررسی برخی از راهکارهای ارائه شده برای مواجهه با این چالشها و در محور دوم به دلیل توان ذخیرهسازی و پردازش دادههای عظیم به بررسی کاربردهای امنیتی مرتبط با آنها میپردازیم. تحلیل پژوهشهای انجام شده و روند فناوری در این زمینه، نشاندهنده آن است که امنیت و چالشهای مرتبط با آن جزو بحثهای جدید مطرح شده در این زمینه است و هنوز با چالشهای بسیار زیاد و حل نشدهای روبرو است.
کلید واژهها: امنیت، پایگاه دادههای بزرگ.
-1 مقدمه
1؛1 دادههای بزرگ
دادهی بزرگ، به مجموعه دادههایی اطلاق میگردد که حجم و سرعت تولید آنها بیش از ظرفیت و امکانات بانکهای اطلاعاتی مرسوم برای ضبط، ذخیرهسازی، مدیریت و تحلیل داده است و نمیتوان آنها را با یک پردازشگر معمولی پردازش کرد. شکل 1، سه ویژگی مهم دادههای بزرگ، Variety تنوع یا گوناگونی، Volume حجم و Velocity سرعت را نشان می دهد.
• تنوع یا گوناگونی Variety
Big Data از یک تنوع بزرگ از منابع میآید عموماً شامل سه نوع ساختیافته structured، نیمه ساختیافته semi structured و بدونساخت unstructured میباشد. دادههایی که در گروههای دادهای دادههای عظیم قرار میگیرند، شامل انواع مختلف دادهای از قبیل عکس، متن، ویدئو و ... هستند که از منابع گوناگونی به دست آمدهاند. فرمتهای مختلف دارند و دستهبندی آنها بسیار مشکل است و نمیتوان قالب یا ساختار خاصی برای آنها تعریف کرد و دادههای بزرگ از اینرو، غیر ساختارمند نامیده می شوند.
• حجم Volume
حجم یا اندازه داده، هماکنون بزرگتر از ترابایت و پتابایت است. مقیاس بزرگ و پیشرفت سریع دادهها، روشهای سنتی ذخیره سازی و تکنیکهای تحلیل قدیمی را پشت سرمی گذارد.
• سرعت Velocity
هردو سرعت تغییر داده و سرعت ایجاد داده، از ویژگیهای دادههای بزرگ هستند. سرعت خلق، جریان، پردازش و تجمیع اطلاعات، باید بهگونهای باشد که متناسب با ویژگیهای گروههای دادهای امروزی عمل کند. با توجه به سرعت تولید اطلاعات در دنیای امروز و نیاز به پاسخگویی بلادرنگ در بسیاری از برنامههای کاربردی و شبکههای اجتماعی، سرعتعمل و پردازش روی دادهها باید به گونهای باشد که متناسب با این ویژگیها انجام شود.[1] بحث پایگاه دادههای بزرگ، در سال 1975 توسط Endowmentپایهگذاری شد. این پایگاه دادهها برای نگهداری دادههای بزرگ، معرفی شدند. در واقع میتوان دو بخش اساسی و پایه بیگ دیتا را به صورت زیر بیان کرد:
-1 سیستمهای پردازشی که قابلیت ثبت و ضبط اطلاعات را دارند. از نمونههای بارز چنین سیستمهای پردازشی، دیتابیسهای NOSQL است که قابلیت پاسخگویی به درخواستهای همزمان را با کمترین زمان تأخیر دارند. از ویژگیهای چنین دیتابیسی میتوان به کد نویسی کمتر، سرعتبالا و افزایش حجم ذخیره اطلاعات نسبت به دیتابیسهای رایج اشاره کرد.
-2 سیستمهای آنالیزکننده اطلاعات که میتوانند همراه با سیستمهای پردازشی ارائهشده باشند و یا بهصورت نرمافزاری جداگانه مورد استفاده قرار گیرند. در مفهوم بیگدیتا، سیستمهای آنالیزکننده بر پایه مدل برنامهنویسی Map Reduce و معماری پردازش موازی بهصورت انبوه پیادهسازی میشوند. مقایسه انواع پایگاه دادهها، برحسب اندازه در جدول شماره 1 بیان شده است. مطمئناً، پایگاهدادهایی را بزرگ میگویند که تعداد سطرهای زیادی - در حد میلیون یا بیشتر - داشته باشد، و برای اجرای آن، دغدغههای سختافزاری و نرمافزاری وجود داشته باشد و توان عملیاتی خیلی کمی در صورت عدم بهینهسازی داشته باشد. معیارهای اندازهگیری پایگاه دادههای بزرگ عبارتست از:
· تعداد کاربران آنلاین که به طور همزمان از پایگاه داده استفاده می کنند.
· تعداد سطرها یا رکوردهایی که در پایگاه داده وجود دارد. - در حد میلیون -
• مقدار فضایی که صرف ذخیرهسازی پایگاهداده میشود.[3]
3؛1 چالشهای پیشرو در پایگاه دادههای بزرگ5]،[4
· به دلیل عدم ساختار دادهها، فیلتر کردن دادهها و تعیین سطوح دسترسی مختلف برای کاربران بسیار مشکل و هزینهبر است. برای حل این مشکل، معمولا از برچسبگذاری اطلاعات استفاده می شود.
· تولید اطلاعات مربوط به دادهها، در دادههای بزرگ نیازمند استفاده از تکنیکهای خاصی است، چرا که دادهها باید مورد تفسیر قرار گرفته و به دلیل حجم دادهای بالا و همچنین ساختارهای گوناگون و منابع اطلاعاتی مختلف، تعیین معیار ارزش و نحوه بهدست آوردن اطلاعات مشکل است.
· ناهمگنی در منابع سختافزاری: از آنجایی که دادههای بزرگ به صورت توزیعشده نگهداری میشوند، چارچوبهای سختافزاری متفاوت درسمت سرویسگیرندهها، می تواند مشکلساز شود که با استفاده از منابع مشترک تاًمین نرم افزاری، این سازگاری تا حد زیادی برقرار میشود.
· به دلیل اینکه این دادهها ساختارمند نیستند، تعیین معیار برای سنجش آنها و استخراج مناسب دستههای مختلف دادهای که در تصمیمگیریهای مربوط به کسب و کار به کار آید، مشکل است و بر اساس دیدگاههای مختلف میتوان معیارهای گوناگونی را در نظر گرفت.
· مدیریت دادههای بزرگ به شکلهای گوناگونی انجام میشود که مسائلی مانند تعیین سطح دسترسی و مدیریت منابع به دلیل متفاوت بودن منابع و توزیعشدگی سیستم، باید درنظر گرفته شود. الگوریتمهای مختلفی در این زمینه بهکار گرفته میشوند. اطلاعات، بلوکبندی شده و روی سیستمهای گوناگون قرار میگیرند تا منابع
· به دلیل حجم بالای دادهها، پالایش آنها در یک موضوع خاص، زمانبر است. باید این امر سنجیده شود که آیا دادهها، همان دادههایی است که در تصمیمگیری مورد استفاده قرار خواهد گرفت یا خیر. و همچنین باید اطمینان حاصل شود که مقدار دادهای آنها، هنوز درست است و قابلیت اطمینان برای این مقدار وجود دارد. همچنین این امر که چه مقدار داده لازم است که بتوان پیشبینیهای لازم را برای احتمالات پیشرو انجام داد را باید در پالایش دادهها، مورد توجه قرار گیرد.
· سرعت پردازش دادهها نیز در دادههای بزرگ باید مورد توجه قرار گیرد. چرا که همانطور که در ویژگیهای دادههای بزرگ، ذکر شده است، سرعت پردازش، یکی از عواملی است که دادههای بزرگ، به واسطهی آن شناخته و سنجیده می شوند.
· به دلیل تجمیع دادههای بزرگ از چندین منبع مختلف، تعیین این مسائل که چه کسی مسئول دقت و صحت اطلاعات است و همچنین تعیین اینکه سطوح دسترسی چگونه باید تعیین شود و برای تنظیمات امنیتی، چه کسی صاحب اطلاعات محسوب میشود، چالش برانگیز است.
· کاهش افزونگی و فشردهسازی: به طور کلی سطح بالایی از افزونگی در مجموعههای دادهای بزرگ وجود دارد و برای کاهش هزینهها به صورت غیرمستقیم، لازم است این افزونگی، بدون آسیب به اطلاعات اصلی، به صورت نسبی کاهش یابد.
· مکانیزمهای تجزیه و تحلیل در دادههای بزرگ باید به گونهای باشند که دادههای غیرساختیافته را مورد تجزیه و تحلیل قرار دهند و همچنین بتوانند در زمان محدود پاسخگو باشند. راهکارهایی در پایگاهدادههای سنتی و رابطهای به کار میروند، قابل توسعه نیستند. از طرفی در پایگاه دادههای غیررابطه ای نیز بحت عملکرد مطرح می شود. به همین دلیل باید راهکارهایی ترکیبی از این دو مسئله به کار گرفته شود.
1-3-1 روشهای مقابله با چالشهای کلیدی پایگاه دادههای بزرگ 1-1-3-1 پارتیشن بندی[6]
به تیکه کردن منطقی یک جدول بزرگ به تعدادی جدول فیزیکی که کوچکتر از جدول اصلی میباشند، پارتیشنبندی گویند. مسئلهی پارتیشنبندی یک راهحل کلیدی برای برخورد با چالشهای پایگاه دادههای بزرگ میباشد که به مدیر پایگاه داده این اجازه را میدهد، تا پایگاه داد های بزرگ را به چندین پایگاهداده کوچکتر تقسیم کند تا بتواند پایگاه دادههای بزرگ را بهتر مدیریت نماید و کاربر بهراحتی با استفاده از پرسجوها بتواند به هر کدام از این پارتیشنها - جدول، شاخص - دسترسی پیدا کند. پارتیشنبندی باعث بهبود در عملکرد و آسانتر شدن عملیات پشتیبانگیری و نگهداری میشود. مطمئناً وقتیکه یک جدول به جداول کوچکتری تقسیم میشود، حجم دادهی کمتری برای اجرای یک پرسجو اسکن خواهد شد. نمونهای از پارتیشنبندی یک جدول در شکل شماره 2 نمایش داده شده است.
2-1-3-1 فشرده سازی[7]
رشد داده، به فضای بیشتری در سطح دیسک نیاز دارد و این مسئله به نوبه خود، به معنی هزینه بیشتر برای نگهداری پایگاهداده و نسخههای پشتیبان تهیه شده برای آن و همچنین افزایش میزان I/O است. اگر روشی وجود داشت که بتوان حجم کنونی داده را به صورت مؤثرتری - در حجم کمتر - روی دیسک نگهداری کرد، همه مشکلات مرتبط با حجم زیاد داده نیز حل میشدند. با فشرده کردن