1. Trang chủ
  2. » Luận Văn - Báo Cáo

Công nghệ big data và ứng dụng phân tích số liệu kinh doanh của tập đoàn viettel

83 1,3K 5
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 83
Dung lượng 2,22 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Công nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn ViettelCông nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn ViettelCông nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn ViettelCông nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn ViettelCông nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn ViettelCông nghệ Big Data và ứng dụng phân tích số liệu kinh doanh của Tập đoàn Viettel

Trang 1

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

-

NGUYỄN HỮU THẢO THUẬN

CÔNG NGHỆ BIG DATA

VÀ ỨNG DỤNG PHÂN TÍCH SỐ LIỆU KINH DOANH

CỦA TẬP ĐOÀN VIETTEL

LUẬN VĂN THẠC SĨ KỸ THUẬT

(Theo định hướng ứng dụng)

HÀ NỘI - 2016

Trang 2

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

-

NGUYỄN HỮU THẢO THUẬN

CÔNG NGHỆ BIG DATA

VÀ ỨNG DỤNG PHÂN TÍCH SỐ LIỆU KINH DOANH

CỦA TẬP ĐOÀN VIETTEL

CHUYÊN NGÀNH : HỆ THỐNG THÔNG TIN

Trang 3

i

LỜI CAM ĐOAN

Tôi cam đoan đây là công trình nghiên cứu của riêng tôi

Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bất cứ công trình nào

TÁC GIẢ

Nguyễn Hữu Thảo Thuận

Trang 4

Trong quá trình nghiên cứu của mình, mặc dù được sự hướng dẫn rất nhiệt tình, đầy trách nhiệm của TS Nguyễn Đình Hóa và các thầy cô giáo trong Học viện Công nghệ Bưu Chính Viễn thông cùng với sự nỗ lực của cá nhân nhưng cũng không thể tránh được những thiếu sót Tác giả chân thành mong nhận được những ý kiến đóng góp từ quý Thầy, Cô và các bạn bè đồng nghiệp

Trân trọng cám ơn

Tác giả

Trang 5

iii

MỤC LỤC

LỜI CAM ĐOAN……… i

LỜI CẢM ƠN……… ii

DANH MỤC VIẾT TẮT……… v

DANH MỤC BẢNG BIỂU……… … vi

DANH MỤC HÌNH VẼ……… vii

TỔNG QUAN VỀ BIG DATA 3

Khái niệm về Big data 3

Các đặc tính của việc xử lý Big Data 4

Ứng dụng Big Data trong tài chính ngân hàng, bảo hiểm 6

Thương mại 8

Hiện trạng khai thác Big Data trên thế giới và ở Việt Nam 8

Tổng quan về các giải pháp Big Data 11

Google Cloud Platform 11

Amazon EMR 16

Apache Hadoop 26

Kết luận chương 1 27

CÔNG NGHỆ APACHE HADOOP 28

Giới thiệu về Hadoop 28

Các trình nền của Hadoop 32

NameNode 32

DataNode 33

Secondary NameNode 33

JobTracker 34

TaskTracker 34

Kiến trúc tổng thể Hadoop 35

Hệ thống tập tin phân tán Hadoop (HDFS) 38

Hadoop MapReduce 42

Hệ sinh thái các sản phẩm đi kèm Hadoop 47

Kết luận chương 2 50

ỨNG DỤNG 52

Đặt vấn đề bài toán ứng dụng 52

Xây dựng hệ thống 55

Trang 6

iv

Mô hình kiến trúc tổng thể 55

Mô tả dữ liệu đầu vào 59

Kết quả chương trình 60

Trung tâm GPCNTT Viettel 60

Đánh giá chương trình 69

Kết luận chương 3 71

KẾT LUẬN…… 72

TÀI LIỆU THAM KHẢO 73

Trang 7

minh hóa doanh nghiệp)

2 Big Data Dữ liệu lớn

5 Data mining Khai phá dữ liệu

6 Data set Tập dữ liệu

7

ERP Enterprise Resource Planning (Lập kế

hoạch nguồn lực doanh nghiệp)

8 IoT Internet Of Things (Internet vạn vật)

9

MIS Management Inventory System (Hệ thống

báo cáo điều hành)

10 MultiMedia Đa phương tiện

vRTAP Viettel Realtime Analytic Processing (Xử

lý phân tích thời gian thực)

17 ZB Zetabyte (1 zetabyte = 1 ngàn tỷ tỷ byte )

Trang 8

vi

DANH MỤC CÁC BẢNG BIỂU

Bảng 3.1Bảng đánh giá hệ thống 69

Trang 9

vii

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

Hình 1.1 Thống kê các nguồn dữ liệu hiện nay 4

Hình 1.2 Biểu đồ google trends về sự quan tâm tới các sản phẩm phân tích dữ liệu trên thế giới 9

Hình 1.3 Nhà cung cấp dịch vụ lập kế hoạch đầu tư vào Big Data và phân tích sâu 10

Hình 1.4 Mô hình kiến trúc mẫu hệ thống Big Data của google 12

Hình 1.5 Mô hình kiến trúc tích hợp Amazon webservice điển hình 18

Hình 2.1 Mô hình Hadoop lưu trữ dữ liệu phân tán trên hệ thống Hadoop Distributed File System (HDFS) 30

Hình 2.2 Mô hình Hadoop xử lý dữ liệu song song và phân tán trên các nút 30

Hình 2.3 Tương tác giữa JobTracker và TaskTracker 34

Hình 2.4 Cấu trúc liên kết của một nhóm Hadoop điển hình 35

Hình 2.5 Mô hình kiến trúc tổng quát của Hadoop 36

Hình 2.6 Sơ đồ kiến trúc hệ thống HDFS 39

Hình 2.7 Sơ đồ quá trình client đọc một file trên HDFS 40

Hình 2.8 Sơ đồ quá trình ghi file trên HDFS 41

Hình 2.9 Sơ đồ thành phần Map Reduce 42

Hình 2.10 Sơ đồ luồng hoạt động Map Reduce 44

Hình 2.11 Sơ đồ luồng hoạt động của Map 45

Hình 2.12 Sơ đồ luồng hoạt động của Reduce 46

Hình 2.13 Sơ đồ luồng thông báo TaskTracker hoàn thành Reduce Task 47

Hình 2.14 Hình vẽ hệ sinh thái các sản phẩm trên Hadoop 48

Hình 3.1 Mô hình kiến trúc tổng thể hệ thống xử lý số liệu kinh doanh 55

Hình 3.2 Hình vẽ vào chức năng xem biểu đồ 60

Hình 3.3 Hình vẽ màn hình tìm kiếm 61

Hình 3.4 Hình vẽ vào chức năng xem biểu đồ 61

Hình 3.5 Hình vẽ kết quả xem biểu đồ 62

Hình 3.6 Hình vẽ vào chức năng xem biểu đồ 63

Trang 10

viii

Hình 3.7 Hình vẽ vào chức năng xem biểu đồ 63

Hình 3.8 Hình vẽ vào chức năng xem biểu đồ 64

Hình 3.9 Hình vẽ kết quả chức năng xem biểu đồ 64

Hình 3.10 Hình vẽ vào chức năng xem biểu đồ 65

Hình 3.11 Hình vẽ vào chức năng xem biểu đồ 65

Hình 3.12 Hình vẽ vào chức năng xem biểu đồ 66

Hình 3.13 Hình vẽ kết quả chức năng xem biểu đồ 66

Hình 3.14 Hình vẽ vào chức năng xem biểu đồ 67

Hình 3.15 Hình vẽ vào chức năng xem biểu đồ 67

Hình 3.16 Hình vẽ vào chức năng xem biểu đồ 68

Hình 3.17 Hình vẽ kết quả xem biểu đồ 68

Trang 11

1

MỞ ĐẦU

Ngày nay, sự phát triển của Internet đã làm thay đổi mạnh mẽ cách thức hoạt động của các tổ chức Các ứng dụng Web 2.0, mạng xã hội, điện toán đám mây đã một phần mang lại cho các tổ chức phương thức kinh doanh mới Số lượng người sử dụng máy tính và các tài nguyên trực tuyến để xử lý công việc, giải trí, ngày càng tăng nhanh Đặc biệt dữ liệu được tạo ra và truyền tải trên internet là vô cùng lớn,

