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

Xây dựng kho dữ liệu Big Data cho VNPT Hà Nội (LV thạc sĩ)

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 (2.14 MB, 83 trang )

HỌC
ỌC VIỆN CÔNG NGHỆ B
BƯU CHÍNH VIỄN
ỄN THÔNG
---------------------------------------

NGUYỄN ĐÌNH QUÝ
XÂY DỰNG
D
KHO DỮ LIỆU BIG DATA
CHO VNPT HÀ NỘI

LU
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

HÀ NỘI – 2017


HỌC
ỌC VIỆN CÔNG NGHỆ B
BƯU CHÍNH VIỄN
ỄN THÔNG
---------------------------------------

NGUYỄN ĐÌNH QUÝ

XÂY DỰNG
D
KHO DỮ LIỆU BIG DATA
CHO VNPT HÀ NỘI


CHUYÊN NGÀNH :
MÃ SỐ:
S

HỆ
Ệ THỐNG THÔNG TIN

60.48.01.04

LU
LUẬN VĂN THẠC SĨ KỸ THUẬT
(Theo định hướng ứng dụng)

NGƯỜI HƯỚNG
ỚNG DẪN KHOA HỌC: PGS.TS. HÀ HẢI
ẢI NAM

HÀ NỘI – 2017


1

LỜI CAM ĐOAN
Luận văn này là thành quả của quá trình học tập nghiên cứu của tôi cùng sự giúp
đỡ, khuyến khích của các quý thầy cô sau 2 năm tôi theo học chương trình đào tạo
Thạc sỹ, chuyên ngành Hệ thống thông tin của trường Học viện Công nghệ Bưu
chính Viễn thông.
Tôi cam đoan đây là công trình nghiên cứu của riêng tôi. Nội dung của luận văn có
tham khảo và sử dụng một số thông tin, tài liệu từ các nguồn sách, tạp chí được liệt
kê trong danh mục các tài liệu tham khảo và được trích dẫn hợp pháp.


Nguyễn Đình Quý


2

LỜI CÁM ƠN
Tôi xin trân trọng cảm ơn các thầy cô trong Khoa công nghệ thông tin đã tạo
điều kiện cho tôi một môi trường học tập tốt đồng thời truyền đạt cho tôi một vốn
kiến thức quý báu, một tư duy khoa học để phục vụ cho quá trình học tập và công
tác của tôi.
Đặc biệt, tôi xin được bày tỏ lòng biết ơn sâu sắc đến PGS.TS. HÀ HẢI
NAM đã tận tình chỉ bảo cho tôi trong suốt quá trình học tập và nghiên cứu, giúp tôi
có nhận thức đúng đắn về kiến thức khoa học, tác phong học tập và làm việc.
Tôi xin gửi lời cảm ơn đến các bạn trong lớp Cao học Hệ thống thông tin
M15CQIS02-B khóa 2015- 2017 đã giúp đỡ tôi trong suốt thời gian học tập vừa
qua. Cuối cùng, tôi xin được gửi lời cảm ơn tới gia đình, đồng nghiệp, người thân
đã động viên, giúp đỡ tôi trong quá trình hoàn thành luận văn.
Do vốn kiến thức lý luận và kinh nghiệm thực tiễn còn ít nên luận văn không tránh
khỏi những thiếu sót nhất định. Tôi xin trân trọng tiếp thu các ý kiến của các thầy,
cô, bàn bè để luận văn được hoàn thiện.
Trân trọng cám ơn.
Tác giả.

Nguyễn Đình Quý


3

MỤC LỤC

DANH MỤC CÁC HÌNH VẼ.............................................................................................................4
DANH MỤC CÁC TỪ VIẾT TẮT ....................................................................................................6
Danh sách các bảng .............................................................................................................................6
MỞ ĐẦU.............................................................................................................................................7
1. Tính cấp thiết của đề tài: .........................................................................................................7
2. Tổng quan về vấn đề nghiên cứu: ........................................................................................7
3. Mục đích nghiên cứu:..............................................................................................................7
4. Đối tượng và phạm vi nghiên cứu: .............................................................................................7
5. Phương pháp nghiên cứu: ....................................................................................................7
CHƯƠNG 1: TỔNG QUAN VỀ BIG DATA ....................................................................................9
1.1 Định nghĩa, lịch sử hình thành và các đặc trưng.......................................................................9
1.1.1 Định nghĩa Big Data ..........................................................................................................9
1.1.2 Đặc trưng của Big Data ...................................................................................................11
1.2 Cơ bản về kiến trúc của Big Data ...........................................................................................12
1.2.1 Các thành phần của kiến trúc Big Data ...........................................................................12
1.2.2 Kiến trúc của Big Data ....................................................................................................14
1.2.3 NoSQL trong quản lý dữ liệu ..........................................................................................14
1.3 Tình hình nghiên cứu Big Data ở thế giới và trong nước .......................................................16
1.4 Kết chương .............................................................................................................................18
CHƯƠNG 2: THIẾT KẾ KHO DỮ LIỆU BIG DATA ....................................................................19
CHO VNPT HÀ NỘI ........................................................................................................................19
2.1 Các mô hình dữ liệu lớn..........................................................................................................19
2.1.1 Hadoop Apache ...............................................................................................................19
2.1.2 Hadoop Distributed File System (HDFS)........................................................................24
2.1.3 Map reduce ......................................................................................................................38
2.2. Kiến trúc MapReduce Engine ................................................................................................42
2.2.1. Kiến trúc các thành phần (JobTracker, TaskTracker) ....................................................42
2.2.2. Cơ chế hoạt động ............................................................................................................42
2.2.3. MapReduce và HDFS .....................................................................................................47
2.2.4 Phát triển ứng dụng theo mô hình MapReduce với Hadoop MapReduce .......................48

