Applied Big Data Fundamentals


عنوان دوره طول دوره زمان برگزاری تاریخ شروع دوره شهریه استاد وضعیت ثبت نام ثبت نام
Applied Big Data Fundamentals 14 جلسه 42 ساعت یکشنبه از ساعت 17:30 الی 20:30
سه شنبه از ساعت 17:30 الی 20:30
یکشنبه ۷ مهر ۱۳۹۸ 1,553,000 تومان حسن احمدخانی

سرفصل و محتوای دوره مفاهیم بنیادی و کاربردی در تحلیل کلان داده ها با استفاده از Hadoop

( Hadoop Ecosystem & Deployment , Distributed & Parallel Processing, Ingesting Data , ...)


معرفی و هدف دوره :

در دوره آموزشی مفاهیم بنیادی پردازش و مدیریت کلان داده ها به بررسی نظری و عملی کلان داده ها، معماری کلان داده ها و ابزارهای پردازشی در حوزه داده های کلان پرداخته خواهد شد. هدف از این دوره آموزشی ایجاد توانمندی های پایه ای در دانشجو برای درک حوزه کلان داده ها و حوزه ی NoSQL، توانمندی در استفاده از ابزارهای پایه ای در پردازش و مدیریت کلان داده ها، شناخت  و توانایی کار با اکوسیستم هدوپ ( Hadoop )، نصب و راه اندازی کلاستر هادوپ، استفاده از تکنولوژی های ورود کلان داده به کلاستر هدوپ، انجام روال های پردازش داده توسط Pig و اسپارک ( Spark ) می باشد.

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

طول دوره : 45 ساعت

مشاهده دوره Applied Big Data Fundamentals در نقشه راه

مشاهده رزومه استاد

پیش نیاز دوره : آشنایی با بانک های اطلاعاتی رابطه ای و آشنایی با یک زبان برنامه نویسی


سرفصل و رئوس مطالب دوره :


مقدمه ای بر کلان داده ها، پایگاه های داده ای NoSQL و سیستم های ذخیره سازی توزیع شده - 4 ساعت

مقدمه

بررسی انواع داده ها و منابع تولید کننده آن ها در سیستم ها و محیط های عملیاتی

 سیستم های مدیریت داده توزیع شده و پایگاه داده های توزیع شده

ویژگی های پایگاه داده های توزیع شده

بررسی پایگاه داده های NoSQL به عنوان یکی از پیاده سازی های پایگاه داده های توزیع شده

قابلیت ها و نقاط ضعف پایگاه داده های NoSQL

تعریف، توصیف و بررسی ویژگی های کلان داده ها ( Big Data)

جایگاه کلان داده ها و پردازش کلان داده ها

کاربرد کلان داده ها و تحلیل آنها

منابع تولید کننده داده های کلان

چه داده هایی کلان داده نیستند و معیار چیست

چالش هایی که داده های کلان و پردازش آن ها برای ما ایجاد می کنند

داده های جریانی ( Stream Data )، مشخصات و تولید کننده های آن ها

کاربرد و علت پردازش داده های جریانی ( Stream Processing )

داده های سریع ( Fast Data ) و پردازش داده های سریع

نمایش و بررسی نمونه داده های کلان و ارزیابی آن ها

چالش های مدل های سنتی ذخیره سازی در مواجهه با کلان داده ها

مسائل مدل های پرس و جو پردازش داده های کلان در سیستم های سنتی

پردازش توزیع شده و پردازش موازی - 2 ساعت

تعریف پردازش موازی

تعریف و توصیف ذخیره سازی و بازیابی داده به صورت موازی

تعریف و توصیف پردازش توزیع شده

بررسی چالش های ذخیره سازی و بازیابی داده به صورت توزیع شده

منابع لازم برای انجام پردازش و ذخیره سازی توزیع شده

نحوه ی تخصیص و مدیریت منابع در انجام پردازش توزیع شده

نحوه ی توزیع وظایف در یک سیستم ذخیره سازی و پردازش توزیع شده

معرفی و مقایسه ابزارهای موجود برای مدیریت منابع وظایف در محیط های پردازش توزیع شده 

Hadoop Ecosystem (معرفی، مقدمه و شروع کار با هادوپ و اکو سیستم هادوپ) - 9 ساعت

معرفی Hadoop به عنوان سکوی پردازش و ذخیره سازی داده در ابعاد کلان 

اجزاء هادوپ

             مدل پردازش توزیع شده نگاشت کاهش / MapReduce

             سیستم فایل توزیع شده هادوپ  / HDFS

             سیستم مدیریت منابع وظایف در اکو سیستم هادوپ / YARN

قابلیت ها و توانمندی های Hadoop

نقاط قوت و ضعف هادوپ در مقایسه با سیستم های پردازشی موجود

معرفی مدل پردازشی نگاشت کاهش

مراحل انجام کار در اجرای وظایف نگاشت کاهش

حل مسئله و توسعه نمونه برنامه های نگاشت کاهش

مسائل قابل حل در مدل پردازشی نگاشت کاهش و مسائل سازگار با این مدل

اجرای وظایف نگاشت کاهش در هادوپ و بررسی مراحل اجرا

معرفی سیستم فایل توزیع شده در Hadoop

ویژگی های HDFS و نحوه عملکرد HDFS