cụ thể: dữ liệu trên thế giới tăng gấp đôi sau mỗi 2 năm Google có hơn 3 triệu máy chủ để xử lý hơn 1,7 nghìn tỷ lượt tìm kiếm trong một năm, các trung tâm dữ liệu tiêu thụ gần 1,5% điện năng trên toàn thế giới, có 571 website mới được tạo ra sau mỗi phút, dự đoán sẽ có 1/3 lượng dữ liệu trên thế giới sẽ được lưu trữ và truyền tải thông qua "đám mây" vào năm 2020, Twitter xử lý 7 TB dữ liệu mỗi ngày, Facebook xử lý 10 TB dữ liệu mỗi ngày, có 750 triệu bức ảnh được đăng tải lên Facebook mỗi 2 ngày, có hơn 247 tỷ email được gửi đi mỗi ngày, gần 80% email là thư rác, số lượng tin nhắn văn bản được gửi và nhận mỗi ngày vượt qua số lượng con người trên hành tinh này, 48 giờ video được đăng tải lên YouTube mỗi phút,

tương đương lượng nội dung số dài 8 năm mỗi ngày[1]

Trong kỷ nguyên của IoT, các cảm biến được nhúng vào trong các thiết bị di động như điện thoại di động, ô tô, và máy móc công nghiệp,… việc chuyển dữ liệu định kỳ hoặc liên tục từ chiếc xe bạn lái về máy chủ tại chính hãng không còn là chuyện viễn tưởng nữa Vấn đề chỉ còn là xử lý: kích thước, tốc độ, phương thức xử

lý và kết quả đầu ra Ford, GE hay Rolls Royce cùng rất nhiều hãng xe hơi khác đang đầu tư vào IoT Điều tương tự cũng xuất hiện ở nhiều ngành khác, vốn là kịch bản tất yếu của khái niệm vạn vật kết nối Hệ quả tất yếu là khối lượng dữ liệu số đang phình to ra với tốc độ chóng mặt Khối lượng dữ liệu mới được tạo ra nhiều và nhanh đến mức mà hai năm gần đây nhất chiếm đến 90% khối lượng dữ liệu trên thế giới hiện nay Những dữ liệu này tới từ mọi nơi Ví dụ như từ những chiếc cảm biến để thu thập thông tin thời tiết, những thông tin được cập nhật trên các trang web mạng xã hội, những bức ảnh và video kỹ thuật số được đưa lên mạng, dữ liệu

Trang 12

ZB Dự báo đến năm 2020 là 40 ZB Dưới sự bùng nổ này, thuật ngữ Big Data được

sử dụng để chỉ những bộ dữ liệu khổng lồ, chủ yếu không có cấu trúc, được thu thập

từ nhiều nguồn khác nhau Với những tác động trong việc khám phá giá trị tiềm ẩn

to lớn, Big Data đang được xem là một yếu tố mới quan trọng mang lại lợi ích cho các tổ chức trong nhiều lĩnh vực khác nhau Các chuyên gia tài chính đánh giá đầu

tư vào Big Data sẽ là yếu tố then chốt để đạt được lợi thế cạnh tranh Chính vì những lợi ích to lớn mà Big Data có thể mang lại, nhiều tổ chức đã đầu tư mạnh vào việc nghiên cứu và ứng dụng vào xử lý khai thác Big Data [1]

Tại Tập đoàn Viễn thông Quân đội Viettel, cùng với việc mở rộng mạng lưới kinh doanh dịch vụ viễn thông toàn cầu, khối lượng dữ liệu tăng trưởng rất mạnh Đặc biệt là số liệu kinh doanh: hóa đơn điện tử, giao dịch đấu nối, dữ liệu cước, … Việc đầu tư vào nghiên cứu ứng dụng công nghệ Big Data để đưa ra các quyết định kinh doanh kịp thời và chính xác là rất cần thiết

Từ nhu cầu thực tế đó, tác giả quyết định chọn đề tài “Công nghệ Big Data

và ứng dụng phân tích số liệu kinh doanh của Tập đoàn Viettel” cho luận văn

tốt nghiệp với mục đích nghiên cứu công nghệ Big Data và giải quyết bài toán xử lý

số liệu kinh doanh tại Viettel

Luận văn của Tác giả gồm có 3 chương với nội dung cơ bản sau:

Chương 1: Làm rõ định nghĩa Big Data và hiện trạng ứng dụng khai thác xử

lý Big Data ở Việt Nam và trên thế giới Giới thiệu tổng quan về 3 giải pháp Big Data Đề xuất sử dụng công nghệ Apache Hadoop để xây dựng module xử lý số liệu kinh doanh của Viettel

Chương 2: Trình bày chi tiết công nghệ Hadoop

Chương 3: Trình bày xây dựng ứng dụng xử lý số liệu kinh doanh tại

Viettel

Trang 13

3

TỔNG QUAN VỀ BIG DATA

Khái niệm về Big data

Big Data là một thuật ngữ dùng để mô tả các bộ dữ liệu có kích thước rất lớn, khả năng phát triển nhanh, rất khó thu thập, lưu trữ, quản lý và phân tích với các công cụ thống kê hay ứng dụng cơ sở dữ liệu truyền thống Big Data rất quan trọng với các tổ chức, doanh nghiệp Dữ liệu ngày một lớn và nhiều sẽ giúp các phân tích càng chính xác hơn Việc phân tích chính xác này sẽ giúp doanh nghiệp đưa ra các quyết định giúp tăng hiệu quả sản xuất, giảm rủi ro và chi phí [2]

Big Data có thể bao gồm ba nhóm kiểu dữ liệu

Thứ nhất là dữ liệu của các hệ thống doanh nghiệp truyền thống bao gồm các

dữ liệu từ hệ thống CRM, các giao dịch của hệ thống ERP, các dữ liệu kế toán…

Thứ hai là dữ liệu máy tạo ra/ Dữ liệu từ các thiết bị cảm biến: Bao gồm CDR, các dữ liệu ghi log thiết bị, …

Thứ ba là dữ liệu mạng xã hội (Social data): bao gồm các dữ liệu được sinh

ra từ quá trình sử dụng mạng xã hội của người dùng như: hình ảnh, video, thông tin trên Facebook, Twitter, …

Trang 14

4

Hình 1.1 Thống kê các nguồn dữ liệu hiện nay[2]

Các đặc tính của việc xử lý Big Data

Nói đến Big Data người ta thường nói đến bốn chữ “V” thể hiện đặc trưng của Big Data

Thứ nhất là độ lớn dữ liệu (volume), nghĩa là dữ liệu sinh ra tự động có số lượng nhiều hơn rất nhiều so với dữ liệu truyền thống Dữ liệu có thể sinh ra hàng

TB trong thời gian ngắn và dữ liệu lưu trữ có thể lên đến PB Cách đây vài năm, việc lưu trữ dữ liệu lớn là một vấn đề khó khăn Tuy nhiên hiện nay, với việc phần cứng ngày càng rẻ cộng thêm công nghệ lưu trữ đám mây thì việc xác định giá trị cần thiết từ tập dữ liệu lớn mới là vấn đề cốt yếu

Thứ hai là tốc độ xử lý dữ liệu (Velocity), tức là dữ liệu lớn không đồng nghĩa với xử lý chậm Ngày nay các hệ thống Mutilmedia cần xử lý nhanh và có phản hồi chấp nhận được với người dùng Trong việc xử lý dữ liệu lớn luôn cần quan tâm đến Tốc độ xử lý dữ liệu

Thứ ba là tính đa dạng dữ liệu (variety), tức là với việc thu thập từ nhiều nguồn dữ liệu khác nhau (web, mobile…), Big Data không chỉ có dữ liệu kiểu truyền thống dạng lược đồ cấu trúc mà ngày nay còn có nhiều loại dữ liệu khác như

Trang 15

Ứng dụng của Big Data

Big Data và các ứng dụng có liên quan đang ngày càng được sử dụng rộng rãi trong các tổ chức, trong các lĩnh vực khác nhau, nhằm giảm thiểu các rủi ro, hỗ trợ tổ chức trong việc quản lý các hoạt động hằng ngày cũng như ra quyết định Như đã nói ở trên, vấn đề không phải chúng ta thu thập được bao nhiêu dữ liệu mà

là sẽ làm gì với tập dữ liệu được thu thập đó Dữ liệu càng lớn thì việc đưa ra quyết định cho một vấn đề càng chính xác Một tổ chức, doanh nghiệp sẽ lấy dữ liệu từ nhiều nguồn khác nhau, thu thập các dữ liệu phù hợp và phân tích để đưa ra quyết định, cho phép giảm chi phí và giảm thời gian thực hiện xây dựng sản phẩm, giúp lập kế hoạch phát triển và tối ưu hóa sản phẩm, hỗ trợ đưa ra quyết định tốt hơn trong kinh doanh