2.3 Giới thiệu một số giải pháp xử lý Big Data khác....................................................................51
2.4 Xây dựng mô hình dữ liệu lớn cho VNPT Hà Nội .................................................................53
2.3.1 Xác định BigData là giải pháp phù hợp cho doanh nghiệp .............................................53
2.3.3 Xác định dữ liệu nguồn ...................................................................................................55
2.3.4 Chỉ định cơ sở hạ tầng .....................................................................................................56
2.5 Kết chương .............................................................................................................................58
CHƯƠNG 3: CÀI ĐẶT VÀ THỰC NGHIỆM ................................................................................59
3.1 Tổng quan về Microsoft Azure HDInsight .............................................................................59
3.1.1 Giới thiệu Microsoft Azure .............................................................................................59
3.1.2 Giới thiệu HDInsight service...........................................................................................60
3.2 Thiết kế big data bằng HDInsight ...........................................................................................60
3.2.1 Kịch bản 1: Iterative exploration (thăm dò lặp) ..............................................................61
3.2.2 Kịch bản 2: Kho dữ liệu theo yêu cầu (Data warehouse on demand) .............................63
3.2.3 Kịch bản 3: Tự động hóa ETL (ETL automation) ...........................................................66
3.2.4 Kịch bản 4: Tích hợp BI (BI integration ) .......................................................................69
3.3 Thực nghiệm HDInsight .........................................................................................................71
3.3.1 Kịch bản 1: Thăm dò lặp .................................................................................................71
3.3.2 Kịch bản 2: Kho dữ liệu theo yêu cầu .............................................................................72
3.3.3 Kịch bản 3: Tích hợp BI ..................................................................................................73
3.4 Cài đặt thực nghiệm ................................................................................................................74
3.5 Kết chương .............................................................................................................................79
KẾT LUẬN .......................................................................................................................................80
DANH MỤC CÁC TÀI LIỆU THAM KHẢO .................................................................................81


4

DANH MỤC CÁC HÌNH VẼ
STT


Chú thích

1

Hình
Hình 1

2

Hình 2

Kiến trúc Big Data

3

Hình 3

Kiến trúc của Big Data

4

Hình 4

SocialMe của Mobifone

5

Hình 5

Cấu trúc các thành phần của Hadoop


6

Hình 6

Tổng quan một Hadoop Cluster

7

Kiến trúc HDFS

8

Hình 7
Hình 8

9

Hình 9

Cấu trúc topology mạng

10

Hình 10

Mô hình MapReduce của Oracle

11


Hình 11

Hàm Map

12

Hình 12

Hàm Reduce

13

Hình 13

Kiến trúc các thành phần Hadoop MapReduce

14

Hình 14

Cơ chế hoạt động của Hadoop MapReduce

15

Hình 15

Liên lạc giữa TaskTracker thực thi Maptask và JobTracker

16


Hình 16

Cơ chế hoạt động của Map task

17

Hình 17

TaskTracker hoàn thành Map task

18

Hình 18

Cơ chế hoạt động của Reduce task

19

Hình 19

TaskTracker hoàn thành Reduce task

20

Hình 20

Data locality

21


Hình 21

Phát triển ứng dụng MapReduce trên Hadoop

22

Hình 22

Spark và Cassandra

23

Hình 23

Các hệ thống thông tin của VNPT Hà Nội

24

Hình 24

Mô hình 3V

Quá trình tạo và ghi dữ liệu lên file trên HDFS

Các lựa chọn chính cho các giải pháp dữ liệu lớn
dựa trên nền tảng Hadoop trên nền Microsoft


5
25


Hình 25

Các tùy chọn lưu trữ dữ liệu cho giải pháp Azure HDInsight

26

Hình 26

Nền tảng tổng quát của Microsoft Azure

27

Hình 27

Thiết kế big data bằng HD Insight

28

Hình 28

Iterative exploration (thăm dò lặp)

29

Hình 29

Kho dữ liệu theo mô hình nhu cầu (Data warehouse on demand)

30


Hình 30

Tự động hóa ETL

31

Hình 31

Tổng quan về kho dữ liệu doanh nghiệp điển hình và triển khai BI

32

Hình 32

Ba cấp độ tích hợp cho dữ liệu lớn với hệ thống BI doanh nghiệp

33

Hình 33

Chu trình tìm kiếm lặp đi lặp lại để tìm thông tin chi tiết về dữ liệu

34

Hình 34

35

Hình 35


Ba cấp độ tích hợp cho dữ liệu lớn với hệ thống BI doanh nghiệp

36

Hình 36

Hiện trạng lưu trữ dữ liệu tại VNPT Hà Nội

37

Hình 37

Mô hình tổng thể lưu trữ dữ liệu Big Data

38

Hình 38

39

Hình 39

Giao diện màn hình chính của Hadoop

40

Hình 40

Giao diện màn hình chính của HBase


41

Hình 41

Giao diện màn hình quản trị Jobtracker

42

Hình 42

Bảng lịch sử các job

43

Hình 43

Thống kê job thực thi việc đồng bộ dữ liệu Thuê bao trả trước

44

Hình 44

Thống kê job thực thi việc đồng bộ dữ liệu Thuê bao trả sau

45

Hình 45

Thống kê job thực thi việc đồng bộ dữ liệu CDR


Dùng HDInsight như kho dữ liệu để phân tích, báo cáo và như một
nguồn dữ liệu kinh doanh

Giao diện kho dữ liệu


6

DANH MỤC CÁC TỪ VIẾT TẮT
STT
1
2
3
4
5
6

Tên viết tắt
HDFS
GFS
NDFS
VNPTHN
SaaS
ETL

Chú thích
Hadoop Distributed File System
Google File System
Nutch Distributed File System

Viễn thông Hà Nội
Software as a Service - phần mềm như một dịch vụ
Extract - tranform load (Trích xuất, chuyển đổi và nạp)

7

NDFS

8

RPC

Nutch Distributed File System
Remote Procedure Calls (tạm dịch là các lời gọi thủ tục
từ xa)
Danh sách các bảng

STT Bảng
1
Bảng 1
2
Bảng 2

Chú thích
Kiểu có cấu trúc
Thông tin lưu trữ trong file XML


7


MỞ ĐẦU
1. Tính cấp thiết của đề tài:
Trước đây, chúng ta mới chỉ biết đến dữ liệu có cấu trúc (structure data), ngày
nay, với sự kết hợp của dữ liệu và internet, đã xuất hiện một dạng khác của dữ
liệu Big data (dịch là “dữ liệu lớn”). Dữ liệu này có thể từ các nguồn như: hồ sơ
hành chính, giao dịch điện tử, dòng trạng thái (status), chia sẻ hình ảnh, bình
luận, nhắn tin...của chính chúng ta, nói cách khác chúng là dữ liệu được sản sinh
qua quá trình chia sẻ thông tin trực tuyến liên tục của người sử dụng.
Với mục đích đưa những tiến bộ công nghệ vào phục vụ cho sản xuất kinh
doanh của cơ quan là Viễn Thông Hà Nội, tôi xin chọn đề tài nghiên cứu:
“XÂY DỰNG KHO DỮ LIỆU BIG DATA CHO VNPT HÀ NỘI”.
2. Tổng quan về vấn đề nghiên cứu:
Tìm hiểu về BIG DATA:
Tìm hiểu công nghệ về dữ liệu lớn (Big data) đang có.
Xây dựng kho dữ liệu BIG DATA cho VNPT Hà Nội.
3. Mục đích nghiên cứu:
Tìm hiểu BIG DATA và xây dựng ứng dụng vào thực tiễn phục vụ công việc.
4. Đối tượng và phạm vi nghiên cứu:
4.1. Đối tượng nghiên cứu:
-

