مدیریت کلان داده (Big Data Management) – به زبان ساده
مباحث «مدیریت کلان داده» (Big Data Management) را میتوان به دو بخش مجزا تقسیمبندی کرد که در ادامه بیان شدهاند. مبحث اول، علم داده بزرگ است که موضوع ارزیابی کلان دادهها را پوشش میدهد. مبحث دوم، «چارچوب کلان داده» (Big Data Framework) محسوب میشود که شامل کتابخانهها و الگوریتمهای نرمافزاری است و توسط آنها میتوان «پردازش توزیع شده» (Distributed Processing) و تحلیل دادههای کلان را روی خوشهای از رایانهها انجام داد. چارچوب کلان داده را اغلب، تحت عنوان «زیرساخت کلان داده» (Big Data Infrastructure) میشناسند. این بخش، وظیفه سازماندهی و مدیریت اطلاعات برای تحلیل و استخراج ارزش را دارا است و به دو زیرساخت سختافزاری و مدیریت داده تقسیم میشود که هر یک در ادامه تشریح شدهاند.
زیرساخت سختافزاری
زیرساخت سختافزاری کلانداده (بیگ دیتا)، وظیفه ذخیرهسازی فیزیکی اطلاعات جمعآوری شده را دارا است. زیرساخت ذخیرهسازی میتواند از ابعاد مختلف بررسی شود. ابزارهای ذخیرهسازی بر اساس فناوریهایی که از آن بهره میبرند، قابل دستهبندی هستند.
به طور مثال، رم، آرایهای از دیسکها، دیسکهای مغناطیسی و حافظههای فلش از جمله فناوریهای ذخیرهسازی هستند. از سوی دیگر، زیرساختهای ذخیرهسازی را میتوان از دید معماری شبکه بررسی کرد که برخی از آنها در ادامه معرفی شدهاند.
- DAS: شامل یک مجموعه از ابزارهای ذخیرهسازی داده است که به صورت مستقیم و از طریق HBS به هم متصل شدهاند و هیچگونه شبکهبندی ندارند.
- NAS: ذخیرهسازی در سطح فایل، شامل چندین دیسک است که به شبکهای از رایانهها متصل شده و وظیفه ذخیرهسازی دادهها را بر عهده دارد.
- SAN: شبکههایی اختصاصی هستند که ذخیرهسازی در سطح بالا را برای گروهی از کامپیوترها فراهم میکنند.
در نهایت، معماری سیستمهای ذخیرهسازی به صورتی که جوابگوی ویژگیهای طبیعی و ذاتی کلان داده باشد، از جمله زمینههای پژوهشی بسیار جذاب برای محققان به شمار میآید. زیرساخت ذخیرهسازی باید توانایی مقیاسپذیری به صورت افقی و عمودی را به شکلی پویا و متناسب با کاربرد داشته باشد. یکی از فناوریهایی که میتواند این نیازمندیها را تا حدودی برطرف کند مجازیسازی ذخیرهسازی است که به وسیله «رایانش ابری» (Cloud Computing) امکانپذیر شده است. این روش به گونهای عمل میکند که شبکهای از ابزارهای ذخیرهسازی طوری به نظر آیند که گویی یک وسیله ذخیرهسازی هستند. در حال حاضر، مجازیسازی ذخیرهسازی توسط معماریهای SAN و NAS امکانپذیر است. با وجود این، مجازیسازی ذخیرهسازی مبتنی بر SAN میتواند از لحاظ کارایی، مقیاسپذیری و امنیت، بهتر از معماری NAS باشد.
چارچوب مدیریت دادهها
این بخش، به سازماندهی اطلاعات به نحوی که موثرترین پردازشها را امکانپذیر سازد، میپردازد. چارچوب مدیریت دادهها را میتوان به سه لایه «سیستم فایل» (System file)، فناوری پایگاهدادهها و مدلهای برنامهنویسی دستهبندی کرد.
سیستم فایل
سیستم فایل، پایه و اساس ابزارهای ذخیرهسازی کلان داده است. در ادامه، به طور مختصر به برخی از سیستم فایلهای «متنباز» (Open Source) و طراحی شده برای کاربردهای کلانداده پرداخته شده است. شرکت گوگل سیستم فایل توزیع شده و مقیاسپذیر GFS را برای استفاده از کاربردهای مربوط به دادههای بسیار بزرگ طراحی و پیادهسازی کرده است. GFS روی مجموعهای از سرورها، برای فراهم آوردن کارایی بالاتر و تحمل خطا اجرا میشود. این سیستم برای کاربردهایی که سایز داده بسیار بزرگ و یا نیاز به عملیات خواندن و نوشتن مکرر باشد، مناسب است.
علاوه بر این، برخی از شرکتها و پژوهشگران، سیستم فایلهای دیگری را برای برطرف کردن نیازمندیهای کلان داده گسترش دادهاند. از این جمله، میتوان به HDFS و KOSMOSFS اشاره کرد که سیستمهای متنبازی هستند که از GFS مشتق شدهاند. شرکت مایکروسافت، سیستم فایل COSMOS را برای مدیریت پشتیبانی از موتور جستوجوی تبلیغات تجاری ساخته است. شرکت فیسبوک، سیستم فایل HayStock را برای ذخیرهسازی حجم بسیار زیادی از تصاویر و دادهها پیادهسازی کرده است.
فناوریهای پایگاه داده
سیستمهای پایگاه داده سنتی نمیتوانند برخی از چالشهای مربوط به کلان داده مانند تنوع و مقیاسپذیری را برطرف کنند. در اینجا، فناوریهایی نیاز هستند که دارای ویژگیهایی مانند پشتیبانی از حجم بسیار زیاد داده باشند.
پایگاه دادههای NOSQL توانستهاند خود را با مشکلات کلان داده انطباق دهند و تا حدودی آنها را برطرف کنند. در ادامه به برخی از انواع اصلی پایگاه دادههای NOSQl اشاره میشود.
ذخیرهسازی کلید-مقدار: این روش دارای یک مدل دادهای ساده است که در آن، دادهها به صورت جفت کلید-مقدار ذخیره میشوند. پایگاه دادههای کلید-مقدار که در سالهای اخیر به وجود آمدهاند، بسیار مورد استفاده قرار گرفتهاند. از جمله این نوع پایگاه دادهها میتوان به Amazon DynamoDB اشاره کرد.
پایگاه دادههای ستونمحور: در این نوع از پایگاه دادهها، داده به جای سطری، به صورت ستونی ذخیره و پردازش میشود. جفت سطرها و ستونها روی گرههای مختلف تقسیم میشوند تا بتوان به قابلیت مقیاسپذیری دست یافت. مهمترین عامل الهامبخش پایگاهدادههای ستون محور، مدل دادهای کلان داده گوگل است.
پایگاه دادههای سندی: این پایگاه دادهها با ذخیرهسازی دادهها به صورت سند، ساختار دادههای پیچیدهتری را نسبت به پایگاه داده کلید-مقدار، پشتیبانی میکنند. در اینجا، هیچ قانون یا اجباری مبنی بر اینکه کدام سند باید از نقشه پیروی کنند و یا کدام سند باید حذف شود وجود ندارد. پایگاه دادههای MongoDb ،SimpleDB و CouchDB از نوع پایگاه دادههای سندی هستند. مدل دادهای تمامی پایگاههای داده سندی مانند JSON است. نمونهای از مدل داده پایگاه داده MongoDB در زیر آمده است:
{
title:’MongoDB'
last-_editor: “172.5.123.91",
body: “MongoDB is a ..."
categories: [“Database”,”NoSQL”,”Document Databases"],
reviewed:false
}
مدلهای برنامهنویسی برای مدیریت کلان داده
اگرچه، پایگاههای دادههای NOSQL به دلایل متعدد محبوب هستند؛ اما برخلاف پایگاه دادههای رابطهای، پشتیبانی نسبتاً کمی ار عملگرهای تحلیل، کوئریها و عملگرهای پیوند دارند. مدلهای برنامهنویسی برای پیادهسازی دستورات و عملگرها و همچنین آسانسازی تحلیل دادهها به شدت مورد نیاز هستند.
با استفاده از این مدلها میتوان کارایی پایگاه دادههای NOSQL را افزایش داد و همچنین باعث کاهش فاصله میان پایگاه دادههای رابطهای و NOSQL شد. پایگاه دادههای NOSQL تقریباً در حال تبدیل شدن به مبنا و اساس تحلیل دادههای حجیم هستند. در ادامه، به دو نوع مدل پردازش اشاره شده است.
مدل پردازش عمومی: این مدل مرتبط به کاربردهای عمومی است. مدل «نگاشتکاهش» (MapReduce) از جمله این مدلها محسوب میشود. MapReduce یک مدل برنامهنویسی ساده و قوی است که توانایی توزیع و موازیسازی خودکار محاسبات را روی خوشهای از رایانهها و سیستمها دارد. این مدل، شامل دو تابع نگاشت و کاهش است. Mastoc از دیگر مدلهای پردازش عمومی است که فایل ورودی را به قسمتهای کوچکتر بین گرههای کارگر تقسیم میکند.
مدل پردازش گرافیکی: برای نمایش روابط بین افراد و موجودیتها با یکدیگر در کاربردهای در حال رشدی نظیر شبکههای اجتماعی میتوان از این نوع مدلها استفاده کرد. پردازش گرافیکی، ویژگی بازگشتی و تکرارپذیری دارد؛ یعنی، یک مجموعه داده ممکن است به دفعات مشاهده و پردازش شود. به عنوان نمونهای از این نوع مدلها، میتوان به مدل Graphlab اشاره کرد. هدف از این نوع مدلها، الگوریتمهای یادگیری ماشین موازی است.
اگر نوشته بالا برای شما مفید بوده است، آموزشهای زیر نیز به شما پیشنهاد میشوند:
- مجموعه آموزشهای دادهکاوی و یادگیری ماشین
- آموزش نرمافزار هوش تجاری Tableau (تحلیل دادهها و اخذ تصمیمات)
- مجموعه آموزشهای هوش مصنوعی
- علم داده، تحلیل داده، دادهکاوی و یادگیری ماشین ــ تفاوتها و شباهتها
- مفاهیم کلانداده (Big Data) و انواع تحلیل داده — راهنمای جامع
^^
بسیار عالی و آموزنده. اگر بشه بعدا مفصل تر هم توضیح داده بشه که بهترم میشه.
فقط در قسمت فایل سیستم منظور HDFS است(به اشتباه HOFS) نوشته شده است.
سلام، وقت شما بخیر؛
از بابت گزارش این اشکال در مطلب از شما بسیار سپاسگزاریم، در همین راستا متن بازبینی و اصلاح شد.