Các cơ quan chính phủ tìm cách phân tích dữ liệu nhằm tìm ra những cách thức thu thuế một cách khéo léo, dự đoán được tỷ lệ thất nghiệp, xu hướng nghề nghiệp trong tương lai, các doanh nghiệp trong lĩnh vực y tế cũng đang chủ động hơn trong việc quản lý và theo dõi sức khỏe khách hàng, thiết kế các gói sản phẩm hợp lý nhằm giảm chi phí chăm sóc sức khỏe Ngành khách sạn và du lịch sử dụng

dữ liệu từ nhiều nguồn như mạng xã hội và tạo ra những gói kỳ nghỉ cá nhân cho các khách hàng Các doanh nghiệp phân tích dữ liệu nhằm tìm hiểu hành vi khách hàng và tư vấn cho họ về danh mục sản phẩm, thời gian và địa điểm mua có những chính sách giá hấp dẫn Nhiều nghiên cứu đã tìm hiểu về các ứng dụng của Big Data

và các lĩnh vực trong đó Big Data có thể được áp dụng Chẳng hạn: Hsinchun, Chiang phân tích một số ứng dụng của Big Data bao gồm thương mại điện tử, chính phủ điện tử, khoa học và công nghệ, chăm sóc sức khỏe, và an ninh và an toàn công cộng O'Leary mô tả một số ưu điểm cũng như trở ngại của Big Data và các ứng

Trang 16

6

dụng nền tảng cảm biến trên thiết bị di động trong quản lý cơ sở hạ tầng đường bộ McKinsey và Company thực hiện nghiên cứu về những giá trị dữ liệu mang lại đối với y tế, quản lý công, bán lẻ, sản xuất ở Mỹ Báo cáo nêu rõ nếu Big Data được sử dụng một cách sáng tạo và hiệu quả để cải tiến năng suất và chất lượng công việc, các doanh nghiệp bán lẻ Mỹ có thể tăng lợi nhuận trên 60%, chi tiêu cho công nghiệp, y tế Mỹ có thể giảm trên 8%, các nền kinh tế phát triển ở châu Âu cũng có thể tiết kiệm được 149 triệu Euro nhờ việc cải tiến hiệu suất hoạt động

Ứng dụng Big Data trong tài chính ngân hàng, bảo hiểm

Nhiều cuộc khảo sát được thực hiện để xác định vai trò của Big Data trong hoạt động của tổ chức Khảo sát của Gartner FEI năm 2013 nhấn mạnh tầm quan trọng của BI và AI trong công việc của các giám đốc tài chính Nhờ khung nhìn tổng quan, rõ ràng vào dữ liệu của tổ chức, các giám đốc tài chính có thể có những quyết định tốt hơn, làm tăng hiệu quả hoạt động của tổ chức, tăng tính liên kết giữa tài chính và hoạt động kinh doanh chung, cũng như tăng cường tính linh hoạt của tổ chức Một ví dụ từ ngân hàng China Merchants Bank (CMB) Trung Quốc, cho thấy hiệu quả của việc ứng dụng Big Data Để thu hút khách hàng, ngân hàng sử dụng dịch vụ tích điểm và đổi điểm Ngân hàng cũng sử dụng mô hình cảnh báo khả năng người dùng ngưng sử dụng dịch vụ để xây dựng các gói dịch vụ tín dụng lãi suất cao nhằm giữ chân khách hàng Đồng thời, thông qua việc phân tích

dữ liệu các giao dịch, các khách hàng tiềm năng là các doanh nghiệp nhỏ, cũng

được xác định một cách hiệu quả [1]

Có nhiều nguyên nhân dẫn đến quyết định đầu tư vào các dự án Big Data Trên thực tế, nhiều ứng dụng về Big Data được nghiên cứu và phát triển nhằm cải tiến hiệu quả hoạt động của các tổ chức tín dụng và bảo hiểm

1.2.1.1 Quản lý rủi ro

Hoạt động quản lý rủi ro được cải thiện đáng kể nhờ những tác động của Big Data Trước đây, hoạt động phân tích các tình huống rủi ro chủ yếu phụ thuộc vào việc phân tích khách hàng, các danh mục đầu tư, độ tin cậy tín dụng Hiện nay, với

Trang 17

7

những nguồn dữ liệu từ các phương tiện truyền thông xã hội cho phép tạo ra những hiểu biết mới về các danh mục rủi ro của khách hàng Các dữ liệu thu được từ nhiều nguồn không liên kết làm tăng khả năng phát hiện các hoạt động gian lận sớm hơn

so với các phương pháp hiện hành Hiểu về rủi ro và làm thế nào để quản lý rủi ro tốt hơn là mối quan tâm chính của các công ty bảo hiểm Phân tích rủi ro bao gồm việc đanh giá khả năng rủi ro xảy ra và chi phí phải bỏ ra trong từng trường hợp rủi

ro Những dữ liệu như mưa đá, cháy rừng, bão lụt, tội phạm và các yếu tố khác cần được khai thác và tận dụng để đánh giá rủi ro Các dữ liệu từ các thiết bị viễn thông, thiết bị cảm biến được cài đặt trong các phương tiện giao thông có thể thu thập những dữ liệu như địa điểm, tốc độ, quãng đường đi, tình trạng vận hành của phương tiện trong thời gian thực, giúp cải thiện khả năng đánh giá rủi ro, từ đó,

doanh nghiệp có thể tạo ra nhiều chiến lược giá khác nhau [1]

1.2.1.2 Tư vấn Big Data và các ứng dụng liên quan

Cho phép các tổ chức tài chính thu thập và tổ chức các dữ liệu như sở thích của khách hàng, lịch sử giao dịch, phương thức giao dịch, vị trí địa lý, thông tin gia đình, v.v Từ đó, hệ tư vấn sẽ dựa vào mục tiêu kinh doanh của ngân hàng, nhu cầu của Khách hàng để từ đó đưa ra các kiến nghị về bán chéo, bán thêm hoặc cung cấp các dịch vụ tốt hơn cho khách hàng Thông qua việc phân tích dữ liệu khách hàng ở cấp độ tinh vi hơn, các tổ chức còn có thể tạo ra những cơ hội mới từ việc tạo ra

những sản phẩm mục tiêu mới [1]

1.2.1.3 Các kỹ thuật thống kê trên dữ liệu lịch sử

Cho phép dự đoán các hành động tiếp theo của khách hàng Nền tảng phân tích dữ liệu lớn thông qua việc sử dụng các kỹ thuật xử lý phân tán (Map-Reduce) cho phép tổ chức tài chính, ngân hàng có thể lưu trữ, xử lý khối lượng dữ liệu rất lớn Nhờ vậy, các mô hình dự báo có thể chạy trên toàn bộ các tập dữ liệu, giúp rút

ngắn thời gian trích xuất, khám phá những thông tin quý giá còn tiềm ẩn

Trang 18

8

Thương mại

Các phân tích trên lượng dữ liệu lớn còn góp phần cải tiến và tối ưu hóa quá trình ra quyết định, giảm thiểu rủi ro, tạo ra những giá trị gia tăng cho doanh nghiệp Bằng việc khai thác nền tảng phân tích dữ liệu lớn, các doanh nghiệp có thể khám phá các giá trị tiềm ẩn to lớn, thông qua các khung nhìn tổng hợp về hành vi mua hàng của khách hàng Chẳng hạn, các công ty kinh doanh qua mạng chẳng những có thể theo dõi để biết được không chỉ những thông tin như khách hàng mua

gì, mà còn biết được họ xem những mặt hàng nào, họ xem những gì, làm gì mỗi lần

họ truy cập vào trang web, hay mức độ khách hàng bị tác động bởi những chính sách khuyến mãi hay bình luận từ những khách hàng khác; từ đó phát hiện ra được những điểm chung của những nhóm khách hàng Ngoài ra, sự phát triển của Internet, web 2.0, các thiết bị di động, cho phép tổ chức sử dụng nhiều phương thức khác nhau để tương tác với khách hàng bên cạnh các phương tiện truyền thống Việc phân tích các giao dịch của khách hàng qua các kênh khác nhau này cho phép

tổ chức hiểu hành vi khách hàng, phân cụm nhóm khách hàng, từ đó có thể cung cấp các sản phẩm và dịch vụ phù hợp với yêu cầu khách hàng Big Data còn mang lại lợi ích cho các doanh nghiệp trong việc lên kế hoạch bán hàng Bằng việc so sánh các yếu tố khác nhau từ nguồn dữ liệu khổng lồ, doanh nghiệp có thể tối ưu hóa việc định giá cho các sản phẩm Việc sử dụng Big Data trong quản lý chuỗi cung ứng cho phép các doanh nghiệp tối ưu hóa dự trữ kho, vận chuyển, phối hợp với nhà cung cấp nhằm giảm thiểu khoảng cách giữa nhà cung cấp và người tiêu thụ