Big Data (khái niệm, cách hoạt động và công nghệ hỗ trợ).

-

Ứng dụng BIG DATA vào thực tiễn tại VNPT Hà nội..
4.2 Phạm vi nghiên cứu:

-


Các khái niệm cơ bản về BIG DATA.

-

Một giải pháp mã nguồn mở cho Big Data.

-

Xây dựng dữ liệu Big Data cho VNPT Hà Nội.

5. Phương pháp nghiên cứu:
5.1. Phương pháp nghiên cứu tài liệu:


8

-

Nghiên cứu lý thuyết về BIG DATA trong hệ thống Công nghệ thông tin với
mục tiêu là hiểu được nền tảng cơ bản.

-

Nghiên cứu các công nghệ cho hệ thống dữ liệu lớn với mục tiêu là hiểu và
triển khai được công nghệ.

-

Tìm hiểu về các hệ thống dữ liệu phục vụ sản xuất kinh doanh của VNPT Hà
Nội phục vụ cho sản xuất kinh doanh của doanh nghiệp với mục tiêu nắm

vững kho dữ liệu đang có và triển khai việc xây dựng Big Data.
5.2 Phương pháp thực nghiệm
Xây dựng kho dữ liệu Big Data cho VNPT Hà Nội với mục tiêu là đưa ra
các dữ liệu lớn có cấu trúc hiện có của doanh nghiệp vào kho dữ liệu theo
định dạng Big Data sử dụng một công nghệ mã nguồn mở.
Dự kiến luận văn sẽ được cấu trúc với các chương như sau:

Chương 1: Tổng quan về BIG DATA
Nội dung chương này trình bày những kiến thức cơ bản về BIG DATA bao
gồm giới thiệu về lịch sử hình thành, phát triển, các tính chất, đặc trưng ứng
dụng của Big Data và nêu tổng quan về tình hình nghiên cứu Big Data ở thế
giới và trong nước, các lợi ích khi triển khai sử dụng Big Data.
Chương 2: Thiết kế kho dữ liệu Big Data cho VNPT Hà Nội
Nội dung của chương này là mô tả bài toán, nêu lý do tại sao cần dùng Big
Data, mô tả các hệ thống đang sử dụng tại VNPT Hà Nội mà cơ sở dữ liệu
không phải là Big Data, đề xuất mô hình Big Data cho doanh nghiệp và nêu
chi tiết giải pháp đề xuất (mô hình, giải pháp công nghệ được chọn).
Chương 3: Cài đặt và thực nghiệm
Nội dung chương này mô tả phần cài đặt và thực nghiệm với Microsoft Azure HD
Insight để tạo nền tảng tổ chức lưu trữ dữ liệu Big Data.


9

CHƯƠNG 1: TỔNG QUAN VỀ BIG DATA
Nội dung chương này trình bày những kiến thức cơ bản về BIG DATA bao
gồm giới thiệu về lịch sử hình thành, phát triển, các tính chất, đặc trưng ứng dụng
của Big Data và nêu tổng quan về tình hình nghiên cứu Big Data ở thế giới và trong
nước, các lợi ích khi triển khai sử dụng Big Data.
Giới thiệu

Trước đây chúng ta mới chỉ biết đến dữ liệu có cấu trúc (structure data), ngày
nay, với sự kết hợp của dữ liệu và internet, đã xuất hiện một dạng khác của dữ liệu
Big data (dịch là "dữ liệu lớn "). Dữ liệu này có thể từ các nguồn như: hồ sơ hành
chính giao dịch điện tử, dòng trạng thái (status), chia sẻ hình ảnh, bình luận, nhắn
tin ..của chính chúng ta. Nói cách khác chúng là dữ liệu được sản sinh qua quá trình
chia sẻ thông tin trực tuyến liên tục của người sử dụng. Trong luận văn này tôi xin
giới thiệu tóm tắt những nét chính về dữ liệu lớn cũng như những cơ hội và thách
thức mà dữ liệu lớn mang lại.
1.1 Định nghĩa, lịch sử hình thành và các đặc trưng
1.1.1 Định nghĩa Big Data
- Theo wikipedia: Big data là một thuật ngữ chỉ tập hợp dữ liệu lớn hoặc phức tạp
mà các phương pháp truyền thống không đủ các ứng dụng để xử lý dữ liệu này.
- Theo Garnier: Dữ liệu lớn là những nguồn thông tin có đặc điếm chung khối
lượng lớn, tốc độ nhanh và dữ liệu định dạng dưới nhiều hình thức khác nhau, do
đó muốn khai thác được đòi hỏi phải có hình thức xử lý mới để đưa ra quyết định.
Lịch sử hình thành: Big data chủ yếu hình thành từ 6 nguồn:
(1) Dữ liệu hành chính: sinh ra từ dữ liệu của các tổ chức, có thể là chính phủ hoặc
phi chính phủ. VD: hồ sơ y tế điện tử ở bệnh viện, hồ sơ bảo hiểm, ngân hàng …
(2) Dữ liệu từ hoạt động thương mại (phát sinh từ hoạt động giao dịch giữa hai
thực thể) VD: giao dịch giữa các thẻ tín dụng, giao dịch trên mạng, bao gồm cả từ
các thiết bị di động;
(3) Dữ liệu từ các thiết bị cảm biến như thiết bị chụp hình ảnh, vệ tinh, cảm biến
đường, cảm biến khí hậu …
(4) Dữ liệu từ các thiết bị theo dõi, vd: dữ liệu từ điện thoại di động, GPS …


10

(5) Dữ liệu về các hành vi, ví dụ: tìm kiếm trực tuyến (về một sản phẩm, dịch vụ
hay thông tin khác) hay đọc các trang mạng trực tuyến,

