Applied Big Data Fundamentals

مدرس دوره : مهندس حسن احمدخانی


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

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

( Distributed Storage and Processing | Hadoop Platform & Deployment |  Data Ingestion | Spark )

 

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

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

هدف این دوره آموزشی پرداختن به مباحث پایه ای در حوزه ابزارهای اکوسیستم هادوپ جهت احراز نیازمندی های مشاغل Data Engineer و Data Scientist و همچنین پوشش مطالب بنیادی کلان داده و اکوسیستم هادوپ جهت احراز نیازمندی های لازم برای Hadoop Administration  و Data Administration می باشد.

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

در این دوره یک پروژه در مقیاس نیازمندی ها و چالش های محیط های عملیاتی بر مبنای مباحث مطرح شده در سرفصل ها تعریف خواهد شد و اجرای این پروژه در فرآیند دوره خواهد بود.

 

خلاصه سر فصل هایی که در این دوره پوشش داده خواهند شد:

Big Data Concept and Challenges – 3 hours
Hadoop Platform and Hadoop Components – 9 hours
Hadoop Cluster Deployment and Management – 5 hours
Data Integration and Ingestion with Kafka, Nifi and Sqoop – 16 hours
Big Data Processing With Spark ( Spark Core and Spark SQL ) – 9 hours


 

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

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

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

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

 

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

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

  مقدمه

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

 

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

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

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

 اجزاء هادوپ

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

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

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

              سیستم ذخیره سازی Object در هادوپ / Ozone

             موتور اجرایی وظایف Machine Learning و Deep Learning در بستر هادوپ و Submarine / Yarn

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

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

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

  معماری و ویژگی های HDFS و نحوه عملکرد HDFS و اجزاء آن

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

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

HDFS Erasure Coding  

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

  معرفی Ozone و HDDS /Hadoop Distributed Data Store

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

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

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

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

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

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

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

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

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

  معرفی Submarine و نحوه اجرای وظایف

  امنیت در Hadoop

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

 

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

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

  تنظیمات Memory ، CPU و سایر منابع کلاستر

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

  اضافه و کم کردن Node به هادوپ

 HDFS Disk Balancer  

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

Hadoop and Docker  

  HDFS Tiered Storage

HDFS Storage Policy  

 HDFS High Availability

HDFS Cloud Storage Connectors

ملاحظات استقرار هادوپ در محیط عملیاتی

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

 

Big Data Ingesting and Integration ( یکپارچه سازی و تزریق داده به کلاستر هدوپ ) - 16 ساعت

  یکپارچه سازی داده

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

  انتقال داده ساخت یافته از پایگاه داده های رابطه ای به HDFS

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

  معرفی فرمت فایل های HDFS

  اجرای سناریو های مختلف انتقال داده به کمک Sqoop

  معرفی Nifi به عنوان ابزار انتقال داده ساخت یافته، غیر ساخت یافته و نیمه ساخت یافته به HDFS

  طراحی Data Flow در Nifi

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

  مقایسه Nifi و Flume

  معرفی Kafka و قابلیت های آن در ایجاد سیستم تزریق و یکپارچه سازی داده

  معرفی Zookeeper  و معماری آن

  نحوه استقرار Zookeeper و بهترین شیوه ها در استفاده از ZK

  معرفی، ویژگی ها و کاربرد های Kafka

 Broker - Topic - Partition- Message  

 Producers and Consumers 

 Partition and Replication 

Message Ordering Guarantees  

  نصب و استقرار کلاستر Kafka

  جریان داده

  مدیریت جریان داده به کمک Nifi و Kafka

  علت استفاده از Kafka

  مقایسه  Kafkaو سیستم های Message Queue

  توسعه App و استفاده از Kafka برای نگهداری پیام ها

Kafka Connect  

Change Data Capture – CDC  

CDC Methods  

  معرفی Schema Registry و علت استفاده از آن

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

  پیاده سازی CDC به کمک Kafka

  استفاده از Kafka برای Data Integration و Ingestion داده های ساخت یافته و نیمه ساخت یافته

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

  Kafka REST

  KSQL DB

  مدیریت و نظارت بر Kafka Cluster

Kafka Cluster Replication  

 

Apache Spark ( پردازش و تحلیل داده توسط Spark  ) - 9 ساعت

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

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

  Spark on YARN

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

  آماده سازی محیط توسعه و نصب ابزار ها

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

  Spark Core  

  داده ساختارهای Spark

  DataFrame and DataSet Operations

  انجام فرآیند های پردازشی روی داده های HDFS به کمک Spark

 RDD Operations  

Submit Jobs  

Jobs, Stages, and Tasks  

  مانیتورینگ Job ها  

Execution Plan  

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

Deployment Mode  

       Spark and Spark Job Tuning  

   Spark On Mesos