NameNode و DataNode و وظایف هر کدام

ساختار داده ها و بلاک ها در HDFS

معرفی YARN و وظیفه YARN

اجزاء YARN

منابع قابل مدیریت و نحوه ی مدیریت منابع و وظایف توسط YARN

امکانات YARN برای مدیریت و نظارت بر وظایف

حوزه کارکردی مناسب برای YARN ، HDFS و MapReduce

 Hadoop Cluster Deployment and Management ( نصب، راه اندازی و مبانی مدیریت کلاستر هدوپ) - 9 ساعت

برنامه ریزی و منابع لازم برای ایجاد کلاستر هدوپ

روش های ایجاد کلاستر

نصب نرم افزار ها و پیش نیاز ها

نصب، انجام پیکربندی و راه اندازی کلاستر

فایل های پیکر بندی و انجام پیکربندی های تکمیلی برای عملکرد بهتر کلاستر پردازشی و ذخیره سازی

تنظیمات Memory و نحوه ی تخصیص RAM در سرور به اجزاء کوچکتر و ایجاد Container

مدیریت کلاستر، Start و Stop کردن آن

تعامل و کار با سیستم فایل توزیع شده Hadoop و انجام اعمال کاربری، مدیریتی و نظارتی در HDFS 

تعامل و کار با YARN

ارسال وظایف نگاشت کاهش و نظارت و مدیریت آن ها به کمک YARN

 راه حل Hadoop برای پردازش کلان داده ها

مسئله ایجاد و قرار دادن فایل های کوچک (Small File Problem) در HDFS

مسئله UberTask و Job های کوچک در Hadoop

استفاده از پکیج های Hortonworks و Cloudera جهت ایجاد کلاستر Hadoop

مبانی مدیریت کلاستر

انجام تنظیمات پیکربندی و تغییر در آن ها به کمک ابزارهای مدیریت کلاستر 

Big Data Ingesting (روش های وارد کردن داده های کلان به سیستم ذخیره سازی توزیع شده هادوپ به صورت اتوماتیک) - 9 ساعت

تزریق و ورود داده به سیستم فایل توزیع شده هادوپ

نحوه ی نصب و راه اندازی سیستم های تزریق داده

روش ها و ابزارهای ورود داده غیر ساخت یافته

              معرفی Flume و Fluentd به عنوان ابزار ورود داده غیر ساخت یافته و نیمه ساخت یافته به سیستم ذخیره سازی توزیع شده هادوپ

                     - نصب و راه اندازی به صورت تک نود و کلاستر

                     - اجزاء و روش کارکرد

                     - تست و مقایسه اجمالی

              اجرای سناریو های مختلف ورود داده غیر ساخت یافته و نیمه ساخت یافته به سیستم ذخیره سازی توزیع شده

              معماری یک کلاستر Ingestion چند لایه برای کنترل و مدیریت ورود داده به کلاستر هادوپ

              بررسی و ارزیابی داده های وارد شده به سیستم

ورود داده ساخت یافته از پایگاه داده های رابطه ای به سیستم فایل توزیع شده Hadoop

            علت ورود داده های ساخت یافته به سیستم توزیع شده ی Hadoop

            معرفی Sqoop به عنوان ابزار ورود داده ساخت یافته

            اجزاء و روش کارکرد Sqoop

            نصب و راه اندازی

            اجرای سناریوهای مختلف ورود داده

            امکانات پیشرفته Sqoop برای انجام روال های ورود داده

            بررسی و ارزیابی داده های وارد شده به سیستم

معماری مناسب جهت ایجاد یک سیستم تزریق داده کامل برای ورود انواع داده ها به سیستم ذخیره سازی توزیع شده هادوپ

Apache Pig ( استفاده از Pig برای انجام فرایند های ETL و تعامل با داده های کلان) - 6 ساعت

معرفی Pig

              - ویژگی ها

              - کاربرد ها

              -  اجزاء

              - جایگاه Pig در سیستم هادوپ

              - مدل اجرایی

مزایا و معایب Pig

راه اندازی Pig 

Pig Latin

توسعه نمونه برنامه ها و استفاده از Pig جهت تعامل با داده های کلان و انجام پردازش دسته ای

توسعه نمونه برنامه ها و استفاده از Pig برای انجام عملیات پاک سازی داده و فرایندهای ETL

Apache Spark Overview (مقدمه ای بر پردازش و تحلیل داده توسط اسپارک در ابعاد کلان داده) - 6 ساعت

معرفی اسپارک

مدل پردازش توزیع شده در اسپارک

اجزاء اسپارک

ویژگی ها و کاربرد های اسپارک

انواع مدل های نصب و راه اندازی اسپارک

انواع روش های مدیریت منابع اسپارک

نصب و راه اندازی کلاستر اسپارک

مفاهیم کار با اسپارک و اسپارک کلاستر

مدل اجرایی وظایف در اسپارک

ارتباط با اسپارک توسط اسکالا (Scala) و پایتون (Python) 

مدل داده ای RDD

انواع منابع داده ای و تبدیل آن ها به مدل داده ای اسپارک

توسعه ی نمونه برنامه های اسپارک برای انجام فرایند های پردازش دسته ای و ETL

توسعه نمونه برنامه های اسپارک برای تحلیل برخط کلان داده