Phân tích dữ liệu lớn với HADOOP VÀ SPARK
19th Jun 2023Khóa học Big Data nhằm cung cấp cho học viên những kiến thức và kỹ năng làm việc với Dữ liệu lớn.
“Dữ liệu lớn là những tài sản thông tin với ba chiều tăng trưởng (3V), tăng về lượng (volume), tăng về tốc độ (velocity), tăng về chủng loại (variety), do đó cần các hình thức xử lý mới để nâng cao khả năng ra quyết định, khám phá giá trị nội tại và tối ưu hóa quy trình làm việc”.
1. Tổng quan khoá học Big Data
Big Data là thuật ngữ dùng để chỉ một tập hợp dữ liệu rất lớn, với quy mô vượt quá khả năng nắm bắt và xử lý của các công cụ phần mềm truyền thống trong khoảng thời chấp nhận.
Big Data còn là tập hợp các kỹ thuật và công nghệ đòi hỏi cách tích hợp mới nhằm khám phá những giá trị tiềm ẩn to lớn từ những tập hợp dữ liệu lớn, đa dạng, phức tạp. Năm 2012, Gartner định nghĩa “Dữ liệu lớn là những tài sản thông tin với ba chiều tăng trưởng (3V), tăng về lượng (volume), tăng về tốc độ (velocity), tăng về chủng loại (variety), do đó cần các hình thức xử lý mới để nâng cao khả năng ra quyết định, khám phá giá trị nội tại và tối ưu hóa quy trình làm việc”.
2. Mục tiêu đào tạo của Khóa Big Data
Mục tiêu của Khóa học Big Data nhằm cung cấp cho học viên những kiến thức và kỹ năng cần thiết về các framework sau:
-
Hadoop: Là nền tảng nguồn mở viết bằng Java hỗ trợ xử lý và lưu trữ các tập dữ liệu cực lớn trên môi trường tính toán phân tán. Cốt lõi của Hadoop gồm phần lưu trữ (Hệ thống tập tin phân tán Hadoop – HDFS) và phần xử lý (MapReduce).
-
Spark: Là công cụ nguồn mở, có khả năng xử lý nhanh chóng, tiện dụng và phân tích. Nó có thể xử lý một lượng dữ liệu lớn với độ trễ thấp mà chương trình MapReduce thông thường không thể thực hiện.
Học viên bắt đầu tìm hiểu Thế nào là lưu trữ phân tán và xử lý dữ liệu lớn, và Tại sao không thể dùng các công cụ truyền thống để lưu trữ và xử lý dữ liệu lớn. Kế tiếp, tìm hiểu Spark (một công cụ kế tiếp MapReduce sử dụng Scala). Sau khi kết thúc khóa học, học viên có thể:
-
Cài đặt Hadoop version 2
-
Hiểu về Yarn và cơ chế làm việc
-
Hiểu sự khác biệt giữa xử lý thời gian thực (real time) và xử lý theo lô (batch)
-
Sử dụng MapReduce để phân tích xử lý theo lô
-
Các cách xử lý dữ liệu khác nhau với Java, Pig Latin và ngôn ngữ HQL
-
Thực hành nhiều ví dụ đa dạng
-
Sử dụng Sqoop và Flume để đưa dữ liệu lớn vào Hadoop cluster
-
Hiểu NoSQL và sử dụng HBase
-
Nắm rõ các khái niệm và tính năng của RDD trong Spark
-
Chuyển đổi và xử lý dữ liệu
-
Sử dụng ngôn ngữ truy vấn cấu trúc Spark (Spark SQL)
3. Nội dung & thời lượng đào tạo
-
Chương trình được đào tạo có thời lượng trong 5 ngày (40 giờ)
-
Nội dung chi tiết được đính kèm bên dưới
-
Ngôn ngữ giảng dạy: Tiếng Anh / Tiếng Việt
4. Nội dung chi tiết
- Overview of Big Data
- What is Big Data?
- History of Big Data
- The Vs’ of Big Data (3Vs’, 4Vs’, 5Vs’)
- Batch processing vs Stream processing
- Introduction to Apache Spark
- Apache Spark Components: Spark RDD API, Spark SQL, Spark MLlib, Spark GraphX, Spark Streaming
- Overview of PySpark
- Introduction to PySpark: Spark with Python (Python API)
- Why PySpark?
- Installing and configuration PySpark
- Spark context, Spark Session
- PySpark RDDs
- Introduction to PySpark RDDs (Resilient Distributed Dataset)
- RDDs operations
- Transformation
- Action
- Working with PySpark RDDs
- Create RDD: parallelize(), textFile()
- RDD Transformations: map(), filter(), flatMap(), RDD1.union(RDD2)
- RDD Actions: collect(), take(), count(), first(), reduce(), saveAsTextFile(),…
- Pair RDDs:
- Create Pair RDDs from key-value tuple/ regular RDD
- Transformations: reduceByKey(), groupByKey(), sortByKey(), join()
- Actions: countByKey(), collectAsMap()
- PySpark DataFrame
- Introduction to PySpark DataFrame
- Features and Advantages
- Working with PySpark DataFrame
- Create DataFrame: createDataFrame(), spark.read.csv(), spark.read.json()
- printSchema(), show()
- count()
- describe()
- crosstab()
- groupby()
- select(), select() và agg, count, max, mean, min, sum..., select().distinct(),
- orderby().asc()/desc()
- withColumn(), withColumnRenamed()
- drop(), dropDuplicates(), dropna()
- filter(), where()
- Column string transformation
- Conditional clauses: .when(<if condition>, <then x>), .otherwise()
- User defined functions (UDF)
- Data Visualization in PySpark using DataFrames
- hist(), distplot()
- pandas_histogram()
- PySpark SQL
- Introduction to PySpark SQL
- Running SQL Queries Programmatically
- select()
- when()
- like()
- startswith(), endswith()
- substr(), between()
- Manipulating data
- Group by
- Filtering
- Sorting
- Missing and replacing value
- Joining Data
- Repartitioning
- Registering DataFrames as Views
- Data Preprocessing & Analysis
- Wrangling with Spark Functions
- Dropping, Filtering, Joining
- Working with missing data
- Using lazy processing
- Parquet
- Removing, Splitting rows/columns
- Data validation
- Feature Engineering
- Feature Generation
- Differences, Ratios
- Deeper Features, Time Features
- Time Components, Joining On Time Components
- Date Math
- Extracting Features/ Text to New Features
- Splitting & Exploding
- Scaling data
- Pivoting & Joining
- Binarizing, Bucketing & Encoding
- Data Analysis
- Exploratory Data Analysis (EDA), Corr
- Visualization: distplot, implot…
- Wrangling with Spark Functions
- Overview of PySpark MLlib
- Introduction to PySpark MLlib
- PySpark MLlib algorithms
- Building a Model
- Estimator and evaluator
- Cross-validation, Grid Search
- Interpreting Results
- Machine Learning with PySpark MLlib
- Supervised Learning (Classification & Regression)
- Linear Regression (pyspark.ml.regression)
- Logistic Regression (pyspark.mllib.classification)
- Decision Tree (pyspark.mllib.classification)
- Random forest (pyspark.mllib.classification)
- Gradient-Boosted Tree
- Pipeline
- Introduction to Pipeline
- Working with Pipeline (pyspark.ml import Pipeline)
- Unsupervised Learning (Clustering & Recommender System)
- Clustering with KMeans
- Recommender System - ALS
- Association rules – FPGrowth (pyspark.ml.fpm.FPGrowth)
- Supervised Learning (Classification & Regression)
- PySpark Streaming
- Introduction to PySpark Streaming
- Why PySpark Streaming?
- Features and Advantages
- Streaming Context
- DStream
- Streaming Transformation Operations
- Streaming Checkpoint
- Natural Language Processing - NLP
- Tools for NLP
- Tokenizer
- StopWordsRemover
- NGram
- CountVectorizer
- TF-IDF
- Tools for NLP
- Apache Spark standalone cluster
- Running Master Server
- Connecting from Slave computers to Master Server
- Deployment project in Mater – Slave computers system
- GraphX
- Introduction to GraphX
- Working with GraphX
- Creating graph
- Vertex and edge
- Visualization Graph
- Filtering
- Connecting
- Motif finding
- Triangle count
- Page rank
5. Phương pháp đào tạo
- Khóa học bao gồm 30% thời gian thảo luận lý thuyết và 70% thực hành.
- Học viên mang theo laptop (RAM tối thiểu: Linux OS 4GB , Windows 6GB)
6. Tài liệu, phòng học & trang thiết bị giảng dậy
-
Mỗi học viên được phát giáo trình của NIIT biên soạn và tài liệu hỗ trợ học tập miễn phí.
7. Yêu cầu đầu vào
-
Học viên cần có kiến thức cơ bản về hệ điều hành Linux và ngôn ngữ lập trình Java
8. Nội dung khóa học
9. Chứng chỉ
Học viên tham dự từ 70% thời lượng đào tạo trở lên, được cấp Chứng chỉ tham gia khóa học Chuyên viên phân tích Dữ liệu lớn do NIIT cấp (Certificate of Participation).
10. Chính sách bảo hành học tập:
- Bảo hành học tập, tổ chức ĐÀO TẠO LẠI cho tất cả học viên đã theo học tại Học viện nhưng kết quả học tập chưa đạt yêu cầu, hoặc cần hỗ trợ thêm về kiến thức để làm việc thực tế.
- Học viên theo học tại Học viện được hỗ trợ kiến thức, thực hành ngoài giờ học offline (trực tiếp tại Học viện) và online (trực tuyến với giáo viên) nhằm đảm bảo hiệu quả học tập tốt nhất cho học viên.
- Add new comment
- 121 views
Comments
admin
admin
admin
1. Trách nhiệm chính/Main responsibilities
2. Trình độ Học vấn/ Educational Qualifications
We are looking for a candidate with 5+ years of experience in a Data Engineer role, who has attained a degree in Computer Science, Statistics, Informatics, Information Systems or another quantitative field, prioritizing graduating from Technology Universities, FPT University or other Tech University.
3. Kiến thức/ Chuyên môn có liên quan/ Professional Knowledge
4. Kinh nghiệm liên quan/ Relevant Experience
Add new comment