(6) Dữ liệu từ các thông tin về ý kiến, quan điểm của các cá nhân, tổ chức trên các
phương tiện thông tin xã hội.
Phương pháp khai thác và quản lý dữ liệu lớn hiện nay được thiết kế phù hợp dựa
theo các nguồn hình thành dữ liệu lớn. Mỗi nguồn dữ liệu lớn khác nhau sẽ có
phương pháp khai thác và quản lý dữ liệu lớn khác nhau. Tuy nhiên hiện nay phần
lớn các tổ chức trên thế giới đều dùng Hadoop Ecosystem là giải pháp tối ưu để
quản lý và khai thác dữ liệu lớn.
Kích cỡ của Big Data đang tăng lên từng ngày, tính đến năm 2012 nó đã lên hàng
exabyte (1 exabyte = 1 tỷ gigabyte). Các nhà khoa học thường xuyên gặp phải
những hạn chế do tập dữ liệu lớn trong nhiều lĩnh vực, như khí tượng học, di
truyền học, mô phỏng vật lý phức tạp, nghiên cứu sinh học và môi trường. Theo
IBM, lượng thông tin công nghệ bình quân đầu người trên thế giới tăng gần gấp
đôi mỗi 40 tháng kể từ năm 1980. Tính đến năm 2012, mỗi ngày có 2,5 exabyte dữ
liệu được tạo ra. Còn theo tài liệu của Intel vào tháng 9-2013, hiện nay thế giới
đang tạo ra 1 petabyte (1 petabyte = 1.000 terabyte) dữ liệu trong mỗi 11 giây
(tương đương một đoạn video HD dài 13 năm). Bản thân các công ty, doanh
nghiệp cũng đang sở hữu Big Data của riêng mình, chẳng hạn trang bán hàng trực
tuyến eBay sử dụng 2 trung tâm dữ liệu với dung lượng lên đến 40 petabyte để
chứa những truy vấn, tìm kiếm, đề xuất cho khách hàng cũng như thông tin về
hàng hóa của mình. Nhà bán lẻ online Amazon.com đã sử dụng một hệ thống
Linux để xử lý hàng triệu hoạt động mỗi ngày cùng những yêu cầu từ khoảng nửa
triệu đối tác bán hàng. Tính đến năm 2005, họ từng sở hữu 3 cơ 4 sở dữ liệu Linux
lớn nhất thế giới với dung lượng 7,8TB, 18,5TB và 24,7TB. Tương tự, Facebook
cũng phải quản lý 50 tỷ bức ảnh từ người dùng tải lên, trong khi YouTube hay
Google phải lưu lại hết các lượt truy vấn và video của người dùng cùng nhiều loại
thông tin khác có liên quan. Năm 2011, Tập đoàn McKinsey đề xuất những công
nghệ có thể dùng với Big Data, bao gồm crowsourcing (tận dụng nguồn lực từ
nhiều thiết bị điện toán trên toàn cầu để cùng xử lý dữ liệu), các thuật toán về gen
và di truyền, những biện pháp machine learning (các hệ thống có khả năng học hỏi
từ dữ liệu - một nhánh của trí tuệ nhân tạo), xử lý ngôn ngữ tự nhiên (giống như



11

Siri hay Google Voice Search, nhưng cao cấp hơn), xử lý tín hiệu, mô phỏng, phân
tích chuỗi thời gian, mô hình hóa, kết hợp các server mạnh lại với nhau... Ngoài
ra, các cơ sở dữ liệu hỗ trợ xử lý dữ liệu song song, ứng dụng hoạt động dựa trên
hoạt động tìm kiếm, tập tin hệ thống (file system) dạng rời rạc, các hệ thống điện
toán đám mây (bao gồm ứng dụng, nguồn lực tính toán cũng như không gian lưu
trữ) và bản thân internet cũng là những công cụ đắc lực phục vụ cho công tác
nghiên cứu và trích xuất thông tin từ Big Data. Hiện nay cũng có vài cơ sở dữ liệu
theo dạng quan hệ (bảng) có khả năng chứa hàng petabyte dữ liệu, chúng cũng có
thể tải, quản lý, sao lưu và tối ưu hóa cách sử dụng Big Data .
1.1.2 Đặc trưng của Big Data
Theo , mô hình 3V để định nghĩa Big Data là là
khối lượng (volume), tốc độ (velocity) và đa dạng (variety).

Hình 1: Mô hình 3V [5]
- Các đặc trưng của dữ liệu lớn
(1)

Khối lượng dữ liệu – Volume: đây là đặc điểm tiêu biểu nhất của dữ liệu lớn.

Kích cỡ của Big Data đang tăng lên từng ngày và tính đến năm 2012 thì nó có thể
nằm trong khoảng vài chục terabyte đến nhiều petabyte (1 petabyte = 1024 terabyte)
chỉ cho một tập hợp dữ liệu. Dữ liệu truyền thống có thể lưu trên các đĩa mềm, đĩa
cứng, nhưng với Big Data chúng ta sẽ sử dụng công nghệ “đám mây” mới đáp ứng
được khả năng lưu trữ được dữ liệu lớn. [5]



12

(2) Tốc độ (Velocity): Tốc độ có thể hiểu theo 2 khía cạnh : a) Khối lượng dữ liệu
gia tăng rất nhanh (vd: mỗi giây có tới 72,9 triệu các yêu cầu truy cập tìm kiếm trên
trang web bán hàng của Amazon ) b) Xử lý dữ liệu ở mức thời gian thực (Real
time), tức dữ liệu được xử lý ngay tức thời sau khi phát sinh (tính bằng mili giây).
Các ứng dụng phổ biến trên internet, tài chính, ngân hàng, hàng không, y tế, quân
sự như hiện nay phần lớn được xử lý thời gian thực (realtime). Công nghệ xử lý dữ
liệu lớn ngày nay đã cho phép chúng ta xử lý tức thì trước khi chúng được lưu vào
cơ sở dữ liệu.
(3)Đa dạng (Variety): Đối với dữ liệu truyền thống chúng ta hay nói đến dữ liệu có
cấu trúc, thì ngày nay hơn 80% dữ liệu sinh ra là phi cấu trúc ( Tài liệu, hình ảnh,
blog, video, bài hát, dữ liệu từ các thiết bị cảm biến vật lý, thiết bị chăm sóc sức
khỏe …) Big data cho phép liên kết và phân tích nhiều dạng dữ liệu khác nhau. VD:
với bình luận của một nhóm người dùng trên facebook với thông tin video được
chia sẻ từ Youtube và Twitter.
1.2 Cơ bản về kiến trúc của Big Data
1.2.1 Các thành phần của kiến trúc Big Data
- Các khối xây dựng cơ bản trong kiến trúc big data

