Tải bản đầy đủ (.pdf) (73 trang)

Tìm hiều mô hình xử lý dữ liệu mapreduce và hệ thống file phân tán hadoop

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (14.85 MB, 73 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO

ĐẠI HỌC HUẾ
TRƯỜNG ĐẠI HỌC KHOA HỌC

VÕ THANH PHI

TÌM HIỂU MƠ HÌNH XỬ LÝ DỮ LIỆU
MAPREDUCE VÀ HỆ THỐNG FILE
PHAN TAN HADOOP
CHUYEN NGANH: KHOA HOC MAY TINH

MA SO: 8.48.01.01

LUAN VAN THAC SI KHOA HOC
DINH HUONG UNG DUNG
Người hướng dẫn khoa học:

TS. NGUYỄN ĐÌNH HOA CƯƠNG
PGS.TS NGUYEN MAU HAN

Thừa Thiên Huế, 2020


LỜI CAM ĐOAN

Tôi xin cam đoan luận văn này là cơng trình nghiên cứu của cá nhân tơi. Tất
cả số liệu, kết quả nghiên cứu trong luận văn là trung thực, chưa được người khác

công bố trong bất cứ một cơng trình nghiên cứu nào.


Học viên

Võ Thanh Phi


LOI CAM ON
Luận văn thạc sĩ khoa học này là kết quả của quá trình học tập tiếp thu kiến
thức trong nhà trường. Trong quá trình thực hiện luận văn tốt nghiệp, tôi luôn nhận
được sự giúp đỡ và hỗ trợ tận tình của Q Thầy Cơ và đồng nghiệp.

Tơi xin chân thành bày tỏ lòng biết ơn:

- TS NGUYEN DINH HOA CUONG, PGS. TS NGUYEN MAU HAN đã
tận tình hướng dẫn, truyền đạt kinh nghiệm, khuyến khích, động viên và giúp đỡ tơi
trong suốt q trình thực hiện luận văn tốt nghiệp.
- Quý Thầy Cô Khoa Công nghệ thông tin và Phòng Đào tạo Sau đại học,
Trường Đại học Khoa học Huế đã tận tình hướng dẫn, truyền đạt kiến thức, tạo điều
kiện thuận lợi trong suốt quá trinh học tập.
- Ban Giám hiệu, Ban Giám đốc Thư viện Trường Đại học An Giang đã hỗ

trợ và tạo điều kiện thuận lợi để tơi hồn thành khóa học.
Xin nhận lời cảm ơn sâu sắc nhat!
Học viên

Võ Thanh Phi

1


các nút nhanh hơn sẽ thực hiện hàm Reduce thứ nhất, khi hoàn thành sẽ khởi động hàm

Reduce thứ hai. Với hệ số này, việc cân bằng tải khi xử lý cơng việc sẽ tốt hơn nhiễu,

giảm chỉ phí thất bại nhưng lại tăng chi phí khung (MapReduce framework).

Chores

Dữ liệu

ae SẠP

.

đầu vào

(khoa, gia

`



Cac cap

Ket qua

Ham

.
tr) trung

,


(khoa, téng

Fe

Reduce

.
lan

dt

Các giá trỊ
a

hed

có cùng
khóa)

Hình 2.7 Mơ hình hoạt động của hàm Reduce

2.4.4. Ngun tắc hoạt động
MapReduce có thể xử ly dữ liệu được lưu trữ trên một hệ thống file hoặc trong
cơ sở dữ liệu, nó hoạt động bằng cách phân chia dữ liệu đầu vào từ các nút worker,
thực hiện song song các nhiệm vụ của Map. Khi các trình ánh xạ đã hoàn thành, các

kết quả được chuyên đến các máy khác đang chạy các nhiệm vụ Reduce. Dữ liệu
đầu vào của hàm Reduce


được lay từ hàm

Map nên nhiệm

vụ Reduce, luôn thực

hiện sau nhiệm vụ Map.

MapReduce hoạt động=
7

T

các giai đoạn như trong hình 2.8:

T

T

T

K3x k3 k2

| KS k5 k2

T



Đâu vào


& + 5 @ @ be =
| KIxkiy kế |

Nhóm theo khóa

kivwy

| k2vvv

|

3xx

IE

Khóa trung gian

<————— —

xo j

k5vx

POG bd
bp
OUTPUT

Kêthợp


<—————D trộnvì Sắp xếp
<——_
<—————

Gini doan Reduce
Bun

Hình 2.8 Cac giai đoạn hoạt động của MapReduce
22


CHUONG 2. TINH TOAN PHAN TAN VỚI HADOOP.....................
2s. se 15
2.1. Giới thiệu về Apache Hadoop.....................--22-222 222225121212111211121122122121 xe 15
2.2. Các thành phần của Hadoop.......................
22: 2s 2222222225122512111221121112212112212 xe 16
2.3. Hệ thống file phân tán (Hadoop distributed file system)........................-- 22-552 17

2.4. XỬ LÝ PHÂN TÁN VỚI MAPREDUCE.....................--- 222222, 19
2.4.1. Giới thiệu về MapReduee......................--552222 221222122122112122122222 xe 19
2.4.2. Hàm Map..........................

..20

2.4.3. Hàm Reduce....
2.4.4. Nguyên tắc hoạt động....
2.4.5. Hiệu quả sử dụng mơ hình tính tốn MapReduce....

2.5. Tiểu kết chương 2......................-22©222222222122212212221e6


29

CHUONG 3. XU LY BIG DATA VA UNG DUNG...

30

3.1. Xử ly Big Data v6i Hortonworks Sandbox .......

..30

3.1.1. Giới thiệu Hortonworks Data Platform 3.0..............

..30

3.1.2. Những lợi ích của Hortonworks Data Platform 3.0....
3.1.3. Các thành phần của Hortonworks Data Platform 3.0.....................
3.1.4. Cài đặt Hortonworks Sandbox HDP 3.0 trên Oracle VirtualBox ...

3.2. Bài toán thống kê độ tin cậy và tỷ lệ lỗi của đĩa cứng...

3.2.1.

na... ..........

36

3.2.2. Dữ liệu đầu vào và đầu ra của bài toán...................-.
S221 22112211111 2e 36
3.2.3 Cài đặt bài toán trên Hortonworks Sandbox HDP 3.0..........................-+: 38


3.3. Danh gia Hortonworks Sandbox HDP 3.0 và SQL 2019 trong xử lý Big Data ....46

3.3.1. Đánh giá hiệu năng xử lý truy vấn dữ liệu..........................--- 2222222222222 46
3.3.2. Kết luận........................---:
22c 221222211221112211211121112211121121 21122121 rae 49
3.4. Tiểu kết chương 3......................--22 22222122212112112112211211221122222 re 50
KET LUAN VA HƯỚNG PHÁT TRIỂN.......................
22 22222122212221221222222 e6 51
1. Kết qua dat diroe trong lan Van ercscsercecnrenmen rename

51

2. Một số hạn chế để tài.....................-252 222222 22312221122112211211122112211211 11c. 5]
3. Hướng phát triỂn. . . . . . . . . . - - 2-

22s 22222122112111211121112112121121122222
2e 52

TÀI LIỆU THAM KHẢO.........................
522 2222221222122122112112112112122122222 xe 53
PHỤ LỤC CÀI ĐẶTT..........................--2-52 2212212212211211211211211211211211212122
re 54
iv


DANH MỤC CÁC BẢNG
Trang

Bảng2.l


Dữ liệu đầu ra của hàm Map.......................--©25222222122212212222222222
e6 24

Bảng2.2

Kết quả của giai đoạn kết hợp......................---522222221222122212222222222
e6 24

Bang 2.3

Kết quả của giai đoạn trộn và sắp XẾp....................-252 2222221222122 2 e6 25

Bảng24_

Kết quả của bài toán......................--222-22222212221222122122112222222
2e 25

Bang 3.1

Cấu trúc file dữ liệu đầu vào...........................-552222 2212221221212. 2x6 37

Bang 3.2

Thống kê tỷ lệ hư hỏng của các Ổ đĩa......................
222222 22222212221222122222 e6 4

Bảng 3.3

Thống kê số bản ghi và dung lượng lưu trữ dữ liệu trên SQL................ 46


Bang 3.4

Kết quả so sánh lần 1 với bộ dữ liệu khoảng 0.22 GB............................--- 47

Bảng 3.5

Kết quả so sánh lần 2 với bộ dữ liệu khoảng I GB.............................----- 47

Bảng 3.6

Kết quả so sánh lần 3 với bộ dữ liệu 1.64 GB........................---222222.222ce 47

Bảng 3.7

Kết quả so sánh lần 4 với bộ dữ liệu 3.8 GB........................---22222222222
e6 47

Bang 3.8

Kết quả so sánh lần 5 với bộ dữ liệu 14 GB.........................--2222 22222226 48

Bang 3.9

Kết quả so sánh lần 6 với bộ dữ liệu 30.5 GB.........................---222.22222zce 48

Bảng 3.10 Kết quả so sánh lần 7 với bộ dữ liệu 47.2 GB........................--222222222222ce 48


DANH MỤC CÁC HÌNH
Trang

Hình 1.1

Mơ hình Master/SÏave........................ ch

HH

ngu He 5

Hình 1.2

Mơ hình Client/S€TV€T........................
c1 nh
HH He, 5

Hình 1.3

Mơ hình bình đẳng...........................
22 22 222222122112111211121112112211122
xe 5

Hình 1.4

Mo hình sử lý phần:DẤn pusrsesitoitoiBiEbiSEGDIEHGDNIEESBRIREEEGĐISHERGABSEĐeBNi 6

Hình 1.5

Các phân đoạn và mơ hình vật lý cho một quan hệ tổng thê...................... 7

Hình 1.6


Mơ hình truy cập từ xa trực tiẾp.........................--- 2222222212222

Hình 1.7

Mơ hình truy cập từ xa gián tiếp......................---©2-222112111211211.12
xe 8

Hình 1.8

Mơ hình tổng thê của Big Dafa........................
22222 221222122112212222ee 10

Hình 1.9

Các thành phần phân tích Big Data........................2222 222222122212221222222 e0 12

re 8

Hình 1.10 Những ứng dụng của Big Data trong thực tế.....................---©222222222222zz2xce2 13
Hình 2.1

Mơ hình hoạt động của Apache Hadoop YARN.................................... 16

Hình 2.2

Mơ hình phân chia và phân phối các Block của HDES........................... 17

Hình 2.3

Mơ hình hoạt động của Hadoop distributed file system......................... 18


Hình 2.4

Mơ hình hoạt động của secondary NameNode

Hình 2.5

Mơ hình tổng qt của MapReđuce ..............................--22222 222222122226 20

Hình 2.6

Mơ hình hoạt động của hàm Map......................
ị- ccc Sc series 21

Hình 2.7

Mơ hình hoạt động cla ham Reduce...

Hình 2.8

Các giai đoạn hoạt động của MapReduce.......................ccccssieinreree 22

Hình 2.9

Quá trình thực hiện bài tốn đếm từ ........................
255 2n tre 26

Hình 2.10

Q trình lập lịch cho nhiệm vụ MapReduce trên YARN...................... 27


Hình 3.1

Các ứng dụng của Hortonworks Data Platform........................
--- -:ccs:ss+ 5: 30

Hình 3.2

Data management của HDP 3.0.........................- LH

Hình 3.3

Datacaccess cla-HDP 3:0 :zcsitssosrtiigiotsiirllslSE-EEISGISEEIVIEGSEAIVI3SESGI903
03888 32

Hình 3.4

Governance integration cla HDP 3.0 oo... ec ceceececeeseeeeeeeteeseeseteesentenes 33

Hình 3.5

Security cla HDP 3.Ú.......................S1 2x HH
HH HH Ha HH Hà nà tt 34

Hình 3.6

Operations của HDP 3.........................
- c St 211 2 ty Hà
Hye 34


Hình 3.7

Giaordién newoi ding DAS venience enceueyemcemenecenmm

VI

....................................-: 19

ec cecececeeceeeeeeeteeseeeeeeeentenes 22

HH

RNR

ue 31

38


Hình 3.8

Câu lệnh truy vấn để giải bài tốn............................---222 2222212221222. xe 39

Hình39

Kết quả thu được sau khi thực hiện câu truy

Hình 3.10

Thống kê cơng việc thực hiện của hệ thống


Hình 3.11

Tổng thời gian thực hiện câu truy vấn.........................---52222222212221222122
e6 40

_ "Ắ
` `

.

39
40

Hình 3.12 Biểu đồ so sánh thời gian truy vấn dữ liệu giữa SQL và HDP 3.0......... 49

Vii


DANH MUC CAC CHU VIET TAT

CSDL

Cơ sở dữ liệu

DAG

Directed Acyclic Graph (Dé thi theo chu ky)

DAS


Data Analytics Studio (Studio phân tích dữ liệu)

DBMS

Database Management System (Hé théng quan ly co sé dit liéu)

EC

Erasure Coding (Ma hoa xóa)

HDFS

Hadoop Distributed File System (Hé théng tap tin phân tán Hadoop)

HDP

Hortonworks Data Platform (Nén tảng dữ liệu Hortonworks)

ORC

Optimized Row Columnar (Dữ liệu dòng cột được tối ưu hóa)

RPC

Remote Procedure Call (Phương thức truy cập dữ liệu từ xa)

Vili



MỞ ĐẦU
1. LÝ DO CHỌN ĐÈ TÀI
Ngày nay với sự phát triển nhanh chóng của cơng nghệ thơng tin, dữ liệu được
tạo ra từ các hoạt động nghiên cứu khoa học, các trang web thương mại điện tử hay

các trang mạng xã hội, với kích thước ngày càng lớn và rất phức tạp.
Tuy nhiên, những bộ dữ liệu này, ân chứa trong mình những thơng tin vơ cùng
q giá. Nếu được phân tích hay trích xuất hợp lý, nó có thể giúp cho việc phát triển
kinh doanh, nghiên cứu khoa học hoặc những dự báo mà chúng ta có thể đề phịng
hay có những hướng xử lý hiệu quả trong tương lai. Ví dụ như Amazon, Facebook
hay Google, các cơng ty này đang cố gắng làm giàu kho đữ liệu của minh. Ti
những dữ liệu này, họ có thê phân tích để nắm bắt hành vi, sở thích của người tiêu
dùng để đưa ra những chiến lược kinh doanh hiệu quả hơn.
Vì dữ liệu được tạo ra với tốc độ rất nhanh và rất phức tạp (đa số là không có

cấu trúc), nên các cơ sở dữ liệu truyền thống khơng thê xử lý được, địi hỏi chúng ta
phải thay đổi quy trình từ việc lưu trữ đến việc phân tích dữ liệu nên hiện nay nhiều
cơng ty, doanh nghiệp trong nước vẫn còn lúng túng chưa khai thác hiệu quả những
bộ đữ liệu có cấu trúc phức tạp này.
Từ những

lý do trên, em

chon

để tài “Tìm

hiểu mơ

hình xử lý dữ liệu


MapReduce và hệ thống file phân tán Hadoop”. Hệ sinh thái Hadoop sẽ giúp chúng
ta, giải quyết những vấn đề về lưu trữ và phân tích đữ liệu với quy mô lớn.

2. MỤC TIỂU NGHIÊN CUU
- Nghiên cứu tổng quan về Big Data và các công cụ truy vấn dữ liệu trên
Big Data.
- Nghiên cứu mơ hình xử lý dữ liệu MapReduce và hệ thống file phân tán
Hadoop.

3. DOI TUONG NGHIÊN CỨU
- Dữ liệu Big Data.


- Mơ hình xử lý đữ liệu MapReduce, hệ thống file phân tán.
- Công cụ phần mềm mã nguồn mở Hadoop.

4. PHƯƠNG PHÁP NGHIÊN CỨU
4.1. Nghiên cứu lý thuyết
- Tìm hiểu, phân tích và tổng hợp các bài báo, tài liệu liên quan đến đẻ tài.
- Nghiên cứu cơ sở lý thuyết về Big Data.
- Nghiên cứu mơ hình MapReduce, hệ thống file phân tán Hadoop.
4.2. Nghiên cứu thực nghiệm

- Thu thập dữ liệu thực tế.
- Phân tích, thiết kế và cài đặt bài toán trên nền tảng xử lý dữ liệu Big Data là
Hortonworks Sandbox HDP 3.0
5. PHẠM VI NGHIÊN CỨU
- Nghiên cứu tổng quan về Big Data.
- Mô hình xử lý dữ liệu MapReduce và hệ thống file phân tán Hadoop.

- Phân tích, thiết kế và cài đặt bài toán trên nền tảng xử lý dữ liệu Big Data là
Hortonworks Sandbox HDP 3.0.

6. BÓ CỤC CỦA LUẬN VĂN
Luận văn chia làm 3 chương:
Chương 1. Tổng quan về cơ sở dữ liệu phân tan va Big data
Chương 2. Tính toán phân tán với Hadoop
Chương 3. Xử lý Big data và ứng dụng


CHƯƠNG 1. TONG QUAN VE CO SO DU LIEU PHAN TAN
VA BIG DATA

1.1. GIGI THIEU VE CO SO DU LIEU PHAN TAN
Cùng với sự phát triển của công nghệ mạng máy tính. Nhu cầu thu thập, lưu
trữ, trao đổi và xử lý thông tin của các công ty hay các tập đoàn đa quốc gia, ngày
càng lớn, cơ sở đữ liệu tập trung đã bộc lộ nhiều điểm yếu như: khó mở rộng khơng
gian lưu trữ; hệ thống khơng thể hoạt động tốt với số lượng người dùng ngày càng
tăng: trên các máy tính đơn lẻ, khả năng xử lý đữ liệu chậm. Với những điểm yếu
trên, cơ sở dữ liệu phân tán đã dần dần khắc phục được. Vậy, cơ sở dữ liệu phân tán

là như thế nào? Nó có những đặc điểm và lợi ích gì?
Cơ sở dữ liệu phân tán là một tập hợp dữ liệu, mà về mặt logic, tap hop nay
thuộc cùng một hệ thống, nhưng về mặt vật lý dữ liệu đó được phân tán trên các vị

trí khác nhau của một mạng máy tinh.[1]
Có nhiều nguyên nhân thúc đẩy việc cần thiết phải sử đụng cơ sở đữ liệu
phân tán:
- Sư phát triển của các cơ cầu tô chức. Với nhu cầu mở rộng hoạt động của các
công ty, doanh nghiệp. Việc thiết kế và sử dụng cơ sở dữ liệu phân tán là đáp ứng

được yêu cầu về truy xuất và khai thác đữ liệu.
- Giảm chỉ phí truyền thơng. Trong một số trường hợp, khi thiết kế cơ sở dữ
liệu phân tán, người ta thường tối ưu hóa ứng dụng địa phương (local application)!
để giảm chỉ phí truyền thơng.
- Hiệu quả công việc. Việc tối ưu hỏa ứng dụng địa phương, nên công việc
được phân chia cho các bộ xử lý trên các site? khác nhau. Theo cách này, sẽ giảm
tối đa việc tác động qua lại của dữ liệu đối với mỗi bộ xử lý của từng site, từ đó làm

giảm việc tắc nghẽn thông tin trên mạng giữa các site.
1 Các ứng dụng mà không yêu câu dữ liệu từ các site khác.[1]
? Mỗi máy tính và cơ sở đữ liệu của nó tạo nên một site của mạng cục bộ

3


- Độ tin cậy và tính sẵn sàng. Một hệ thống có nhiều site, thì việc phát sinh lỗi

là điều không thể tránh khỏi. Tuy nhiên, ảnh hưởng của lỗi chỉ ảnh hưởng đến site
bị lỗi, hiếm khi xảy ra lỗi trên toàn hệ thống.
Cơ sở đữ liệu phân tán có những đặc điểm chính như sau:
- Chia sẽ tài nguyên. Được thực hiện thông qua mạng truyền thông và đề chia
sẽ một cách hiệu quả, tài nguyên phải được chia sẽ thơng qua một ứng dụng có giao
diện truyền thơng.
- Tính mở. Dễ dàng mở rộng về phần cứng. Nhưng phải theo tiêu chuân chung

để tương thích với hệ thống hiện tại.
- Khả năng song song. Cơ sở dữ liệu phân tán hoạt động trên mạng truyền
thông gồm nhiều site nên việc thực hiện yêu cầu từ phía người sử dụng có thể được
thực hiện trên từng ứng dụng địa phương. Cụ thê là có thể thực hiện song song truy
vấn nội bộ và truy vấn từ các site khác.


- Khả năng mở rộng. Việc mở rộng chỉ cần tăng khả năng lưu trữ dữ liệu và xử
lý của mạng mà khơng ảnh hưởng nhiều đến tồn hệ thống.

- Khả năng chịu lỗi cao. Khi thiết kế phải đảm bảo khả năng thay thế, phục hồi
dữ liệu, khi có phát sinh lỗi.

- Đảm bảo tin cậy và nhất quán. Lỗi riêng lẻ của mỗi site chỉ ảnh hưởng đến

site đỏ, khơng ảnh hưởng đến tồn hệ thống. Và khi thiết kế phải đảm bảo tính nhất
qn vả tồn vẹn của cơ sở dữ liệu.

- Tính trong suốt. Là sự che khuất các thành phần riêng biệt đối với người sử
dụng và người lập trình ứng dụng.

1.2. CÁC MƠ HÌNH LẬP TRÌNH VÀ XỬ LÝ PHÂN TÁN
1.2.1. Các mơ hình lập trình
a. M6 hinh Master/Slave
Chức năng xử lý thơng tin được phân chia trên nhiều tram Slave.
Master phối

đương nhau.

Mét tram

hợp hoạt động với nhiều trạm Slave. Các trạm Slave có vai trò tương


Master


a

ì

<>

Slave

Slave

oN
<>

Slave

Hình 1.1 Mơ hình Master/Slave

b. Mơ hình Chenf/Server
Với mơ hình Client/Server, nhiệm vụ xử lý thông tin được chia thành 2 phan
riêng biệt nhau. Phần xử lý chung cho nhiều trường hợp, được thực hiện trên các

server, phần xử lý riêng được thực hiện trên từng client. Client gởi yêu cầu đến
server, server xử lý và trả kêt quả vé cho client.
Client

Client

Server

NZ


Client

Server

Hinh 1.2 M6 hinh Client/Server

c. M6 hinh binh ding
Mô hình này, các máy tính có vai trị bình đẳng như nhau, phải phối hợp hoạt
động, giao tiếp trực tiếp với nhau, khơng qua trung gian.

Máy A

Máy C

May D

May E

Hình 1.3 Mơ hình bình đẳng


1.2.2. Xử lý phân tán
Xử lý phân tán tại các site bao gồm

các lược đỗ sau: lược đỗ tổng thể, lược đỗ

phân đoạn, lược đỗ định vị và lược đỗ ánh xạ cục bộ.
Lược đồ tổng thé
(Global Schema)


Lược đồ phân đoạn

(Fragmentation Schema)

Lược đồ định vị
(Allocation Schema)

Lược đỗ ánh xạ cục bộ 1

(Local mapping Schemal)

H6 quan tri CSDL

(DBMSofstel

Lược đỗ ánh xạ cục bộ n

| `”

(Local mapping Schema n)

1

Hệ quản trị CSDLn

|

|


(DBMS of site n)

Hình 1.4 M6 hinh xt ly phan tan [1]
- Luge dé téng thé: định nghĩa tat ca đữ liệu trong cơ sở đữ liệu phân tán như
trong cở sở dữ liệu tập trung. Tuy nhiên, mơ hình đữ liệu lược đồ tổng thể cần phải
tương thích với việc định nghĩa các ánh xạ tới các mức của cở sở dữ liệu phân tán.

- Lược đồ phân đoạn: mỗi quan hệ tổng thể có thể chia thành nhiều phần
khơng chỗng lặp lên nhau được gọi là phân đoạn. Ánh xạ giữa các quan hệ tông thé


và phân đoạn được định nghĩa là lược đỗ phân đoạn. Ánh xạ này là mối quan hệ

một-nhiều. Các kiểu phân đoạn đữ liệu bao gồm phân đoạn ngang và phân đoạn dọc
và một kiểu phân đoạn phức tạp hơn là sự kết hợp của 2 loại trên.

- Lược đồ định vị: Các phân đoạn là những phần logic của các quan hệ tổng
thể được chứa ở một hay nhiễu site trong mạng. Lược đỗ định vị xác định các phân
đoạn được chứa ở những site nào. Với kiểu của ánh xạ được định nghĩa trong lược
đỗ định vị sẽ xác định là cơ sở dữ liệu phân tán là lưu trữ dạng có nhiều bản sao hay

khơng bản sao. Trường hợp có nhiều bản sao thì ánh xạ là n-1. Trường hợp có 1 bản
sao thì ánh xa la 1-1. Các phân đoạn của cùng một quan hệ toàn cục và sự định vị
của nó tại vị trí J trên mạng được gọi là hình ảnh vật lý của quan hệ tồn cục R tại vị

trí j. Ký hiệu R¡ để chỉ phân đoạn thứ ¡ và Rỉ để chỉ hình ảnh vật lý của quan hệ tồn
cục R tại vị tríJ.

Ri


(Site 1)
R2

(Site 2)
Re
Ey
Re
Sơ đồ tổng thể

Các đoạn

R3

(Site 3)

Hình ảnh vật lý

Hình 1.5 Các phân đoạn và mơ hình vật lý cho một quan hệ tổng thé [1]

- Lược đồ ánh xạ cục bộ: ba mức đầu (lược dé tổng thể, lược đỗ phân đoạn,
lược đỗ định VỤ của các site khơng phụ thuộc vào mơ hình dữ liệu của DBMS

cục

bộ. Ở mức thấp hơn, nó cần phải ánh xạ mơ hình vật lý thành các đối tượng được
thao tác bởi các DBMS

cục bộ. Ánh xạ này được gọi là lược đỗ ánh xạ cục bộ và

phụ thuộc vào kiểu của DBMS


cục bộ.


1.3. TRUY

CAP DU LIEU TU XA TRONG

HE THONG

PHAN

TAN

Truy cập dữ liệu từ xa trong hệ thống phân tán, được thực hiện theo 2 cách cơ

bản: truy cập từ xa trực tiếp và gián tiếp.
- Mơ hình truy cập từ xa trực tiếp:
Phương thức truy
cập dữ liệu

Chương

Hệ quản tri co

trinh img

sở đỡ liệu Ì

dụng


(DBMS

1)

Hệ quản trị cơ
sở đữ liệu 2

(DBMS 2)

Cở sở dữ
Kết qua

liệu 2

Hình 1.6 Mơ hình truy cập từ xa trực tiếp [1]
Chương trình ứng dụng yêu cầu truy cập đến cơ sở dữ liệu từ xa, yêu cầu này
được hệ quản trị cơ sở dữ liệu tự động tìm nơi đặt dữ liệu và thực hiện yêu cầu tại

điểm đó. Sau khi thực hiện yêu cầu, kết quả được trả về cho chương trình ứng đụng.
Đơn vị chuyển đổi giữa hai hệ quản trị cơ sở dữ liệu là phương thức truy cập cơ sở
dữ liệu và kết quả nhận được.

- Mơ hình truy cập từ xa gián tiếp:
Theo mơ hình này, chương trình ứng dụng thực hiện yêu cầu qua chương trình
phụ ở điểm khác. Chương trình phụ này, được người lập trình ứng dụng viết dé truy
cập từ xa đến cơ sở dữ liệu và trả về kết quả của chương trình ứng đụng yêu cau.
Yêu câu thực hiện

chuongtrinh phy

Chyong
trình ứng

dụng

[>|

Kết quả tồn cục

Hệ quản trị cơ
sở đữ liệu 1

(DBMS 1)

Hệ quản

Chương trình phụ

trị cơ

sở đữ liệu 2

(DBMS 2)

Hình 1.7 Mơ hình truy cập từ xa gián tiếp [ 1]
Hệ quản trị cơ sở đữ liệu phân tán cung cấp cả hai kiểu truy cập.


1.4. GIO] THIEU VE BIG DATA
1.4.1. Khái niệm

Big Data không có định nghĩa cụ thể, nhưng theo định nghĩa của Gartner? thi
Big Data chính là tài sản thơng tin, mà những thơng tin này có khối lượng đữ liệu
lớn, tốc độ cao và dữ liệu đa đạng, đòi hỏi phải có cơng nghệ mới để xử lý hiệu quả

nhằm đưa ra được các quyết định hiệu quả, khám phá được các yếu tố ân sâu trong
dữ liệu và tối ưu hóa được q trình xử lý dữ liệu”.
Và những nguồn

đữ liệu nao, tạo nén Big Data? Do là dữ liệu cảm biến thời

tiết, các trang web truyền thông, mạng xã hội (Twitter, Facebook, Instagram...), dữ
liệu của khách hàng khi giao dịch tại thị trường chứng khoán, dữ liệu về giao thơng,

dữ liệu từ các cơng cụ tìm kiếm của Google hay đữ liệu được ghi lại từ các chuyến
bay của các hãng hàng khơng.
Tóm lại, với một lượng lớn dữ liệu và đa dạng như vậy. Nhu cầu hiểu được ý

nghĩa của dữ liệu đã làm phát sinh thuật ngữ Big Data.
1.4.2. Vai trò
Dữ liệu Big Data giúp cho doanh nghiệp có sự hiểu biết sâu sắc hơn về các
hoạt động sản xuất, kinh đoanh của mình hay việc để ra những định hướng phát
triển trong tương lai. Phân tích đữ liệu Big Data giúp cho đoanh nghiệp nâng cao
hiệu quả khi ra quyết định kinh doanh và có thể ảnh hưởng đến sự tồn tại của các
doanh nghiệp. Chính vì vậy, Big Data có vai trị quan trọng trong rất nhiều ngành
cơng nghiệp.
Ví dụ, cơng ty Uber, thu thập dữ liệu về các chuyến đi của người dùng hay các
chuyến vận chuyên hàng hóa từ những tuyến đường khác nhau đến cùng một địa
điểm nào đó, khi phân tích bộ đữ liệu này, cơng ty Uber có thể chọn ra tuyến đường
gan nhat hay thuan tién nhất để vận chuyền


hàng hóa đến một địa điểm nào đó. Từ

đó, giúp công ty Uber nâng cao khả năng cạnh tranh với các công ty khác.

3 Gartner là công ty nghiên cứu và tư vân về công nghệ thông tin hang dau thế giới do một người Mỹ tên là
Gideon Gartner sáng lập năm 1979.


1.4.3. Mơ hình
Data

St

Batch

ee

Processing

Data

Machine
A
learning

Sources

Realtime

Analytical


data store

Aaalylics
and

reporting

Stream

message ingestion

processing
Orchestration

Hình 1.8 Mơ hình tổng thể ctia Big Data!
- Data sources: Dữ liệu được thu thập từ nhiều ngồn khác nhau như: lưu trữ dữ

liệu từ các chương trình ứng dụng, nhật ký máy chủ, các trang web về thương mại
điện tử hay dữ liệu lưu trữ từ các trang mạng xã hội...

- Data storage: Dữ liệu cho các hoạt động xử lý hàng loạt thường được lưu trữ
trong kho lưu trữ dữ liệu phân tán mà nó có thê chứa khối lượng lớn các file có kích
thước lớn với các định dạng khác nhau.

- Batch processing: Do các bộ đữ liệu thường rất lớn nên một giải pháp về Big
Data phải xử lý các bộ dữ liệu bằng cách lọc, tổng hợp và chuẩn bị dữ liệu để phân

tích. Có thể sử dụng các cơng cụ như: Hive, Pig, MapReduce hay Park của Hadoop.
- Real-time message ingestion: Néu giải pháp bao gồm các nguồn dữ liệu theo

thời gian thực, kiến trúc phải bao gồm cách để nắm bắt và lưu trữ các thông điệp

theo thời gian thực để xử lý luồng. Đây có thể là một kho lưu trữ dữ liệu đơn giản,
nơi các tin nhắn đến được lưu vào một nơi dé xử lý. Dạng này, có thê sử đụng cơng
cụ Apache Kafka để xử lý.
- Stream processing: Sau khi nhận tin nhắn, giải pháp phải xử lý chúng bằng
cách lọc, tổng hợp và chuẩn bị đữ liệu để phân tích. Dữ liệu luồng được xử lý, sau
đó kết quả được trả về ở một đầu ra khác. Dữ liệu dạng này, có thể sử dụng Apache

Storm hay Spark Streaming để xử lý.
* Nguồn: />
10


- Analytical data store: Dữ liệu được xử lý theo định dạng có cấu trúc, có thể

được truy vấn bằng các cơng cụ phân tích. Có thê sử dụng NoSQL,

Hbase hoặc

Hive dé phan tích dữ liệu.
- Analysis and reporting: Mục tiêu của hầu hết các giải pháp về Big Data là
khai thác hiệu quả dữ liệu thơng qua phân tích và bảo cáo.
- Orchestration: Hau hét các giải pháp dữ liệu lớn bao gồm các hoạt động xử
lý dữ liệu lặp đi lặp lại, được thực hiện trong một quy trình cơng việc như các thành

phân trên. Đề tự động hóa quy trình cơng việc này, ta có thể sử dụng các công cụ
nhu: Apache Oozie va Sqoop.

1.4.4. Dac diém

Theo Gartner, dữ liệu lớn có 5 đặc điểm cơ bản được xây dựng theo mơ hình
5Vs gồm: khối luong dé ligu (Volume), tốc độ (Velocity), da dang (Variety), d6 tin

cay/chinh xac (Veracity), gia tri (Value).
- Khối lượng dữ liệu (Volume): đây là đặc điểm tiêu biểu nhất của Big Data.
Tùy theo nhu cầu thu thập dữ liệu từ những đối tượng nào và thời gian thu thập là
bao lâu, nhưng cơ bản thì khối lượng dữ liệu Big Data rất lớn.
- Tốc độ (Velocity): tốc độ của Big Dafta bao gồm 2 ý nghĩa sau: khối lượng
dữ liệu gia tăng rất nhanh; xử lý dữ liệu rất nhanh, theo thời gian thực (real-time).

- Đa dạng (Variety): dữ liệu bao gồm rất nhiều loại đến từ nhiều nguồn khác
nhau như: đữ liệu của các thiết bị cảm biến. Dữ liệu về status, comment,

like của

trang mạng xã hội Facebook, Twitter hay hồ sơ, sở thích mua sắm của khách hàng
trên các trang thương mại điện tử...
- Độ tin cậy/chính xác (Veracity): đặc điểm này đo lường độ chính xác của dữ
liệu và khả năng sử dụng nó để phân tích. Mức độ chính xác của các tập dữ liệu lưu
trữ vào hệ thống, sẽ xác định mức độ quan trọng của dữ liệu. Các nhà nghiên cứu

tin rằng đây là thách thức lớn nhất của Big Data.
- Giá trị (Value): đây cũng là đặc điểm rất quan trọng của Big Data. Vì ngay

khi bắt đầu thu thập dữ liệu, chúng ta cần xác định là thu thập đữ liệu nào và dữ liệu
này, sẽ mang lại lợi ích gì cho chúng ta.
11


1.4.5. Thành phần


Sề

E7]
@ [E.

) tủ

Data Sources

Gms
| “Se
Spaik®


a

Cassandra

tb:

Spark’


loud
wet

{btobleou

Hình 1.9 Các thành phần phân tich Big Data’

Hình 1.9 mơ tả các thành phần phổ biến của Big Datfa và sự tích hợp của các
thành phần với nhau. Nền tảng Hadoop là cốt lõi trong hầu hết các ứng dụng về Big
Data nhưng không phải là nguyên tắc chung.
- Layers đầu tiên là các thành phần xử lý dữ liệu gốc.
- Layers tiếp theo là hệ thống lưu trữ, có thê là HDFS (lớp lưu trữ, xử lý việc
lưu trữ dữ liệu, cũng như

siêu dữ

liệu được

u

cầu

để hồn

thành tính tốn);

NoQuery có thê là các kho lưu trữ đạng bảng như HBase hoặc cột dựa trên khóa-giá
tri Cassandra.

- Layers tinh tốn hay logic gồm cé MapReduce (day là sự kết hợp của hai quá
trình riêng biệt là map và reduce) hoặc Pig (Pig cũng là một nền tảng trong hệ sinh
thái Hadoop, nó có thể dùng để kết hợp hoặc thay thế cho MapReduce; Nó là một
ngôn ngữ cấp cao và được sử dụng rộng rãi để xử lý, phân tích các bộ dữ liệu lớn).
- Layers ứng dụng logic hay tương tác cũng có thê gồm các thành phần sau:
Hive (đây là đữ liệu lớp kho được xây đựng trên nền tảng Hadoop; Hive cung cấp
phương tiện để tương tác, xử lý và phân tích dữ liệu HDFS bằng các truy van. Hive
rất giống với SQL) hay Cascading, cung cấp API để chia sẽ hay thực hiện xử lý dữ

liệu với các thành phần khác thông qua Hadoop.
5 Nguén: -data-ecosystem-b0e4c923d7aa

12


- Các Layers cho các ứng dụng phân tích chuyên

sâu như: Netezza hoặc

Greenplum có khả năng mở rộng và được biết đến với việc nhập và cập nhật dữ liệu

rất nhanh, đây là một yêu cầu bắt buộc đối với các mơ hình phân tích.
1.4.6. Ứng dụng của Big Data trong thục tế

Ứng Dụng
Của Big Data
Trong Thực

š

Hình 1.10 Những ứng dụng của Big Data trong thực tế
Chúng ta đang sống trong thế giới cạnh tranh rất lớn. Đề giữ vững được vị trí
của mình cũng là một thách thức. Chính vì vậy, các doanh nghiệp ln tìm kiếm
những giải pháp tối ưu để nâng cao hiệu quả cạnh tranh và Big Datfa là một trong
những giải pháp tiên tiến được áp dụng rộng rãi trong rất nhiều ngành công nghiệp
và nó đã chứng minh được sự hữu ích của mình trong thực tế thông qua các lĩnh vực
sau: ngành công nghiệp thức ăn nhanh; ngành ngân hàng: kinh doanh sòng bạc; nhà
hàng; truyền thơng & giải trí; du lịch; chăm sóc sức khỏe; thương mại điện tử; quản


lý thiên tai; đảm bảo an ninh quốc gia; nông nghiệp: giáo dục; tiếp thị kỹ thuật số;
điện toán đám mây: cung cấp địch vụ hướng đến khách hàng: khu vực chính phủ:
viễn thông: ngành bán lẻ; truyền thông xã hội: ngành hàng khơng.
Ví dụ, khi chúng ta tìm kiếm video trên YouTube, nó sẽ lưu lại các truy vấn

hay video mà người dùng sử dụng và sẽ có những gợi ý xem những video có nội
dung tương tự. Hay như trang web thương mại điện tử Amazon, khi chúng ta chọn
xem một ebook về Big Data, thì trang web cũng sẽ có gợi ý là danh sách những
ebook mà những người dùng trước (khi xem ebook về Big Data) di xem qua. Do
chính là sử dụng dữ liệu Big Data.
13


1.5. TIEU KET CHUONG 1
Trong chương này, tôi đã giới thiệu về cơ sở đữ liệu phân tán, các mô hình lập
trình và xử lý phân tán, các phương thức truy cập dữ liệu từ xa trong hệ thống phân
tán và giới thiệu về Big Data.
Chương

I, giúp cho ta hiểu được những nội dung cơ bản về Cơ sở dữ liệu

phân tán và Big Data. Tất cả dữ liệu Big Data khi thu thập chỉ là dữ liệu thô,
không cung cấp được nhiều thơng tin có giá trị, để khai thác những thơng tin hữu
ích từ những dữ liệu thơ này, ta cần nắm bắt và phân tích dữ liệu. Một cơng cụ

phân tích dữ liệu Big Data mà hiện nay, đang được rất nhiều doanh nghiệp sử
dụng, đó chính là Hadoop. Trong chương 2, tơi sẽ trình bày những nội đung về hệ
sinh thái Hadoop.

14



CHƯƠNG 2. TÍNH TỐN PHÂN TÁN VỚI HADOOP

Khi làm việc với dữ liệu Big Data, chúng ta sẽ gặp một trong những thách
thức về việc làm thế nào để lưu trữ, tìm kiếm và phân tích dữ liệu. Hadoop là một

trong những giải pháp để giải quyết các thách thức đó. Trong chương này tơi sẽ
trình bày tổng quan về Hadoop và mơ hình MapReduce trên nền tảng Hadoop.
2.1. GIOI THIEU VE APACHE

HADOOP

Apache Hadoop duge tao ra boi Doug Cutting vào năm 2006, là dự án phần
mềm mã nguồn mở, tập hợp các phần mềm tiện ích, sử dụng mạng lưới nhiều máy
tính dé giải quyết các vấn đề liên quan đến lưu trữ và phân tích các bộ dữ liệu lớn.
Không giống như các hệ quản trị cơ sở dữ liệu truyền thống, Hadoop được thiết kế
để làm việc với nhiều loại đữ liệu nguồn, nó cung cấp một khung phan mém để lưu
trữ phân tán và xử lý dữ liệu lớn bằng mơ hỉnh lập trình MapReduce.
Cốt lõi của Apache Hađoop bao gồm một phần xử lý việc lưu trữ, được gọi là
Hệ thống file phân tán (HDFS) và một phần xử lý là mơ hình lập trình MapReduce.

Hadoop chia khối lượng lớn công việc thành các khối đữ liệu nhỏ hơn, các khối dữ
liệu này được nhân rộng và phân phối trên các nút trong một cụm (cluster) máy tính
đề xử lý dữ liệu song song.
Hadoop cịn được thiết kế để có thê mở rộng quy mơ lên đến hàng ngàn máy
chủ. Có thể sử dụng các cụm máy tính với phần cứng giá rẻ. Các mơ-đun (modules)
của Hađoop cũng được thiết kế đề phát hiện và xử lý tự động các lỗi ở lớp ứng dụng
nên khả năng chịu lỗi của Hadoop là rất cao.
Hiện nay, phiên bản Hađoop 3 hỗ trợ thêm một số tính năng mới như: mã hóa

x6a (erasure encoding) trong HDFS; dich vu thoi gian YARN v.2; Container® va lap
ké hoach phan tan; tối ưu hóa địa phương cho các nhiệm vụ của MapReduce; hỗ trợ
hơn 2 NameNode; bộ căn bằng dữ liệu nội bộ (intra-DataNode balancer) [6].

® Nhiệm vụ của Container là đảm bảo có sẵn tải nguyên dé thực hiện nhiệm vụ ngay lập tức

15


2.2. CÁC THÀNH PHẢN CỦA HADOOP
Hadoop có 2 thành phần cốt lõi là HDFS và MapReduce. Ngoài 2 thành phần
này, Hadoop còn kết hợp thêm một số thành phần khác. Cụ thể:
- Hadoop Common:

Là tiện ích cở sở hỗ trợ cho tất cả các thành phần khác

của Hadoop. Tất cả các thành phần khác hoạt động phía trên tiện ích này.
- HDFS:

Hệ thống file phân tán, đảm nhiệm việc lưu trữ dữ liệu của các ứng

dụng Hadoop. Các phiên bản tiêu chuẩn, HDFS tạo ra 3 bản sao đữ liệu và phân
phối các bản sao này trên các node trong cụm. Việc phân phối đảm bảo dữ liệu
được an toàn và tính tốn cực kỳ nhanh chóng.
- Hadoop MapReduce:

Là thành phần xử lý đữ liệu, nó có khả năng xử lý

lượng dữ liệu không lồ được lưu trữ và thực hiện song song trén HDFS.


- Hadoop YARN:

La thanh phan tién ích quản ly tài nguyên, nó lập lịch và

phân bồ tài ngun tính tốn phân tán cho các ứng dụng khác nhau chạy trên cụm
Hadoop.

YARN

là một bước đột phá quan trọng giúp Hadoop vượt ra ngồi mơ

hình MapReduce. YARN có thể quản lý tài nguyên ở quy mô trung tâm dữ liệu và
các cách dễ dàng hơn để tạo các ứng dụng phân tán, xử lý dữ liệu lên đến petabyte
[10].

YARN

được

thiết

kế

theo



hình

master-slave


với

ResourceManager duy nhất và nhiều ứng dụng tiện ích NodeManager.

Hình 2.1 Mơ hình hoạt động của Apache Hadoop YARN7

7 Nguồn: />ARN.html

16

ứng

dụng


×