[1]

Hiện trạng khai thác Big Data trên thế giới và ở Việt Nam

Phân tích, khai phá dữ liệu không phải là lĩnh vực mới Về bản chất, phân tích dữ liệu, kho dữ liệu và thông minh doanh nghiệp BI là các khái niệm đi liền với nhau, là các giai đoạn phát triển của nhau, hỗ trợ nhau Trong đó, thiết kế và triển khai Kho dữ liệu là bước chuẩn bị cho quá trình phân tích dữ liệu, các ứng dụng BI

là công cụ để khai thác các dữ liệu này Trên thế giới, rất nhiều doanh nghiệp từ lâu

đã ứng dụng khai phá dữ liệu (data mining) và xem đó như là phương pháp tạo ra sự

Trang 19

9

khác biệt, đột phá trong các hoạt động sản xuất kinh doanh Các hãng phần mềm lớn đều có các nền tảng phân tích dữ liệu của riêng mình như: Oracle Exadata, IBM Netezza, HP Vertica, EMC Greenplum, SAP HANA, Google, Ngoài ra, các công

ty công nghệ mới nổi cũng đang phát triển những sản phẩm cho riêng mình như Amazon Redshift, Cloudera Impala, ADATAO pAnalytics, Metamarkets Druid…

Hình 1.2 Biểu đồ google trends về sự quan tâm tới các sản phẩm phân tích dữ liệu

trên thế giới [1]

Đặc biệt, vài năm trở lại đây, phân tích dữ liệu luôn được các doanh nghiệp viễn thông quan tâm, đầu tư, có thể thấy điều đó qua bản báo cáo nghiên cứu của Heavy Reading tháng 12/2013 (thực hiện dưới sự tài trợ của Huawei) được biểu diễn trong Hình 1.3

Trang 20

10

Hình 1.3 Nhà cung cấp dịch vụ lập kế hoạch đầu tư vào Big Data và phân tích sâu

[1]

Tuy nhiên ở Việt Nam nói chung và Viettel nói riêng, việc khai phá dữ liệu

và phân tích dữ liệu thời gian thực (real-time analysis) còn là cái gì đó mới mẻ Hệ thống ZTE BI hiện đang triển khai ở Viettel thuần túy là một hệ thống báo cáo điều hành (MIS), chưa có các cấu phần rất quan trọng là cấu phần tương tác với khách hàng hoặc các hệ thống nghiệp vụ OLTP khác và cấu phần phân tích dữ liệu thời gian thực Các công ty phần mềm trong nước hiện cũng chưa phát triển nền tảng phân tích dữ liệu lớn thời gian thực nào Dự kiến, theo xu thế chung, các doanh nghiệp sẽ nhanh chóng nhận ra sự cần thiết của tương tác và phân tích dữ liệu thời gian thực Đối với Viettel, nhu cầu này đã là rất hiển nhiên Như vậy, phát triển sản phẩm Viettel Realtime Analytic Processing (vRTAP) vừa đáp ứng nhu cầu nội tại, vừa mở ra một phân khúc thị trường phần mềm mới trong nước và xa hơn nữa là cạnh tranh với các sản phẩm nước ngoài

Trang 21

11

Dữ liệu lớn không chỉ là thách thức dành cho tổ chức và doanh nghiệp; hơn thế, dữ liệu lớn là cơ hội để tìm kiếm những thông tin chiến lược từ những dạng dữ liệu mới, để bảo đảm rằng công việc kinh doanh bền vững, có hiệu quả hơn, và cũng là cơ hội để tìm ra câu trả lời cho những vấn đề mà trước đây chưa có lời giải đáp

Tổng quan về các giải pháp Big Data

Google Cloud Platform

Xây dựng hệ thống xử lý Big Data dựa trên nền tảng điện toán đám mây

“Cloud computing” sẽ nhanh hơn, sẽ không phải lo lắng về hạ tầng bên dưới Đặc biệt hơn, nó cho phép:

Không vận hành (NoOps): Nhà cung cấp cloud sẽ chịu trách nhiệm triển khai, quản lý và nâng cấp hạ tầng để làm cho hệ thống tin cậy và có khả năng mở rộng “NoOps” có nghĩa là nền tảng tự động xử lý các công việc như thế cho người

sử dụng, giải phóng người dùng hoàn toàn để có thể tập trung vào việc hiểu và khai thác giá trị dữ liệu

Chi phí hiệu quả: Không chỉ dễ sử dụng và nhanh, một giải pháp “NoOPs” cung cấp lợi ích chi phí khá rõ ràng thông qua việc loại bỏ công việc vận hành, nhưng lợi ích về mặt chi phí của Big Data theo “Cloud way” còn hơn nữa - nền tảng tự động mở rộng và tối ưu việc tiêu tốn hạ tầng của bạn, bỏ qua các tài nguyên nhàn rỗi như các cụm không hoạt động Bạn quản lý chi phí bằng số truy vấn và độ trễ dựa trên phân tích lợi ích/chi phí Bạn không bao giờ phải cấu trúc lại hệ thống chỉ để điều chỉnh chi phí

Trang 22

12

Cộng tác an toàn và dễ dàng: Bạn có thể chia sẻ bộ dữ liệu “data set” lên Google Cloud Storage hoặc các bảng trong google big query với bộ cộng tác bên trong hoặc bên ngoài tổ chức mà không cần tạo bản sao hoặc gán quyền truy cập cơ

sở dữ liệu Có một phiên bản dữ liệu mà bạn kiểm soát và xác thực quyền truy cập

mà không ảnh hưởng đến hiệu năng

Hình 1.4 Mô hình kiến trúc mẫu hệ thống Big Data của google [3]

1.4.1.2 Các thành phần

1.4.1.2.1 Google App Engine

Google App Engine (gọi tắt là GAE hay App Engine) là một môi trường phát triển ứng dụng dựa trên công nghệ điện toán đám mây Ở đó, Google cung cấp một

hệ thống gồm: ngôn ngữ lập trình, hệ cơ sở dữ liệu, các thư viện lập trình Người lập trình sẽ viết ứng dụng và ứng dụng này sẽ chạy trên các máy chủ của Google

Google App Engine được cung cấp miến phí cho mỗi ứng dụng trong một giới hạn, khi các ứng dụng vượt qua mức hạn mức thì phải trả thêm khoản phí cho mức vượt quá này

Hiện App Engine hỗ trợ 2 loại ngôn ngữ chính là: Python và Java Ngôn ngữ

Go đang ở mức thử nghiệm Một số ngôn ngữ khác như PHP cũng có thể chạy được nếu cài cùng với bộ chuyển từ PHP sang Java

Trang 23

13

1.4.1.2.2 Google Cloud Pub/Sub

Google Cloud Pub / Sub mang lại khả năng mở rộng, tính linh hoạt và độ tin cậy khi giao tiếp với các doanh nghiệp ngoài qua bản tin - định hướng đến điện toán đám mây Bằng cách cung cấp nhiều - nhiều, bản tin không đồng bộ tách riêng người gửi và người nhận, nó cho phép giao tiếp an toàn và tính sẵn sàng cao giữa các ứng dụng được viết một cách độc lập Google Cloud Pub / Sub cung cấp độ trễ thấp, giúp nhà phát triển tích hợp nhanh chóng các hệ thống lưu trữ trên nền tảng đám mây của Google và bên ngoài

1.4.1.2.3 Google Cloud Monitoring

Hiểu sâu hơn về hiệu suất và tính sẵn sàng của các ứng dụng điện toán đám mây của bạn Xem xét số liệu hiệu suất và các bản ghi cho các dịch vụ Google Cloud Platform và các máy ảo, và tạo ra các biểu đồ giám sát tùy biến Google Cloud Monitoring có nhiều ưu điểm Thứ nhất là cài đặt đơn giản, tức là người sử dụng không bao giờ phải lo lắng về việc triển khai một hệ thống giám sát một lần nữa Thứ hai là cung cấp biểu đồ mạnh mẽ, cho phép tìm kiếm và cảnh báo cho các công cụ bên ngoài, cho phép Alerting mạnh mẽ, tức là xác định cảnh báo theo quy luật để phù hợp với ứng dụng của người sử dụng Ngoài ra nó còn cho phép nhận thông báo qua email, tin nhắn SMS, chat và nhiều hơn nữa, các thông báo về các số liệu cá nhân và ngưỡng hoặc trên hiệu suất của nhóm tổng hợp