Hình 2 : Kiến trúc Big Data [5]
Hình ảnh trên cho ta cái nhìn tổng quan về các thành phần khác nhau trong kiến trúc
big data tương tác lẫn nhau. Trong big data, các nguồn dữ liệu khác nhau là một


13

phần của kiến trúc, do đó trích xuất, chuyển đổi và tích hợp (extract, transform and
intergrate) là 1 trong những lớp quan trọng nhất của kiến trúc. Hầu hết các dữ liệu
được lưu trữ trong quan hệ cũng như không quan hệ và các giải pháp kho dữ liệu.

Theo nhu cầu kinh doanh, các dữ liệu đa dạng khác nhau được xử lý và chuyển
thành báo cáo trực quan với người dùng. Cũng giống như phần mềm, phần cứng
cũng là phần quan trọng của kiến trúc big data. Trong kiến trúc big data, hạ tầng
phần cứng vô cùng quan trọng và cần phải cài đặt ngăn chặn lỗi xảy ra, đảm bảo
tính sẵn sàng cao.
- Các dạng của Big Data: Big data có thể tìm thấy trong những kiểu cấu trúc sau:
Kiểu cấu trúc, Không có cấu trúc, Nửa cấu trúc
Kiểu cấu trúc: Rất nhiều dữ liệu có thể được lưu trữ được truy cập và xử lý trong
dạng khuôn mẫu của định dạng nào đó đều được gọi là dữ liệu được cấu trúc. Tuy
nhiên ngày nay chúng ta có thể nhìn thấy kích thước dữ liệu cần quản lý ngày càng
tăng nhanh và có kích thước khổng lồ tới hàng zettabyte.
VD kiểu dữ liệu cấu trúc: Bảng ‘Nhanvien’ trong cơ sở dữ liệu là một kiểu dữ liệu
cấu trúc.
ID Name
Gender Department Salary
2365 Nguye Trung Nghia Male
Client
58000
3398 Hoang Viet Anh
7465 Ngo Hoang Long

Female Client
Male
Admin

7500 Nguyen Duc Cuong Male
Client
7699 Hoang Ngoc Dieu Female Client
Bảng 1: Kiểu có cấu trúc


655000
450000
320000
85000

Mọi dữ liệu không có khuôn mẫu hoặc cấu trúc là kiểu dữ liệu không cấu trúc. Khi
kích thước trở lên khổng lồ dữ liệu không cấu trúc đặt ra những thách thức trong
việc xử lý và nhận được giá trị từ nó. Ví dụ về dữ liệu không cấu trúc như sau, sự
hỗn tạp về nguồn dữ liệu bao gồm kết nối của các file text đơn giản, ảnh, video...
Ngày nay các tổ chức nắm thường có một lượng dữ liệu lớn có giá trị nhưng rất khó
để khai thác được nó do các dữ liệu này vẫn ở dạng thô, phần lớn không có cấu trúc
hoặc định dạng. VD dữ liệu không cấu trúc: Kết quả trả về khi tìm kiếm trên
Google.
Kiểu nửa cấu trúc


14

Kiểu nửa cấu trúc có thể bao gồm cả các forms dữ liệu. Chúng ta có thể thấy dữ liệu
bán cấu trúc như một mẫu nhưng nó không được định nghĩa với bảng với mối quan
hệ như hệ quản trị quan hệ dữ liệu quan hệ DBMS. Ví dụ của dụ của dữ liệu bán
cấu trúc là dữ liệu được thể hiện trong file XML.
Ví dụ về dữ liệu bán cấu trúc (Demi-Structured Data)
1 <rec><name>Nguyen Van Tuan</name><sex>Male</sex><age>35</age></rec>
2 <rec><name>Hoang Duc Anh</name><sex>Female</sex><age>41</age></rec>
3 <rec><name>Ngo Thuy Linh</name><sex>Male</sex><age>29</age></rec>
4 <rec><name>Nguyen Duc Cuong</name><sex>Male</sex><age>26</age></rec>
5 <rec><name>Hoang Ngoc Dieu</name><sex>Male</sex><age>35</age></rec>
Bảng 2: Thông tin lưu trữ trong file XML
Dữ liệu ứng dụng web không được cấu trúc gồm các file log, file lưu trữ lịch sử

giao dịch… Hệ thống OLTP được xây dựng để làm việc với dữ liệu cấu trúc nơi mà
dữ liệu được lưu trữ dưới dạng quan hệ (các bảng).
1.2.2 Kiến trúc của Big Data

Hình 3: Kiến trúc của Big Data [11]
1.2.3 NoSQL trong quản lý dữ liệu
NoSQL là 1 thuật ngữ rất nổi tiếng và nó thật sự có ý nghĩa là Not Relational SQL
hay Not Only SQL. Điều này là do trong kiến trúc big data, dữ liệu ở định dạng bất
kỳ. Để mang tất cả dữ liệu cùng nhau thì công nghệ mối quan hệ là không đủ, do
các công cụ mới, kiến trúc và các thuật toán khác được phát minh sẽ nhận tất cả các
loại dữ liệu. Những điều này được gọi chung là NoSQL.


15

Các ứng dụng của dữ liệu lớn
Có 4 lợi ích Big Data có thể mang lại: cắt giảm chi phí; giảm thời gian; tăng thời
gian phát triển, tối ưu hóa sản phẩm; hỗ trợ con người đưa ra những quyết định
đúng và hợp lý hơn. Nghiên cứu được sở thích, thói quen của khách hàng cũng gián
tiếp giúp doanh nghiệp bán được nhiều hàng hóa hơn. Những thông tin về thói
quen, sở thích này có được từ lượng dữ liệu khổng lồ các doanh nghiệp thu thập
trong lúc khách hàng ghé thăm và tương tác với trang web của mình. Chỉ cần doanh
nghiệp biết khai thác một cách có hiệu quả Big Data, nó không chỉ giúp tăng lợi
nhuận cho chính họ mà giúp tiết kiệm thời gian cho khách hàng trong mua sắm.
Xu hướng Google rút ra từ những từ khóa tìm kiếm liên quan đến dịch H1N1 đã
được chứng minh rất sát với kết quả do 2 hệ thống cảnh báo cúm độc lập Sentinel
GP và HealthStat đưa ra. Dữ liệu của Flu Trends được cập nhật gần như theo thời
gian thực, sau đó được đối chiếu với số liệu từ những trung tâm dịch bệnh ở nhiều
nơi trên thế giới. Theo Oracle, việc phân tích Big Data và những dữ liệu dung lượng
lớn đã giúp các tổ chức kiếm được 10,66USD cho mỗi 1USD chi phí phân tích, tức

