عنوان پایاننامه
تخصیص منابع در محاسبات ابری
- رشته تحصیلی
- مهندسی فناوری اطلاعات
- مقطع تحصیلی
- کارشناسی ارشد
- محل دفاع
- کتابخانه دانشکده برق و کامپیوتر شماره ثبت: E1920;کتابخانه مرکزی -تالار اطلاع رسانی شماره ثبت: 49399
- تاریخ دفاع
- ۰۵ شهریور ۱۳۹۰
- دانشجو
- علیرضا انگبینی
- استاد راهنما
- ناصر یزدانی
- چکیده
- با توسعه فراگیر فناوری اطلاعات و ارتباطات، شاهد افزایش حجم دادهها و نیز نیازهای مضاعف پردازشی و تحلیل دادهها هستیم. امروزه توان محاسباتی را به عنوان یکی از منابع مادر (در کنار آب، برق، سوخت و تلفن) در نظر میگیرند. لذا برای تامین منابع محاسباتی دیدگاهها و روشهای مختلفی پیشنهاد و ارائه شده است. محاسبات ابری رویکرد جدیدی است که محاسبات و ذخیره اطلاعات را از دستگاههای شخصی به سمت مراکز دادهای عظیم میبرد و به صورت سرویس از طریق اینترنت به کاربران ارائه میکند. متاسفانه در طی این مرحله، چالشها و مسائلی نیز وجود دارند که به هنگام تصمیم در مورد استفاده از آن به عنوان زیرساخت محاسباتی، باید مورد توجه قرار گیرند. تا کنون در زمینه ارزیابی کارایی سیستمهای محاسبات ابری، کارهایی نه چندان زیاد از روشهای مدلسازی و شبیهسازی صورت گرفته است. ولی از آنجا که در حین انجام یک پروژه عملی، مسائل و مشکلات بیشتری نسبت به آنچه در تئوری دیده میشود، بروز مینمایند، نیاز به تحقیقی عملی برای ارزیابی این سیستمها به چشم میخورد. این پژوهش با پیشبرد یک تحقیق عملیاتی و پیادهسازی یک کاربرد بر روی بستر محاسبات ابری در محیط واقعی، به ارزیابی عملی سیستمهای ابری میپردازد. مسئله مورد نظر تحلیل دادههای یک شبکه بیسیم به منظور یافتن گرهها و لینکهای گلوگاه و افزایش کیفیت شبکه است که بر روی بستر ابری گوگل با نام Google App Engine توسعه و استقرار یافته است. همچنین به طور موازی این برنامه بر روی سرور محلی نیز پیادهسازی شد تا بتوان مقایسات و ارزیابی مورد نظر را انجام داد. با انجام این ارزیابیها هزینههای استفاده از محاسبات ابری و منابع محلی به دست آمده و با هم مورد مقایسه قرار گرفتند. با وجود اینکه در پروژه جاری هزینههای محاسبات ابری کمتر از منابع محلی محاسبه شد، ولی وجود برخی از سربارها مانند سربارهای برنامهنویسی و بارگذاری دادهها بر روی ابر میتواند به عنوان مشکل استفاده از زیرساخت ابری در نظر گرفته شود. البته این امر بستگی به نوع کاربرد و داده مورد استفاده دارد. از این نظر کاربردها را به دو گروه کاربردهای تعاملی و پردازش دستهای تقسیم کردیم که هر کدام ملاحظات مربوط به خود را دارد. به عنوان نمونه در پروژه جاری که یک پردازش دستهای میباشد، درصد زیادی از هزینه و زمان به فرایند بارگذاری داده اختصاص دارد، در حالیکه در کاربردهای تعاملی، با مسائل دیگری مانند زمان پاسخ و در دسترس بودن مواجهیم. لازم به ذکر است در صورت بهرهگیری از فناوری مجازیسازی، میتوان به بهرهوری بسیار بالاتری نسبت به آنچه در استفاده از منابع محلی در این تحقیق محاسبه شد، دست یافت که تاثیر بسزایی در هزینه و زمان استفاده از منابع محلی خواهد گذاشت.
- Abstract
- Increasing size of data and demand to process and analyze it, induces enterprises to employ alternative computing paradigms to overcome computing capacity short¬ages. Cloud Computing is a new emerged computing approach that promises scalability of resources, on-demand availability and pay-as-you-go economic model instead of heavy investment on IT resources. Although as mentioned, Cloud is almost the best computing power solution, added value of using it instead of using local resources is highly depended on the concrete application characteristics, our assets and Cloud provider features. Thus, all aspects like trade-offs in costs, performance and accuracy must be considered before designing or selecting an appropriate solution. To investigate these issues, different methods including theoretical modeling, simulation, and experimental research have been employed. This research concentrates on practical Cloud development challenges. Therefore, the major activity of this research is development of a data analyzing application on Google App Engine platform, and measurement of its costs and performance. This thesis presents the concepts exist in Cloud Computing and the experimental results of work and states notable points of using Cloud as computing infrastructure for data intensive applications. We also discuss our method of calculating Cloud and local resources costs, analyze obtained experimental results and different issues of exploiting Cloud for different types of applications in two major interactive and batch categories.