Apache Spark là một framework tính toán phân tán mạnh mẽ, được thiết kế để xử lý dữ liệu lớn với tốc độ vượt trội.. Chúng ta cũng sẽ tìm hiểu cách cài đặt và cấu hình Spark, cách sử dụn
Trang 1TRƯỜNG ĐẠI HỌC CÔNG THƯƠNG TP HCM
KHOA CÔNG NGHỆ THÔNG TIN
-
-BÁO CÁO ĐỀ TÀI MÔN HỌC DỮ LIỆU LỚN (BIGDATA)
ĐỀ TÀI BÁO CÁO
KỸ THUẬT LƯU TRỮ
GVHD: Trần Đình Toàn NHÓM THỰC HIỆN: Nhóm 22
1 Lê Hoài Nam - 2033210989(TN)
2 Đoàn Công Danh - 2001203070
(Bìa ngoài)
TP HCM, NĂM 2024
Trang 2TRƯỜNG ĐẠI HỌC CÔNG THƯƠNG TP HCM
KHOA CÔNG NGHỆ THÔNG TIN
-
-BÁO CÁO ĐỀ TÀI MÔN HỌC DỮ LIỆU LỚN (BIGDATA)
ĐỀ TÀI BÁO CÁO
DỰ ÁN PHÂN TÍCH DỮ LIỆU MOBILEPRICE
GVHD: Ngô Dương Hà NHÓM THỰC HIỆN: Nhóm 22
1 Lê Hoài Nam-2033210989(TN)
2 Đoàn Công Danh-2001203070
TP HCM, NĂM 2024
Trang 3BẢNG PHÂN CÔNG THỰC HIỆN CÔNG VIỆC NHÓM
Cá nhân tự đánh giá kết quả
Nhóm đánh giá kết quả
GV đánh giá
1 Lê Hoài Nam Tìm hiểu nội dung,
word, ppt, code
Hoàn thành tốt, đúng hạn
Nhiệt tình tương tác với nhóm
2 Đoàn Công Danh Tìm hiểu nội dung,
word, ppt, code
Hoàn thành tốt, đúng hạn
Nhiệt tình tương tác với nhóm
Trang 4LỜI MỞ ĐẦU
Trong bối cảnh dữ liệu ngày càng phát triển với tốc độ chóng mặt, việc xử lý và phân tích hiệu quả khối lượng thông tin khổng lồ này trở thành một thách thức lớn Trong số các giải pháp công nghệ nổi bật, Apache Spark đóng một vai trò quan trọng, được ứng dụng rộng rãi trong nhiều lĩnh vực, từ phân tích kinh doanh đến học máy và trí tuệ nhân tạo
Apache Spark là một framework tính toán phân tán mạnh mẽ, được thiết kế để xử lý dữ liệu lớn với tốc độ vượt trội Khác với mô hình MapReduce truyền thống, Spark cho phép
xử lý dữ liệu trong bộ nhớ (in-memory), nhờ đó tăng tốc độ xử lý lên hàng chục, thậm chí hàng trăm lần Hơn nữa, Spark cung cấp một API phong phú và dễ sử dụng, hỗ trợ nhiều ngôn ngữ lập trình phổ biến như Python, Java, Scala và R, giúp các nhà phát triển dễ dàng xây dựng các ứng dụng xử lý dữ liệu lớn
Trong đề tài này, chúng ta sẽ tìm hiểu sâu hơn về Apache Spark, bao gồm kiến trúc hệ thống, các thành phần cốt lõi như Spark Core, Spark SQL, Spark Streaming, MLLib, GraphX Chúng ta cũng sẽ tìm hiểu cách cài đặt và cấu hình Spark, cách sử dụng các API để
xử lý dữ liệu, cũng như phân tích hiệu suất và tối ưu hóa ứng dụng Spark Ngoài ra, chúng ta
sẽ xem xét một số trường hợp sử dụng cụ thể của Spark trong các lĩnh vực khác nhau
Thông qua đề tài này, chúng ta sẽ nắm vững hơn về framework Apache Spark, cách triển khai và ứng dụng nó trong việc giải quyết các bài toán Big Data Đây sẽ là một bài học quý giá, góp phần trang bị cho chúng ta những kiến thức và kỹ năng cần thiết trong lĩnh vực khoa học dữ liệu và kỹ thuật phần mềm
Trang 5MỤC LỤC
Giới thiệu
Bước 1: Tải và Cài đặt Hadoop 1
1.1 Tải Hadoop Source Code 1
1.2 Giải nén Hadoop 1
1.3 Di chuyển vào thư mục Hadoop 1
Bước 2: Cài đặt các phụ thuộc 1
2.1 Cài đặt Java Development Kit (JDK) 1
2.2 Cài đặt Maven 2
Bước 3: Cấu hình JAVA_HOME 2
Bước 4: Biên dịch Hadoop 2
Bước 5: Cấu hình Hadoop 3
5.1 Cấu hình các biến môi trường Hadoop 3
5.2 Cấu hình các file cấu hình Hadoop 3
1Bước 6: Cấu hình SSH 3
6.1 Tạo SSH Key 4
6.2 Sao chép SSH Key 4
Bước 7: Khởi động Hadoop Cluster 4
7.1 Khởi động HDFS 4
7.2 Khởi động YARN 4
Bước 8: Cài đặt Apache Spark 5
8.1 Tải và Cài đặt Apache Spark 5
8.2 Cấu hình Spark 6
8.3 Kiểm tra Spark 6
Bước 9: Chạy bài toán WordCount 6
9.1 Tải dữ liệu WordCount 6
9.2 Chạy WordCount 6
Bước 10: Kiểm tra kết quả 6
Kết luận
Trang 6Cài đặt và Cấu hình Hadoop cùng với Apache Spark
GIỚI THIỆU
Bài báo cáo này tóm tắt quy trình cài đặt và cấu hình Hadoop và Apache Spark trên máy tính Việc cài đặt này bao gồm nhiều bước từ việc tải nguồn mã, cài đặt các phụ thuộc cần thiết, cấu hình môi trường, cho đến việc chạy một bài toán mẫu (WordCount) trên hệ thống đã cài đặt
Bước 1: Tải và Cài đặt Hadoop
1.1 Tải Hadoop Source Code
Đầu tiên, chúng ta tải mã nguồn Hadoop từ trang chính thức bằng lệnh:
wget https://dlcdn.apache.org/hadoop/common/hadoop-3.4.1/hadoop-3.4.1-src.tar.gz
1.2 Giải nén Hadoop
Sau khi tải về, ta giải nén file tar.gz:
tar -xzf hadoop-3.4.1-src.tar.gz
1.3 Di chuyển vào thư mục Hadoop
Chúng ta chuyển vào thư mục chứa mã nguồn:
cd hadoop-3.4.1-src
Bước 2: Cài đặt các phụ thuộc
2.1 Cài đặt Java Development Kit (JDK)
Hadoop yêu cầu Java 8 hoặc Java 11 Cài đặt OpenJDK 11 bằng lệnh:
1
Trang 7sudo apt update
sudo apt install openjdk-11-jdk
Kiểm tra cài đặt Java:
java -version
2.2 Cài đặt Maven
Hadoop cũng cần Maven để biên dịch Cài đặt Maven:
sudo apt install maven
Kiểm tra phiên bản Maven:
mvn -v
Bước 3: Cấu hình JAVA_HOME
Cấu hình biến môi trường JAVA_HOME bằng cách mở file `~/.bashrc` và thêm các dòng sau:
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
export PATH=$JAVA_HOME/bin:$PATH
Tải lại cấu hình:
source ~/.bashrc
Bước 4: Biên dịch Hadoop
Sử dụng Maven để biên dịch Hadoop:
mvn package -Pdist -DskipTests -Dtar
Bước 5: Cấu hình Hadoop
2
Trang 85.1 Cấu hình các biến môi trường Hadoop
Mở file `~/.bashrc` và thêm các dòng cấu hình:
export HADOOP_HOME=~/Desktop/hadoop-3.4.1-src/hadoop-3.4.1
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
Sau đó, tải lại cấu hình:
source ~/.bashrc
5.2 Cấu hình các file cấu hình Hadoop
Cấu hình các file XML cần thiết như `core-site.xml`, `hdfs-site.xml`, `mapred-site.xml`, và
`yarn-site.xml` để xác định các tham số như địa chỉ NameNode, cấu hình HDFS, và cấu hình YARN
Bước 6: Cấu hình SSH
Hadoop yêu cầu cấu hình SSH để giao tiếp giữa các tiến trình
3
Trang 96.1 Tạo SSH Key
Tạo SSH Key:
ssh-keygen -t rsa
6.2 Sao chép SSH Key
Sao chép key vào localhost:
ssh-copy-id localhost
Bước 7: Khởi động Hadoop Cluster
7.1 Khởi động HDFS
Khởi động HDFS:
start-dfs.sh
7.2 Khởi động YARN
Khởi động YARN:
start-yarn.sh
Bước 8: Cài đặt Apache Spark
8.1 Tải và Cài đặt Apache Spark
Tải Apache Spark:
wget https://downloads.apache.org/spark/spark-3.4.1/spark-3.4.1-bin-hadoop3.2.tgz tar -xzf spark-3.4.1-bin-hadoop3.2.tgz
cd spark-3.4.1-bin-hadoop3.2
4
Trang 108.2 Cấu hình Spark
Cấu hình Spark để sử dụng YARN bằng cách chỉnh sửa file `conf/spark-defaults.conf`: spark.master yarn
8.3 Kiểm tra Spark
Chạy Spark Shell để kiểm tra:
./bin/spark-shell
Bước 9: Chạy bài toán WordCount
9.1 Tải dữ liệu WordCount
Tạo một file văn bản để chạy WordCount
9.2 Chạy WordCount
Chạy bài toán WordCount với lệnh:
spark-submit master yarn deploy-mode cluster wordcount.py
Bước 10: Kiểm tra kết quả
Kiểm tra kết quả trên HDFS:
hadoop fs -ls /user/hadoop/output
Hoặc qua giao diện web của YARN tại `http://localhost:8088`
Kết luận
5
Trang 11Quá trình cài đặt và cấu hình Hadoop cùng với Apache Spark đã được thực hiện thành công Qua đó, chúng ta có thể thực hiện các tác vụ phân tích dữ liệu lớn hiệu quả trên nền tảng này Bài toán WordCount đã được thực hiện và kết quả có thể được kiểm tra dễ dàng qua HDFS hoặc giao diện web của YARN
TÀI LIỆU THAM KHẢO [1]
6