زمانبندی در محاسبات ابری
مقدمه
فناوری رایانش ابری، به عنوان مدل و رهیافتی برای حل مسائل پیچیده و بزرگ در علوم مهندسی، صنعت و تجارت مطرح شده است و هر روز بر تعداد برنامه های کاربردی متفاوتی که از زیر ساخت ابری به منظور تامین نیازهای محاسباتی، ذخیرهسازی اطلاعات و سایر موارد بهرهبرداری میکنند، افزوده میشود.(زمانبندی در محاسبات ابری)
بنابراین در چنین محیط پیچیدهای زمانبندی و مدیریت منابع، چالش بزرگی را ایجاد میکند و ارائه یک روش زمانبندی مناسب، بسیار مهم و ضروری میباشد.
محیط ابری رسیدگی به پارامترهای تأثیرگذار به صورت توأمان حائز اهمیت میباشد، در تحقیق جاری این نکته مورد توجه قرار گرفته و پارامترهای حائز اهمیت نیز قابلیت اطمینان، انرژی و makespan خواهد بود.
حل بسیاری از مسائل در زمینههای مهندسی و سایر علوم، مستلزم استفاده از منابع محاسباتی قدرتمند است. محیطهای رایانش ابری، بستری مناسب، برای حل مسائلی است که نیاز به محاسبات سنگین و طولانی دارند.
منابع، از لحاظ جغرافیایی در این محیط، توزیع شده اند، اما از نظر منطقی به صورت یک منبع واحد دیده میشوند.
رایانش ابری یک زیربنای سختافزاری و نرمافزاری میباشد که دسترسی قابل اعتماد، پایدار، فراگیر و ارزان را به منابع محلی دیگران فراهم میکند.
آنها، این قابلیت را به وجود میآورند که بتوانند بنگاههای مجازی را به منظور اشتراک و یکپارچهسازی میلیونها منبع که از نظر جغرافیایی در سطح سازمانها و حوزههای مدیریتی پراکندهاند ایجاد کنند.(زمانبندی در محاسبات ابری)
ابریها از یکسری منابع ناهمگون، سیستمهای مدیریت، سیاستها و برنامههای کاربردی با نیازمندیهای مختلف، تشکیل شده اند.
بیان مساله
کاربرد محاسبات ابری در حوزه انرژی تأثیرات محیطی فعالیتهای حوزه انرژی را بهبود میبخشد.
فعالان صنعت از فناوریهای ابری در مسیر بهبود سرعت و مسئولیتپذیری در مدیریت سیستمهای اصلی عملیاتهای مهندسی استفاده میکنند.
این تعهد اغلب شامل استفاده از ترکیبی از ابر با تکنولوژیهای موبایلی برای کمک به بهبود کارکرد تجهیزات از راه دور و مدیریت بهتر داراییهای سازمانی و کاهش اتلاف منابع میشود[1].(زمانبندی در محاسبات ابری)
در کنار تمامی مزایای مذکور محاسبات ابری شرکتهای انرژی را در محدود کردن اثرات زیستمحیطی و کاهش میزان مصرف انرژی یاری میرساند.
این تلاشها شامل تحقق مجازیسازی و تحکیم زیرساختها و ارائه برنامههای کاربردی و فرآیندها در قالب سرویسهای مختلف بهمنظور کاهش مصرف انرژی، هزینهها و افزایش فرصتهای شغلی است[2].
رایانش ابری یک سیستم توزیعی و موازی شامل مجموعهای از کامپیوترهای درون ارتباطی و واقعی است.
کامپیوترها بهطور دینامیکی ایجاد شده و به عنوان یکی از منابع هماهنگ براساس توافقات سطح سرویس ارائه میشوند، که با مذاکره بین سرویسدهنده و مشتری بهوجود میآیند[1].
دلیل تشبیه این تکنولوژی به ابر این است که مانند ابر جزئیات فنیاش را از کاربران مخفی میسازد و لایهای از انتزاع را بین جزئیات فنی و کاربران بهوجود میآورد[5].
آنچه سیستم محاسبات ابری ارائه میکند برنامههای کاربردی تجاری برخط است که از طریق مرورگر وب یا نرمافزارهای دیگر به کاربران ارائه میشود. اطلاعات و نرمافزارهای کاربردی بر روی سرورها ذخیره شده و براساس تقاضا در اختیار کاربران قرار میگیرد[6].
در این معماری، اکثر دادههای ابر بر روی سرورهای موجود در بستر اینترنت قرار گرفته و برنامههای کاربردی علاوه بر سرورهای ابری بر روی مرورگرهای کاربران نیز اجرا می شود[7].
عموماً مصرفکنندههای سیستمهای محاسبات ابری، مالک زیرساخت فیزیکی ابر نیستند، بلکه برای عدم پرداخت هزینه آن، از عرضهکنندگان شخص ثالث[2] اجاره میکنند.(زمانبندی در محاسبات ابری)
آنها منابع را در قالب سرویس استفاده میکنند و صرفاً بهای منابع به کار برده شده، میپردازند[8].
بسیاری از سرویسدهندگان محاسبات ابری، با بهکارگیری مدل محاسبات کاربردی امکان کاهش مصرف انرژی انجام کارها را بهگونهای مشابه با صنایع همگانی(مانند برق) فراهم میسازند.
این در حالی است که سایر عرضهکنندگان سرویسهای خود را بهصورت اشتراکی عرضه میکنند. بهاشتراکگذاری قدرت محاسباتی[3] میان چند درخواستکننده میتواند باعث بهبود نرخ بهرهوری شود زیرا با این شیوه دیگر سرورها بدون دلیل بیکار نمیمانند که باعث کاهش قابل توجه هزینه ها علاوه بر افزایش سرعت تولید و توسعه برنامه کاربردی می شود
. تأثیر دیگر این شیوه نیز این است که منابع به میزان بیشتری مورد استفاده قرار میگیرند، زیرا مشتریان محاسبات ابری نیازی به محاسبه و تعیین بیشترین مقدار برای بار حداکثر خود دارند[9].
منابع کامپیوتری میتواند بهطور دینامیکی به شرایط و اولویتهای کاربر اختصاص یابد.
در محیط رایانش ابری هر کاربر برای اجرای هر کار، ممکن است با صدها منابع مجازی روبرو شود.
رایانش ابری کاملا به مجازیسازی وابسته است.
سیستم زمانبندی، وظایف مختلفی را در ابر جهت افزایش نرخ تکمیل کار و افزایش بهرهوری از منابع و در نتیجه افزایش توان محاسباتی، برعهده دارد. در واقع مفهوم زمانبندی به معنای اختصاص منابع به کارها است.
از این جهت مساله زمانبندی یک مساله مهم در مدیریت منابع موجود در ابر است، چراکه با وجود درخواستهای زیاد امکان انجام زمانبندی بهطور دستی در مرکز داده وجود ندارد.
در چارچوب زمانبندی باید پارامترهای ورودیهای کاربر مانند زمان اجرای سرویس، منابع موردنیاز، تعداد آن و… در نظرگرفته شود. مجازیسازی بهطور وسیعی در رایانش ابری استفاده میشود.
با این حال بهدلیل همگنی دینامیکی منابع بر پایگاه رایانش ابری، دستگاههای مجازی باید با محیط مجازی رایانش ابری انطباق یابند تا بهترین عملکرد را با استفاده کامل از سرویس و منابع آن بهدست بیاورند. اما برای بهبود استفاده از منابع، منابع بایستی بهدرستی اختصاص یابند.
سرویسهای کاربر در محیط ابر بهصورت مستقل و یا وابسته است.
در سرویسهای مستقل هر سرویس و منابع مورد نیاز آن مشخص است اما در سرویسهای وابسته تقدم و تأخیر اجرای سرویسها بایستی در زمانبندی مشخص درنظرگرفته شود.
در این حالت اگر اجرای سرویس i مقدم بر اجرای سرویس j باشد در این حالت بایستی ابتدا سرویس i اجراشده و سپس سرویس j اجرا شود، همچنین هر یک از سرویسها فقط زمانی اجرا میشوند که منابع لازم در دسترس باشد[10].
در این پژوهش قصد داریم با انتخاب الگوریتم بهینهسازی چندهدفه کارآمد به زمانبندی سرویسهای وابسته از طریق تخصیص منابع بپردازیم بطوریکه زمان تکمیل سرویسها و هزینه پرداختی به سرویسدهنده کمینه شود.
الگوریتمهای مختلفی برای زمانبندی و کاهش مصرف انرژی انجام کارها و تخصیص منابع ارائه شده است. اما مرتبه زمانی این الگوریتمها بالا و زمان یافتن پاسخ بهینه طولانی است. زمانبربودن این الگوریتمها باعث میشود کارایی مناسبی در حل این مساله نداشته باشند[11].
بنابراین نیاز به استفاده از الگوریتمهای دیگری است که در زمان قابل قبول با هزینه مناسب، پاسخ مناسبی برای این مساله به دست آوردند.
از جمله این الگوریتمهای مناسب، الگوریتمهای بهینهسازی هوشمند هستند.
معروفترین الگوریتمهای بهینهسازی چندهدفه عبارتند از الگوریتم چندهدفه بهینهسازی ازدحام ذرات(MOPSO])، الگوریتم ژنتیک نسخه دوم با مرتبسازی نامغلوب(NSGA-II])، الگوریتم تکاملی چندهدفه مبتنی بر تجزیه(MOEAD)[1].
در این پژوهش قصد داریم با الگوریتم جستجوی گرانشی و ازدحام ذرات به زمانبندی سرویسهای وابسته از طریق تخصیص منابع بپردازیم بطوریکه انرژی اجرای کارها، زمان تکمیل سرویسها و هزینه پرداختی به سرویسدهنده کمینه شود.(زمانبندی در محاسبات ابری)
نتیجه گیری
در این تحقیق یک چارچوب برای بهینه سازی پارامترهای زمانبندی وظایف با استفاده از الگوریتم بهینه سازی ازدحام ذرات و ماتریس جستجوی گرانشی ارائه شد.
تلاش روش پیشنهادي براین بود تا یک زمانبندی وظایف بهینه را پیدا کند که از میزان شایستگی خوبی برخوردار باشد.
همچنین الگوریتم پیشنهادي با پارامترهاي مختلف پیادهسازي شد و نمودارهاي مربوط به آن مشاهده شد. استفاده از الگوریتم بهینهسازی ازدحام ذرات زمان لازم براي پارامترهای زمانبندی وظایف را تا حدي کاهش میدهد، هر چند که جواب قطعی را به ما نمیدهد و جوابی نزدیک به بهینه را خواهد داد.
براي نشان دادن عملکرد هر الگوریتم، مقایسه آن با الگوریتمهاي قبلی امري ضروري است. بنابراین نتایج حاصل از کار، با الگوریتم ژنتیک مقایسه گردید.
با مقایسه الگوریتم، به این نتیجه رسیدیم که زمان پاسخ الگوریتم بهینهسازی ازدحام ذرات در مقایسه با الگوریتم ژنتیک و بهینه سازی ازدحام ذرات کمتر است و همچنین الگوریتم بهینهسازی ازدحام ذرات از پایداري خوبی برخوردار است به طوريکه جواب حاصل از روش پیشنهادی نزدیک به جواب بهینه خواهد بود.(زمانبندی در محاسبات ابری)
با توجه به نمودارهاي همگرایی، مشاهده کردید که الگوریتمPSO با رویکرد جستجوی گرانشی از همگرایی خوبی برخوردار است.
همچنین با توجه به نمودارهاي میزان پایداري، براي الگوریتمPSO با رویکرد جستجوی گرانشی به از اين تعداد وظایف مختلف، آزمایش جواب واحدي به دست داده است، بنابراین پایداري الگوریتم ازدحام ذرات با رویکرد جستجوی گرانشی خوب بوده و میتوان نتیجه گرفت که جواب به دست آمده از الگوریتم پیشنهادی، جواب بهینه میتواند باشد.
پیشنهادات
با توجه به نتایج و مطالب ارائه شده در این تحقیق پیشنهاد برای کارهای آتی این است که با به کار گیری جستجوی گرانشی در الگوریتم های تکاملی دیگر مانند ژنتیک و رقابت استعماری، کلونی مورچه و غیره به مقایسه این الگوریتمها پرداخته شود.
همچنین پیشنهاد می شود که روش پیشنهادی بر روی مجموعه داده های مختلف مورد بررسی و ارزیابی قرار گرفته شود و یا با تعریف چندین تابع هدف میزان کارایی روش پیشنهادی سنجیده شود.(زمانبندی در محاسبات ابری)
در نهایت پیشنهاد می شود روش پیشنهادی بر روی پارامترهای دیگری مانند انرژی تعریف شود و با الگوریتم های فرااکتشافی جدید مانند ملخ، پروانه –اتش و… مقایسه شود.
برای مشاهده مطالب بیشتر به سایت فرزدان مراجعه نماید.