Thứ ba là có thể tích hợp với các hệ thống OSS, nó cung cấp cái nhìn sâu sắc vào nhiều máy chủ mã nguồn mở phổ biến với cấu hình tối thiểu

1.4.1.2.4 Google Cloud Storage

Google Cloud Storage là dịch vụ lưu trữ dữ liệu mạnh mẽ, đơn giản và chi phí hiệu quả Dịch vụ lưu trữ mạnh mẽ và đơn giản, cung cấp cho các nhà phát triển

và các tổ chức CNTT tính sẵn sàng cao khi lưu trữ đối tượng Google đã tạo ra ba lựa chọn đơn giản để giúp bạn giải quyết nhu cầu của các ứng dụng của bạn trong khi vẫn giữ chi phí thấp, cung cấp cho bạn một phương pháp truy cập đơn giản và phù hợp

Trang 24

14

Dịch vụ có Chi phí thấp và không có phí tối thiểu, tức là không có lệ phí tối thiểu cho những gì bạn sử dụng, mô hình Google Cloud Storage là chi phí hiệu quả nhất trên thị trường Ngoài ra, với quản lý vòng đời của Google Cloud Storage cho phép bạn giảm chi phí hơn nữa bằng cách lưu trữ các đối tượng thành Cloud Storage tuyến tính và thông qua xóa bỏ lịch trình

Dịch vụ có hiệu suất cao, ổn định và sẵn sang, tức là lưu trữ dữ liệu của bạn trên cơ sở hạ tầng của Google với mức độ rất cao về độ ổn định và tính sẵn sàng

Dịch vụ an toàn, riêng tư và bảo mật, tức là Google Cloud Storage được xây dựng với một chiến lược lưu trữ bản sao Tất cả các dữ liệu được mã hóa cả khi đang sử dụng và đang lưu trữ Các mô hình bảo mật của Google là một quá trình end- to-end, được xây dựng trên hơn 15 năm kinh nghiệm

1.4.1.2.5 Google Cloud Dataflow

Một mô hình lập trình và dịch vụ điện toán đám mây cho phép quản lý đầy

đủ xử lý dữ liệu lớn theo luồng và lô

Quản lý & hợp nhất: Dataflow là một mô hình lập trình hợp nhất và một dịch

vụ được quản lý để phát triển và thực hiện một loạt các chuỗi xử lý dữ liệu bao gồm ETL, tính toán lô, và tính liên tục Cloud Dataflow giải phóng bạn khỏi nhiệm vụ như quản lý tài nguyên và tối ưu hóa hiệu năng

Quản lý đầy đủ: Các dịch vụ quản lý xử lý trong suốt vòng đời tài nguyên và

có thể tự động cung cấp các tài nguyên để giảm thiểu độ trễ trong khi vẫn duy trì hiệu quả sử dụng Tài nguyên dataflow được phân bổ theo yêu cầu cung cấp cho bạn nguồn tài nguyên gần như vô hạn để giải quyết những thách thức lớn khi xử lý

dữ liệu của bạn

Mô hình lập trình hợp nhất: Dataflow cung cấp nguyên thủy lập trình như điều khiển cửa sổ và tự động sửa lỗi một cách mạnh mẽ mà có thể được áp dụng trên cả hai lô và dòng nguồn dữ liệu dựa trên nguồn dữ liệu Dataflow loại bỏ hiệu quả chi phí chuyển đổi mô hình lập trình giữa lô và xử lý dòng liên tục bằng cách cho phép các nhà phát triển thể hiện yêu cầu tính toán bất kể nguồn dữ liệu nào

Trang 25

15

Tích hợp & nguồn mở: Được xây dựng trên các dịch vụ như Google Compute Engine, Dataflow là một môi trường tính toán hoạt động quen thuộc mà hoàn toàn phù hợp với Cloud Storage, Cloud Pub / Sub, Cloud Datastore, Cloud Bigtable, và BigQuery Các mã nguồn mở dựa trên Java Cloud Dataflow SDK cho phép các nhà phát triển thực hiện các phần mở rộng tùy chỉnh và mở rộng Dataflow

để thay thế môi trường dịch vụ

Quan hệ đối tác & Tích hợp: đối tác Google Cloud Platform và các nhà phát triển bên thứ 3 đã phát triển tích hợp với Dataflow một cách nhanh chóng và dễ dàng để cho phép các nhiệm vụ xử lý dữ liệu mạnh mẽ của bất kỳ kích thước nào Tích hợp được thực hiện với các API mở được cung cấp bởi Dataflow

Một kho dữ liệu nhanh chóng, tiết kiệm và quản lý đầy đủ để phân tích dữ liệu quy mô lớn

Phân tích dữ liệu Quy mô lớn: BigQuery là quản lý đầy đủ, NoOps, phân tích

cơ sở dữ liệu chi phí thấp của Google Với BigQuery bạn không có cơ sở hạ tầng để quản lý và không cần một quản trị cơ sở dữ liệu, sử dụng SQL quen thuộc và có thể tận dụng lợi thế của mô hình pay-as-you-go (dùng bao nhiêu trả bấy nhiêu) Bộ sưu tập các tính năng này cho phép bạn tập trung vào việc phân tích dữ liệu để tìm hiểu

ý nghĩa BigQuery là một nền tảng phân tích dữ liệu lớn mạnh mẽ được sử dụng bởi tất cả các loại hình tổ chức, từ các startups đến 500 công ty lớn

Tốc độ & Hiệu năng: Nạp dữ liệu của bạn từ Google Cloud Storage hoặc Google Cloud kho dữ liệu , hoặc chuyển nó vào BigQuery để cho phép phân tích thời gian thực dữ liệu của bạn Với BigQuery bạn có thể dễ dàng triển khai cơ sở dữ liệu quy mô Petabyte

Giá không thể tin nổi: BigQuery tách khái niệm về lưu trữ và tính toán dữ liệu lớn, cho phép bạn mở rộng quy mô và thanh toán cho mỗi cái một cách độc lập Ngoài ra, các terabyte đầu tiên (1 TB) dữ liệu xử lý mỗi tháng là miễn phí Vui lòng tham khảo trang định giá để biết thêm thông tin

Trang 26

1.4.2.1 Giới thiệu tổng quan

Khi chúng ta đã trở thành một xã hội kỹ thuật số, số lượng dữ liệu được tạo ra và thu thập được phát triển và đẩy nhanh đáng kể Phân tích dữ liệu này

sẽ trở thành một thách thức với các công cụ truyền thống Đòi hỏi chúng ta phải cải tiến để thu hẹp khoảng cách giữa dữ liệu được tạo ra và dữ liệu có thể phân tích hiệu quả

Công cụ dữ liệu lớn và các công nghệ đem lại các cơ hội và thách thức trong việc có thể phân tích dữ liệu một cách hiệu quả để hiểu rõ hơn về sở thích của khách hàng, đạt được một lợi thế cạnh tranh trên thị trường, và phát triển doanh nghiệp của bạn Kiến trúc quản lý dữ liệu đã tiến hóa từ kho dữ liệu truyền thống thành mô hình kiến trúc phức tạp hơn, giải quyết yêu cầu nhiều hơn, chẳng hạn như thời gian thực và xử lý hàng loạt; dữ liệu có cấu trúc và không có cấu trúc; giao dịch tốc độ cao;

Amazon Web Services (AWS) cung cấp một nền tảng rộng các dịch

vụ quản lý để giúp bạn xây dựng an toàn và liên tục mở rộng quy mô ứng dụng dữ liệu lớn end-to-end một cách nhanh chóng và dễ dàng Cho dù các ứng dụng của bạn yêu cầu streaming thời gian thực hay xử lý dữ liệu hàng loạt, AWS cung cấp cơ

sở hạ tầng và các công cụ để giải quyết dữ liệu lớn của bạn trong tương lai Không cần mua sắm phần cứng, không cần bảo trì và mở rộng cơ sở hạ tầng, duy nhất những gì bạn cần là thu thập, lưu trữ, xử lý và phân tích dữ liệu lớn AWS có một

hệ sinh thái các giải pháp phân tích thiết kế đặc biệt để xử lý tăng số lượng dữ liệu

và cung cấp cái nhìn sâu sắc vào doanh nghiệp của bạn Amazon web services (AWS) là tập hợp các dịch vụ cung cấp cho người lập trình có khả năng truy cập tới

hạ tầng kiến trúc tính toán kiểu sẵn sàng để sử dụng của Amazon AWS cung cấp