gấp 10 lần.
Một trường học tại Hoa Kỳ có được sự tăng trưởng doanh thu 8 triệu USD mỗi năm,
còn một công ty tài chính ẩn danh khác tăng 1.000% lợi nhuận trên tổng số tiền đầu
tư của mình trong vòng 3 năm. Trong World Cup, Big Data cũng đưa ra dự báo đội
tuyển Đức sẽ vô địch.
Thị trường Big Data được đánh giá có giá trị tới 100 tỷ USD vào năm 2010 và đang
không ngừng tăng với tốc độ chóng mặt. Chẳng hạn, hiện thế giới có tới 4,6 tỷ thuê
bao điện thoại di động và có từ 1-2 tỷ người dùng internet. Từ năm 1990-2005, hơn
1 tỷ người trên thế giới tham gia vào tầng lớp trung lưu, tức nhu cầu lưu trữ và sử
dụng thông tin của thế giới tăng lên nhiều lần. Nếu để ý một chút, chúng ta sẽ thấy
khi mua sắm online trên eBay, Amazon hoặc những trang tương tự, trang này cũng
sẽ đưa ra những sản phẩm gợi ý tiếp theo cho bạn, ví dụ khi xem điện thoại, nó sẽ
gợi ý cho bạn mua thêm ốp lưng, pin dự phòng; hoặc khi mua áo thun thì sẽ có thêm
gợi ý quần jean, dây lưng... Do đó, nghiên cứu được sở thích, thói quen của khách
hàng cũng gián tiếp giúp doanh nghiệp bán được nhiều hàng hóa hơn.


16

Vậy những thông tin về thói quen, sở thích này có được từ đâu? Chính là từ lượng
dữ liệu khổng lồ mà các doanh nghiệp thu thập trong lúc khách hàng ghé thăm và
tương tác với trang web của mình. Chỉ cần doanh nghiệp biết khai thác một cách có
hiệu quả Big Data thì nó không chỉ giúp tăng lợi nhuận cho chính họ mà còn tăng
trải nghiệm mua sắm của người dùng, chúng ta có thể tiết kiệm thời gian hơn nhờ
những lời gợi ý so với việc phải tự mình tìm kiếm. Người dùng cuối sẽ được hưởng
lợi từ việc tối ưu hóa như thế, chứ bản thân người dùng khó mà tự mình phát triển
hay mua các giải pháp để khai thác Big Data bởi giá thành của chúng quá đắt. Ngoài
ra, lượng dữ liệu mà chúng ta có được cũng khó có thể xem là “Big” nếu chỉ có vài
Terabyte sinh ra trong một thời gian dài.
Ngoài ra, ứng dụng được Big Data có thể giúp các tổ chức, chính phủ dự đoán

được tỉ lệ thất nghiệp, xu hướng nghề nghiệp của tương lai để đầu tư cho những
hạng mục đó, hoặc cắt giảm chi tiêu, kích thích tăng trưởng kinh tế, v/v... thậm chí
là ra phương án phòng ngừa trước một dịch bệnh nào đó, giống như trong phim
World War Z, nước Israel đã biết trước có dịch zombie nên đã nhanh chóng xây
tường thành ngăn cách với thế giới bên ngoài.
1.3 Tình hình nghiên cứu Big Data ở thế giới và trong nước
- Trên thế giới:
Ngày nay, dữ liệu chính là tiền bạc của doanh nghiệp. Ví dụ: những thông tin về
thói quen, sở thích của khách hàng có được từ lượng dữ liệu khổng lồ các doanh
nghiệp thu thập trong lúc khách hàng ghé thăm và tương tác với trang web của
mình. Chỉ cần doanh nghiệp biết khai thác hiệu quả, Big Data là công cụ không chỉ
giúp tăng lợi nhuận cho chính họ mà còn giúp tiết kiệm thời gian cho khách hàng
trong mua sắm. Nhờ giải pháp Big Data, năm 2013, Amazon đạt doanh thu tới 74 tỷ
USD, IBM đạt hơn 16 tỷ USD. Big Data là nhu cầu tăng trưởng lớn đến nỗi từ năm
2010, Software AG, Oracle, IBM, Microsoft, SAP, EMC, HP và Dell đã chi hơn 15
tỷ USD cho các công ty chuyên về quản lý và phân tích dữ liệu. Với tiềm năng ưu
việt, Big Data không chỉ ứng dụng trong kinh doanh mà còn có khả năng tác động
đến hầu hết ngành nghề khác. Chính phủ các nước có thể ứng dụng Big Data để dự
đoán tỷ lệ thất nghiệp, xu hướng nghề nghiệp của tương lai để đầu tư cho những
hạng mục phù hợp hoặc cắt giảm chi tiêu, kích thích tăng trưởng kinh tế, thậm chí


17

dự đoán sự phát triển của mầm bệnh và khoanh vùng sự lây lan của bệnh dịch. Big
Data sẽ là công cụ thúc đẩy sự phát triển kinh tế - xã hội trong tương lai. Theo ước
tính của Gartner, một công ty nghiên cứu và tư vấn về công nghệ hàng đầu của Mỹ,
tới năm 2015 Big Data có thể tạo ra thêm 4,4 triệu việc làm trong ngành IT toàn cầu
và trong 5 năm (2012-2017), thế giới sẽ đầu tư 232 tỷ USD cho Big Data.
Với hơn 30 triệu người dùng Internet và hơn 15 triệu người dùng Internet trên điện

thoại di động, Việt Nam đang là đích ngắm của nhiều nhà cung cấp giải pháp Big
Data như Microsoft, IBM, Oracle… Big Data và các công nghệ phân tích có khả
năng làm thay đổi hoàn toàn bộ mặt của các ngành kinh tế và nghề nghiệp. Vì vậy,
những mô hình kinh doanh mới dựa trên Big Data đang được hình thành để giúp các
tổ chức, doanh nghiệp tận dụng dữ liệu. “Đây cũng là xu thế tất yếu trong tương lai
không xa với doanh nghiệp Việt Nam", ông Tan Jee Toon, Tổng Giám đốc IBM
Việt Nam dự đoán. Big Data là từ khoá được tìm kiếm nhiều nhất trên mạng xã hội
LinkedIn, và tất nhiên những ai đang đi đầu trong lĩnh vực này hẳn sẽ được các
headhunter (chuyên gia săn đầu người) săn đón thường xuyên.
- Trong nước hiện nay công ty Mobifone đang có dự án BigData tại địa chỉ
SocialMe là giải pháp lắng nghe, theo dõi và phân tích
thương hiệu và người dùng trên mạng xã hội.