Trang 27

Đối với các ứng dụng quan trọng trên cơ sở hạ tầng truyền thống, nhà thiết

kế hệ thống không có sự lựa chọn mà phải để quá hơn thực tế để dự phòng Ngược lại, trên AWS bạn có thể cung cấp dung lượng nhiều hơn và tính toán trong một vài phút, nghĩa là các ứng dụng dữ liệu lớn của bạn phát triển và co theo nhu cầu, và hệ thống của bạn chạy gần đến hiệu quả tối ưu nhất Ngoài ra, bạn sẽ có được tính linh hoạt trên cơ sở hạ tầng toàn cục với truy cập nhiều vùng địa lý khác nhau mà AWS cung cấp, cùng với khả năng sử dụng các dịch vụ mở rộng khác để xây dựng các ứng dụng dữ liệu lớn phức tạp Những dịch vụ khác bao gồm Amazon Simple Storage Service (Amazon S3) để lưu trữ dữ liệu và AWS Data Pipeline để dàn xếp việc di chuyển và chuyển đổi dữ liệu dễ dàng AWS IoT, cho phép kết nối các thiết

bị tương tác với các ứng dụng điện toán đám mây và các thiết bị kết nối khác

Ngoài ra, AWS có nhiều lựa chọn để giúp đưa dữ liệu vào đám mây, bao gồm thiết bị an toàn như AWS Import / Export Snowball để tăng tốc chuyển dữ liệu quy mô petabyte, Amazon Kinesis Firehose để tải luồng dữ liệu, và khả năng mở rộng kết nối tin qua AWS Direct Connect

Khi di động tiếp tục phát triển nhanh chóng trong cách sử dụng, bạn có thể

sử dụng bộ dịch vụ trong AWS Mobile Hub để thu thập và đo lường sử dụng ứng dụng và dữ liệu hoặc xuất dữ liệu cho mục đích phân tích thêm

AWS phù hợp lý tưởng cho việc giải quyết các vấn đề dữ liệu lớn, và nhiều khách hàng đã thực hiện phân tích dữ liệu lớn thành công trên AWS

Trang 28

18

Hình 1.5 Mô hình kiến trúc tích hợp Amazon webservice điển hình [3]

1.4.2.2 Các thành phần

1.4.2.2.1 Dịch vụ lưu trữ đơn giản của Amazon (S3)

S3 là hệ thống lưu trữ dữ liệu nhanh và có thể mở rộng được trên internet giúp bạn lưu trữ và lấy dữ liệu một cách đơn giản với bất cứ dung lượng nào, bất cứ khi nào và bất cứ đâu trên thế giới Bạn trả phí dựa trên dung lượng lưu trữ và băng thông mà bạn dùng Không phí cài đặt, không phí tối thiểu hay phí phụ trội

Amazon cung cấp sự quản lý và duy trì của nền tảng lưu trữ, giúp bạn thoải mái tập trung vào các chức năng quan trọng của hệ thống và ứng dụng của bạn S3

là nền tảng công nghiệp mà luôn sẵn sàng cho nhu cầu lưu trữ dữ liệu của bạn Nó tuyệt vời cho:

Lưu trữ dữ liệu cho các ứng dụng của bạn

Sao lưu dữ liệu cho doanh nghiệp hoặc cá nhân

Phân tán nhanh và rẻ các nội dung làm tiêu hao băng thông lớn tới khách hàng của bạn

Tính năng của S3 bao gồm:

Tính ổn định

Trang 29

Tính mở rộng

Thiết kế của S3 cung cấp một cấp độ cao về tính mở rộng và cho phép sự điều chỉnh dễ dàng trong dịch vụ khi lượng truy cập vào ứng dụng web của bạn tăng đột biến với lưu lượng khổng lồ

1.4.2.2.2 Amazon Kinesis Streams

Sử dụng Amazon Kinesis Streams để thu thập và xử lý các luồng lớn các bản ghi dữ liệu trong thời gian thực

Bạn sẽ tạo ra các ứng dụng xử lý dữ liệu, được biết đến là ứng dụng Amazon Kinesis Streams Một ứng dụng Amazon Kinesis Streams điển hình đọc dữ liệu từ một dòng Amazon Kinesis như các bản ghi dữ liệu Các ứng dụng này có thể

sử dụng thư viện Amazon Kinesis Client, và chúng có thể chạy trên Amazon EC2 Các bản ghi được xử lý có thể được gửi đến các biểu đồ, sử dụng để tạo ra các cảnh báo, tự động thay đổi chiến lược giá và quảng cáo, hoặc gửi dữ liệu đến một loạt các dịch vụ AWS khác

Bạn có thể sử dụng Streams cho lấy, gộp dữ liệu nhanh chóng và liên tục Các loại dữ liệu sử dụng bao gồm các dữ liệu cơ sở hạ tầng log, các bản ghi ứng

Trang 30

20

dụng, phương tiện truyền thông xã hội, dữ liệu thị trường thức ăn, và dữ liệu click trên trang web

Sau đây là những tình huống điển hình cho việc sử dụng Streams:

Tăng tốc việc đưa log và lượng dữ liệu vào xử lý: Bạn có thể có các nhà sản xuất đẩy dữ liệu trực tiếp vào luồng Ví dụ, đẩy log hệ thống và ứng dụng và chúng

sẽ sẵn để xử lý trong vài giây Điều này ngăn ngừa các dữ liệu log bị mất, nếu các ứng dụng có lỗi

Số liệu và báo cáo Thời gian thực: Bạn có thể sử dụng dữ liệu thu thập vào Streams để phân tích dữ liệu đơn giản và báo cáo trong thời gian thực Ví dụ, ứng dụng xử lý dữ liệu của bạn có thể làm việc trên các số liệu và báo cáo cho các bản ghi hệ thống và ứng dụng như các dữ liệu đang trong luồng, chứ không phải chờ đợi

để nhận được lô dữ liệu

Phân tích dữ liệu thời gian thực: Điều này kết hợp sức mạnh xử lý song song với các giá trị của dữ liệu thời gian thực Ví dụ, xử lý sự kiện click trang web trong thời gian thực

Xử lý dòng phức tạp: Bạn có thể tạo đồ thị dòng dữ liệu phức tạp, đưa dữ liệu từ nhiều ứng dụng Amazon Kinesis Streams vào dòng khác để xử lý luồng ra bởi ứng dụng Amazon Kinesis Streams

Lợi ích của việc sử dụng Streams: Trong khi bạn có thể sử dụng Streams để giải quyết một loạt các vấn đề luồng dữ liệu, một cách sử dụng phổ biến là gộp dữ liệu thời gian thực theo sau bằng cách tải các dữ liệu tổng hợp thành một kho dữ liệu hoặc cụm Map-Reduce

Dữ liệu được đưa vào Amazon Kinesis Stream, đảm bảo độ bền và độ co dãn Việc chậm trễ giữa thời gian mộtbản ghi được đưa vào dòng và thời gian nó có thể được lấy ra thường là ít hơn 1 giây - nói cách khác, một ứng dụng Amazon Kinesis Streams có thể bắt đầu tiêu thụ dữ liệu từ dòng gần như ngay lập tức sau khi

dữ liệu được thêm vào Các khía cạnh dịch vụ quản lý của Streams giúp bạn thoát khỏi gánh nặng hoạt động của việc tạo ra và chạy một đường ống nạp dữ liệu Bạn

có thể tạo ứng dụng loại map-reduce, và độ co giãn của Streams cho phép bạn mở

Trang 31

và lấy dữ liệu để lưu trữ dữ liệu như Amazon S3 Các bảng chạy gộp DynamoDB sau đó được đọc bởi một bảng điều khiển cho các báo cáo cập nhật theo phút

Thư viện Amazon Kinesis client cho phép chịu lỗi dữ liệu từ các luồng và cung cấp rộng hỗ trợ cho các ứng dụng Amazon Kinesis Streams

1.4.2.2.3 Amazon DynamoDB

DynamoDB là môt dịch vụ quản lý NoSQL có khả năng đáp ứng hiệu suất

cao và nhanh kèm theo khả năng mở rộng Nếu bạn là một nhà phát triển, bạn có thể

sử dụng DynamoDB để tạo ra một bảng có khả năng lưu trữ và truy xuất bất kỳ số

lượng dữ liệu, mà vẫn có thể phục vụ cho bất kỳ mức độ lượng yêu cầu nào

DynamoDB tự động phân tán dữ liệu và lưu lượng của một bảng ra một số

lượng server vừa đủ để có thể xử lý lượng yêu cầu đặt ra bơi khách hàng và lượng