Hình 4: SocialMe của Mobifone ()
Tính năng:
+ Thu thập dữ liệu thông tin tiếng Việt từ Internet.
+ Theo dõi thương hiệu thông qua hệ thống Dashboard tổng hợp.


18

+ Thu thập, quản lý thông tin người dùng trên Internet.
+ Quản lý nguồn và chủ đề.
+ Quản lý truyền thông thông qua gắn nhãn.
+ Báo cáo theo dõi thương hiệu đối thủ.
+ Cảnh báo Khủng hoảng bằng email hoặc SMS.
+ Social Media Command Center – hệ thống màn hình theo dõi thương hiệu thời
gian thực.
+ Chăm sóc Khách hàng trên Internet.
+ Báo cáo tình hình chăm sóc thương hiệu.

1.4 Kết chương
Nội dung chương này trình bày những kiến thức cơ bản về BIG DATA bao gồm
giới thiệu về lịch sử hình thành, phát triển, các tính chất, đặc trưng ứng dụng của
Big Data và nêu tổng quan về tình hình nghiên cứu Big Data ở thế giới và trong
nước, các lợi ích khi triển khai sử dụng Big Data.


19

CHƯƠNG 2: THIẾT KẾ KHO DỮ LIỆU BIG DATA
CHO VNPT HÀ NỘI
Nội dung chương này trình bày về các mô hình dữ liệu Big Data, làm rõ các định
nghĩa và đặc trưng của Big Data, cơ bản về kiến trúc của Big Data (chu kỳ và các
thành phần kiến trúc) để từ đó thiết kế kho dữ liệu Big Data cho VNPT Hà Nội.
2.1 Các mô hình dữ liệu lớn
2.1.1 Hadoop Apache
2.1.1.1 Hadoop là gì?
Apache Hadoop định nghĩa [13]:
“Apache Hadoop là một framework dùng để chạy những ứng dụng trên một cluster
lớn được xây dựng trên những phần cứng thông thường. Hadoop hiện thực mô hình
Map/Reduce, đây là mô hình mà ứng dụng sẽ được chia nhỏ ra thành nhiều phân
đoạn khác nhau, và các phần này sẽ được chạy song song trên nhiều node khác
nhau. Thêm vào đó, Hadoop cung cấp một hệ thống file phân tán (HDFS) cho phép
lưu trữ dữ liệu lên trên nhiều node. Cả Map/Reduce và HDFS đều được thiết kế sao
cho framework sẽ tự động quản lý được các lỗi, các lỗi phần cứng của các node.”
Wikipedia định nghĩa:
“Hadoop là một framework nguồn mở viết bằng Java cho phép phát triển các ứng
dụng phân tán có cường độ dữ liệu lớn một cách miễn phí. Nó cho phép các ứng
dụng có thể làm việc với hàng ngàn node khác nhau và hàng petabyte dữ liệu.
Hadoop lấy được phát triển dựa trên ý tưởng từ các công bố của Google về mô hình

MapReduce và hệ thống file phân tán Google File System (GFS).”
Tóm lại:
(1) Hadoop là một framework cho phép phát triển các ứng dụng phân tán.
(2) Hadoop viết bằng Java. Tuy nhiên, nhờ cơ chế streaming, Hadoop cho phép phát
triển các ứng dụng phân tán bằng cả java lẫn một số ngôn ngữ lập trình khác như
C++, Python, Pearl.
(3) Hadoop cung cấp một phương tiện lưu trữ dữ liệu phân tán trên nhiều node, hỗ
trợ tối ưu hoá lưu lượng mạng, đó là HDFS. HDSF che giấu tất cả các thành phần


20

phân tán, các nhà phát triển ứng dụng phân tán sẽ chỉ nhìn thấy HDFS như một hệ
thống file cục bộ bình thường.
(4) Hadoop giúp các nhà phát triển ứng dụng phân tán tập trung tối đa vào phần
logic của ứng dụng, bỏ qua được một số phần chi tiết kỹ thuật phân tán bên dưới
(phần này do Hadoop tự động quản lý).
(5) Hadoop là Linux-based. Tức Hadoop chỉ chạy trên môi trường Linux .
2.1.1.2 Lịch sử Hadoop
Hadoop được tạo ra bởi Dough Cutting, người sáng tạo ra Apache Lucene - bộ thư
viện tạo chỉ mục tìm kiếm trên text được sử dụng rộng rãi. Hadoop bắt nguồn từ
Nutch, một ứng dụng search engine nguồn mở. Nutch được khởi xướng từ năm
2002, và một hệ thống search engine (gồm crawler và tìm kiếm) nhanh chóng ra
đời. Tuy nhiên, các nhà kiến trúc sư của Nutch nhanh chóng nhận ra rằng Nutch sẽ
không thể mở rộng ra để có thể thực hiện vai trò search engine của mình trên tập dữ
liệu hàng tỷ trang web (lúc khả năng của Nutch chỉ có thể crawl tối đa 100 triệu
trang). Nguyên nhân chính của giới hạn này là do Nutch lúc này chỉ chạy trên một
máy đơn (stand alone) nên gặp phải các khuyết điểm:
- Khả năng lưu trữ bị giới hạn: giả sử mỗi trang web cần 10Kb đĩa cứng để lưu thì
với hơn 100 triệu trang ta cần 1 Tetabyte đĩa cứng, và với khối lượng hàng tỷ trang

web đang có trên mạng thì cần có tới hàng chục petabye để lưu trữ.
- Tốc độ truy xuất chậm: với khối lượng dữ liệu lớn như vậy, việc truy xuất tuần tự
để phân tích dữ liệu và index trở nên rất chậm chạp, và thời gian để đáp ứng các câu
truy vấn tìm kiếm (search query) là không hợp lý. Việc phải truy xuất vào các file
có kích thước lớn được tạo ra trong quá trình crawl và index cũng là một thách thức
lớn. Năm 2003, Google công bố kiến trúc của hệ thống file phân tán GFS (viết tắt từ
Google File System) của họ. Các nhà kiến trúc sư của Nutch thấy rằng GFS sẽ giải
quyết được nhu cầu lưu trữ các file rất lớn từ quá trình crawl và index. Năm 2004,
họ bắt tay vào việc ứng dụng kiến trúc của GFS vào cài đặt một hệ thống file phân
tán nguồn mở có tên Nutch Distributed File System (NDFS). Năm 2004, Google lại
công bố bài báo giới thiệu MapReduce. Vào đầu năm 2005, các nhà phát triển
Nutch đã xây dựng được phiên bản MapReduce trên Nutch, và vào giữa năm 2005,
tất cả các thuật toán chính của Nutch đều được cải tiến lại để chạy trên nền NDFS