dữ liệu lưu trữ, và đồng thời đảm bảo hiệu suất nhanh và đồng nhất Tất cả dự liệu

được lưu trữ trên SSD và tự động được sao chép ra các vùng sẵn sằng (Availability Zones) trong một khu vực (Region) để cung cấp độ sẵn sàng cao và độ bền của dữ liệu (high availablity and data durability)

Nếu bạn là một nhà quản lý dữ liệu, bạn có thể tạo một bảng dữ liệu mới, mở rộng hay thu hẹp yêu cầu capacity mà không bị giảm hiệu suất, và có thể thây được

các thông số qua AWS Management Console Với DynamoDB, bạn có thể phó

thác gánh nặng quản lý và mở rộng dữ liệu cho AWS và không phải lo lắng về việc cung cấp hardware, thiết lập và cài đặt, sao chép dữ liệu

Trang 32

22

1.4.2.2.4 AWS Lambda

AWS Lambda là một dịch vụ tính toán nơi mà bạn có thể tải mã nguồn của mình lên, và dịch vụ AWS Lambda sẽ giúp bạn chạy đoạn mã đó bằng việc sử dụng các tài nguyên sẵn có của AWS Sau khi bạn tải mã, và bạn tạo ra một hàm Lambda, AWS sẽ cung cấp và quản lý các server mà bạn sử dụng để chạy mã Về phần sử dụng AWS, bạn có thể làm như sau:

Một dịch vụ tính toán hướng sự kiện nơi mà AWS Lambda chạy mã của bạn

và trả về các sự kiện, những thay đổi về data được đẩy vào một bucket của Amazon S3 hoặc là một bảng của Amazon DynamoDB

Dịch vụ tính toán để chạy mã và sẽ trả về các yêu cầu HTTP sử dụng Amazon API Gateway hoặc API dùng đến AWS SDKs

AWS Lambda sẽ chạy mã mà bạn tải trên môi trường có tính sẵn sàng cao và vận hành với quyền cao nhất đối với các tài nguyên tính toán, bao gồm server và hệ điều hành Những gì bạn cần làm là chắc chắn mã thuộc một trong những ngôn ngữ

mà AWS Lambda đang hỗ trợ: Node.js, Java, Python

AWS Lambda chỉ thực hiện mã của bạn chỉ khi cần thiết, và được mở rộng một cách tự động, từ một vài yêu cầu đến hàng ngàn yêu cầu/ giây Với khả năng

đó, bạn có thể sử dụng Lambda dễ dàng để xây dựng dữ liệu cho các dịch vụ AWS S3 và Amazon DynamoDB, luồng xử lý dữ liệu trong Amazon Kinesis hoặc tạo back end riêng mà AWS thực hiện có quy mô, năng suất và bảo mật

Khi nào chúng ta nên dùng AWS Lambda?

AWS Lambda là nền tảng tính toán lý tưởng cho nhiều kịch bản ứng dụng, cung cấp cho bạn môi trường ở những ngôn ngữ đang được hỗ trợ từ AWS ( Java, Node.js, Python )

Khi sử dụng AWS Lambda, bạn cần chắc chắn về phần mã của mình, phần việc còn lại bao gồm quản lý cân bằng bộ nhớ, CPU, mạng và các tài nguyên khác

sẽ do AWS Lambda đảm nhiệm Nó khá linh hoạt, có thể thực hiện và hoạt động các công việc với quyền cao nhất của mình, bao gồm lập dự phòng và hiệu năng, theo dõi các tài nguyên, bảo mật, deploy mã Tuy nhiên, điều đó đồng nghĩa với

Trang 33

Lambda hoạt động ra sao?

Các thành phần chính: Lambda Function và Event Source

Lambda function và Event Source là những thành phần chính trong khi bạn làm việc với AWS Lambda

Event Source đưa ra các sự kiện, và một Lambda function tùy biến mã theo những gì bạn viết và xử lý các sự kiện một cách tự động, mỗi thay đổi của Event sẽ kích hoạt Lambda function tương ứng của bạn, bạn có thể gọi Lambda function điều hướng đến HTPS hoặc sử dụng AWS SDKs

Lambda function: bạn tải mã hoàn chỉnh của mình lên Lambda, khi đó chúng

ta gọi nó là function của Lambda, và Lambda function có quan hệ phụ thuộc với cấu hình mà bạn đã cài đặt, nói cách khác, bạn phải cài đặt trước tài nguyên cho function đó, và tất nhiên, cài đặt này có thể chỉnh sửa được

Tính toán tài nguyên cho hệ thống là con số ước lượng mà bạn đưa ra mà function của mình cần dùng Bạn chỉ cần tính toán về bộ nhớ, hệ thống sẽ tự tính toán ra CPU cho bạn

1.4.2.2.5 Amazon EMR

Amazon Elastic MapReduce (Amazon EMR) là một dịch vụ web mà giúp xử

lý lượng dữ liệu lớn một cách dễ dàng, nhanh chóng và tiết kiệm chi phí

Amazon EMR giúp đơn giản hoá xử lý dữ liệu lớn, sử dụng Apache Hadoop

- một framework mã nguồn mở, giúp phân phối và xử lý dễ dàng, nhanh chóng, và hiệu quả một lượng lớn dữ liệu trên Amazon EC2 instances Hay cũng có thể các

Trang 34

24

framework phổ biến khác được phân phối như Apache Spark và Presto ở Amazon EMR, và tương tác với dữ liệu trong AWS store như Amazon S3 và Amazon DynamoDB

Amazon EMR bảo mật và đáng tin cậy xử lý các trường hợp sử dụng dữ liệu lớn của bạn, bao gồm phân tích log, lập chỉ mục web, lưu trữ dữ liệu, máy học, phân tích tài chính, mô phỏng khoa học, và tin học hóa

Các tính năng và lợi ích:

Dễ sử dụng

Chúng ta chỉ mất vài phút để khởi động một cụm Amazon EMR Không cần phải lo lắng về nút dự phòng, cài đặt cluster, cấu hình Hadoop, hoặc cụm điều chỉnh Amazon EMR sẽ chăm sóc các công việc này, do đó có thể tập trung vào phân tích

Chi phí thấp

Giá sử dung Amazon EMR là hợp lý và có thể dự toán: Chỉ phải trả một phí theo giờ cho mỗi giờ sử dụng Chúng ta có thể khởi động một cụm 10 nút Hadoop với $0,15 cho mỗi giờ Bởi vì Amazon EMR có hỗ trợ cho Amazon EC2 Spot và Instances Reserved, bạn cũng có thể tiết kiệm 50-80% chi phí đối với các trường hợp cơ bản

Mềm dẻo

Với Amazon EMR, bạn có thể cung cấp một, hàng trăm, hay hàng ngàn trường hợp tính toán để xử lý dữ liệu ở mọi quy mô Bạn có thể dễ dàng tăng hoặc giảm số lượng các trường hợp và bạn chỉ phải trả cho những gì bạn sử dụng

Đáng tin cậy

Chúng ta có thể dành ít thời gian điều chỉnh và giám sát các cluster của mình Amazon EMR đã điều chỉnh Hadoop cho các đám mây, cũng như màn hình cluster của bạn – thử lại công việc không thành công và tự động thay thế các trường hợp hoạt động kém

Bảo mật

Trang 35

25

Amazon EMR tự động cấu hình Amazon EC2 thiết lập tường lửa kiểm soát truy cập mạng với các trường hợp, và bạn có thể khởi động các cụm trong một Amazon Virtual Private Cloud (VPC), một mạng lưới hợp lý cô lập xác định Đối với các đối tượng được lưu trữ trong Amazon S3, bạn có thể sử dụng Amazon S3

mã hóa server-side hoặc Amazon S3 mã hóa client-side với EMRFS, AWS Key Management Service hoặc khách hàng quản lý

Linh hoạt

Chúng ta có thể hoàn toàn kiểm soát cluster của mình Có quyền truy cập root để mọi trường hợp, có thể dễ dàng cài đặt thêm các ứng dụng, và có thể tùy chỉnh tất cả các cluster Amazon EMR cũng hỗ trợ nhiều bản phân phối Hadoop và các ứng dụng

1.4.2.2.6 Amazon Machine Learning

Amazon Machine Learning là một dịch vụ mà làm dễ dàng cho các nhà phát triển của tất cả các cấp độ kỹ năng sử dụng công nghệ học máy Amazon Machine Learning cung cấp công cụ trực quan và trình hướng dẫn bạn thông qua quá trình tạo học máy (ML) kiểu mô hình mà không cần phải tìm hiểu các thuật toán học máy