21

và MapReduce. NDFS và MapRecude trong Nutch đã nhanh chóng tìm được các
ứng dụng của mình bên ngoài lĩnh vực search engine, và vào tháng hai 2006 Dough
Cutting đã tách riêng NDFS và MapReduce ra để hình thành một dự án độc lập có
tên Hadoop. Cùng thời gian này, Dough Cutting gia nhập vào Yahoo!. Tại đây ông
được tạo một môi trường tuyệt vời để phát triển Hadoop và vào tháng 2 năm 2008
Yahoo đã công bố sản phẩm search engine của họ được xây dựng trên một Hadoop
cluster có kích thước 10.000 nhân vi xử lý.
2.1.1.3 Các thành phần của Hadoop
Ngày nay, ngoài NDFS (đã được đổi tên lại thành HDFS-Hadoop Distributed File
System) và MapReduce, đội ngũ phát triển Hadoop đã phát triển các dự án con dựa
trên HDFS và MapReduce. Hiện nay, Hadoop gồm có các dự án con sau:

Hình 5: Cấu trúc các thành phần của Hadoop [12]

Core: Cung cấp công cụ và giao diện cho hệ thống phân tán và các hệ thống I/O.
Đây là phần lõi để xây dựng nên HDFS và MapReduce.
MapReduce (MapReduce Engine): một framwork giúp phát triển các ứng dụng
phân tán theo mô hình MapReduce một cách dễ dàng và mạnh mẽ, ứng dụng phân
tán MapReduce có thể chạy trên một cluster lớn với nhiều node.
HDFS: hệ thống file phân tán, cung cấp khả năng lưu trữ dữ liệu khổng lồ và tính
năng tối ưu hoá việc sử dụng băng thông giữa các node. HDFS có thể được sử dụng
để chạy trên một cluster lớn với hàng chục ngàn node.
HBase: một cơ sở dữ liệu phân tán, theo hướng cột (Column-oriented). HBase sử
dụng HDFS làm hạ tầng cho việc lưu trữ dữ liệu bên dưới, và cung cấp khả năng
tính toán song song dựa trên MapReduce.
Hive: một data warehouse phân tán. Hive quản lý dữ liệu được lưu trữ trên HDFS
và cung cấp một ngôn ngữ truy vấn dựa trên SQL.


22

Chunka: Một hệ thống tập hợp và phân tích dữ liệu. Chunka chạy các collector (các
chương trình tập hợp dữ liệu), các collector này lưu trữ dữ liệu trên HDFS và sử
dụng MapReduce để phát sinh các báo cáo.
Pig: ngôn ngữ luồng dữ liệu cấp cao và framework thực thi dùng cho tính toán song
song. Trong khuôn khổ của luận văn này, chúng tôi chỉ nghiên cứu hai phần quan
trọng nhất của Hadoop, đó là HDFS và MapReduce.
2.1.1.4 Ứng dụng của Hadoop trong một số công ty:
Ngày nay, ngoài Yahoo!, có nhiều công ty sử dụng Hadoop như là một công cụ để
lưu trữ và phân tích dữ liệu trên các khối dữ liệu lớn như:
Twitter: sử dụng Hadoop để xử lý tweets (các bài viết văn bản lên đến 140 ký tự
hiển thị trên profile của tác giả), logs và các nguồn dữ liệu phát sinh trong quá trình
hoạt động của Twitter.
Facebook: Sử dụng Hadoop để lưu trữ các log nội bộ và kích thước của nguồn dữ

liệu. Các dữ liệu này được dùng làm nguồn cho các báo cáo phân tích và máy học.
Hiện tại, facebook có 2 Hadoop cluster chính: một cluster 1100 máy với 8800 nhân
và 12 Petabyte ổ cứng lưu trữ.
-A9.com-Amazon: Sử dụng Hadoop để đánh giá chỉ số tìm kiếm sản phẩm trên
Amazon, xử lý đến hàng triệu phiên kết nối mỗi ngày. Các cụm máy chủ (cluster)
của A9.com có độ lớn từ 1-100 máy con (node).
Và còn rất nhiều công ty hiện đang sử dụng Hadoop vào việc lưu trữ và xử lý dữ
liệu, đặc biệt cho các nguồn dữ liệu lớn với kích thước lên tới hàng petabyte.
2.1.1.5 Tổng quan của một Hadoop cluster:
Như đã giới thiệu ở các phần trên, HDFS và MapReduce là hai thành phần chính
của một Hadoop cluster. Nhìn chung, kiến trúc của Hadoop là kiến trúc masterslave, và cả hai thành phần HDFS và MapReduce đều tuân theo kiến trúc
masterslave này. Kiến trúc một Hadoop cluster như sau:


23

Hình 6: Tổng quan một Hadoop Cluster
Trên một hadoop cluster, có duy nhất một node chạy NameNode, một node chạy
JobTracker (NameNode và JobTracker có thể nằm trên cùng một máy vật lý, tuy
nhiên trên các cluster thật sự với hàng trăm, hàng nghìn node thì thường phải tách
riêng NameNode và JobTracker ra các máy vật lý khác nhau). Có nhiều node slave,
mỗi node slave thường đóng 2 vai trò: một là DataNode, hai là TaskTracker.
NameNode và DataNode chịu trách nhiệm vận hành hệ thống file phân tán HDFS
với vai trò cụ thể được phân chia như sau:
NameNode: đóng vai trò là master của hệ thống HDFS, quản lý các meta-data của
hệ thống HDFS như file system space, danh sách các file trên hệ thống và các block
id tương ứng của từng file, quản danh sách slave và tình trạng hoạt động của các
DataNode (live hay dead) thông qua các hearbeat3, điều hướng quá trình đọc/ghi dữ
liệu từ client lên các DataNode.
DataNode: chứa các block dữ liệu thực sự của các file trên HDFS, chịu trách nhiệm

đáp ứng các yêu cầu đọc/ghi dữ liệu từ client, đáp ứng các yêu cầu tạo/xoá các


×