và công nghệ phức tạp Khi mô hình của bạn đã sẵn sàng, Amazon Machine Learning làm cho nó dễ dàng để có được những dự đoán cho ứng dụng của bạn sử dụng các API đơn giản

Amazon Machine Learning dựa trên chứng minh, khả năng mở rộng, công nghệ ML sử dụng trong nhiều năm bởi cộng đồng khoa học dữ liệu nội bộ của Amazon Dịch vụ này sử dụng các thuật toán mạnh mẽ để tạo ra mô hình ML bằng cách tìm các mẫu trong dữ liệu hiện có của bạn Sau đó, Amazon Machine Learning

sử dụng các mô hình để xử lý dữ liệu mới và tạo ra những dự đoán cho ứng dụng của bạn

Amazon Machine Learning là khả năng mở rộng và có thể tạo ra hàng tỷ dự báo hàng ngày và phục vụ những dự đoán trong thời gian thực Với Amazon Machine Learning, không có phần cứng hoặc phần mềm đầu tư trả trước, và bạn

Trang 36

dữ liệu sử dụng công nghệ lưu trữ dạng cột trong khi dạng hàng ngang hoặc phân tán sắp xếp các truy vấn trên nhiều nút Như một dịch vụ quản lý, sự tự động hóa được cung cấp hầu hết cho các nhiệm vụ hành chính thông thường liên quan tới trích lập, cấu hính, giám sát, sao lưu, và bảo mật một kho giữ liệu Điều này đã khiến cho giá cả sử dụng dịch vụ không hề đắt đỏ cũng như khi suy trì sử dụng dịch

vụ Sự tự động hóa cho phép người dùng xây dựng một kho dữ liệu quy mô nhiều petabyte chỉ trong vài phút, trong khi những dịch vụ truyền thống phải mất thời gian dài có khi cả tháng mới có thể hoàn thành

Đối với các giám đốc kỹ thuật: Hadoop là một bộ phần mềm nguồn mở để khai phá Big Data có cấu trúc và không có cấu trúc về công ty của bạn Nó tích hợp với hệ sinh thái Business Intelligence của bạn

Đối với nhân viên pháp lý: Hadoop là một bộ phần mềm nguồn mở được nhiều nhà cung cấp đóng gói và hỗ trợ

Trang 37

27

Đối với các kỹ sư: Hadoop là một môi trường song song thực thi map-reduce dựa trên Java, không chia sẻ gì cả Hãy nghĩ đến hàng trăm, hàng ngàn máy tính đang làm việc để giải quyết cùng một vấn đề, có khả năng khôi phục lỗi dựng sẵn Các dự án trong hệ sinh thái Hadoop cung cấp khả năng load (tải) dữ liệu, hỗ trợ

Đối với chuyên gia bảo mật: Hadoop là một bộ phần mềm bảo mật-Kerberos

Chúng ta sẽ tiếp tục nghiên cứu chi tiết Hadoop ở chương 2

Kết luận chương 1

Cùng với sự bùng nổ của công nghệ số, Big Data đã và đang trở thành

xu thế công nghệ mới mà các doanh nghiệp cần nắm bắt để phát triển

Nội dung của chương làm rõ định nghĩa Big data, các đặc trưng của Big Data và hiện trạng ứng dụng khai thác xử lý Big data trên thế giới và Việt Nam Giới thiệu tổng quan về 3 giải pháp Big data trên thế giới và các đặc điểm cùng với các trường hợp sử dụng Từ đó đề xuất sử dụng công nghệ Apache Hadoop để xây dựng module xử lý số liệu kinh doanh của Viettel

Nội dung của chương sau sẽ đi sâu vào tìm hiểu công nghệ Apache Hadoop

Trang 38

28

CÔNG NGHỆ APACHE HADOOP

Giới thiệu về Hadoop

Apache Hadoop được Doug Cutting, người viết hadoop, đặt tên theo tên con voi đồ chơi của con ông ta, đã nhận được sự ủng hộ và ứng dụng của Yahoo, Google, IBM…Hadoop có thể chạy các ứng dụng với lượng dữ liệu lớn một cách nhanh chóng, chính xác, hiệu quả cao bằng cách lưu và tính toán dữ liệu trên nhiều node một cách độc lập Hadoop có 2 thành phần chủ yếu là HDFS (Hadoop Distributed File System) và MapReduce [4]

Apache Hadoop định nghĩa: Apache Hadoop là một framework dùng để chạy những ứng dụng trên 1 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

hư hỏng về phần cứng của các node [2]

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 đượ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)

Vậy ta có thể kết luận như sau:

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 HDFS che giấu tất cả các

Trang 39

5) Hadoop là Linux-based Tức Hadoop chỉ chạy trên môi trường Linux Mục đích: Mong muốn của các doanh nghiệp là tận dụng lượng dữ liệu khổng lồ để đưa ra quyết định kinh doanh, Hadoop giúp các công ty xử lý khối lượng cỡ terabyte và thậm chí là petabytes dữ liệu phức tạp tương đối hiệu quả với chi phí thấp hơn

Các doanh nghiệp đang nỗ lực tìm kiếm thông tin quý giá từ khối lượng lớn

dữ liệu phi cấu trúc được tạo ra bởi các weblog, công cụ clickstream, các sản phẩm truyền thông xã hội Chính yếu tố đó làm tăng sự quan tâm đến công nghệ mã nguồn mở Hadoop

Hadoop, một dự án phần mềm quản lý dữ liệu Apache với nhân trong khung phần mềm MapReduce của Google, được thiết kế để hỗ trợ các ứng dụng sử dụng được số lượng lớn dữ liệu cấu trúc và phi cấu trúc Hadoop là một hệ thống lưu trữ,

xử lý dữ liệu song song và phân tán Được Google phát triển từ năm 2002.Năm

2009, Hadoop đã giành chiến thắng khi sắp xếp 1 terabyte (=1000GB) dữ liệu trong vòng 209s, phá kỷ lục trước đó là 297s

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 dữ liệu và dữ liệu nguồn Công nghệ HDFS của Hadoop được cho phép khối lượng lớn công việc được chia thành các khối dữ liệu nhỏ hơn được nhân rộng và phân phối trên các phần cứng của một cluster để xử lý nhanh hơn Công nghệ này đã được sử dụng rộng rãi bởi một số trang web lớn nhất thế giới chẳng hạn như Facebook, eBay, Amazon, Baidu, và Yahoo.Trong đó Yahoo là một trong những nhà đóng góp lớn nhất đối với Hadoop

Trang 40

30

Hình 2.1 Mô hình Hadoop lưu trữ dữ liệu phân tán trên hệ thống Hadoop

Distributed File System (HDFS)[4]

Hình 2.2 Mô hình Hadoop xử lý dữ liệu song song và phân tán trên các nút [4]

Một số thuật ngữ:

MapReduce Job là một đơn vị của công việc mà khách hàng (client) muốn được thực hiện: nó bao gồm dữ liệu đầu vào, chương trình MapReduce, và thông tin cấu hình Hadoop chạy các công việc (job) này bằng cách chia nó thành các nhiệm

Ngày đăng: 02/12/2016, 04:11

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Tập san tin học quản lý Tập 03, số 1&2, 2014, 53-73 (2014). Bigdata bức tranh toàn cảnh, Khoa Hệ Thống Thông Tin Kinh Doanh – ĐH Kinh Tế HCM.Tài liệu Tiếng Anh Sách, tạp chí
Tiêu đề: Bigdata bức tranh toàn cảnh
Tác giả: Tập san tin học quản lý Tập 03, số 1&2, 2014, 53-73
Năm: 2014
[2] O'Reilly Media Team (2012), Big Data Now (2012 Edition), O'Reilly Media Sách, tạp chí
Tiêu đề: Big Data Now
Tác giả: O'Reilly Media Team
Năm: 2012
[3] Mike Barlow (2013), Real-Time Big Data Analytics (2013 Edition), O'Reilly Media Sách, tạp chí
Tiêu đề: Real-Time Big Data Analytics
Tác giả: Mike Barlow
Năm: 2013
[4] Tom White (2012), Hadoop: The Definitive Guide, 3rd Edition (2012 Edition), O'Reilly Media Sách, tạp chí
Tiêu đề: Hadoop: The Definitive Guide, 3rd Edition
Tác giả: Tom White
Năm: 2012
[5] Alex Holmes (2012), Hadoop in Practice (2012 Edition), Manning Sách, tạp chí
Tiêu đề: Hadoop in Practice
Tác giả: Alex Holmes
Năm: 2012

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w