• Không có kết quả nào được tìm thấy

Áp dụng các kỹ thuật trong Big data vào lưu trữ dữ liệu

Protected

Academic year: 2022

Chia sẻ "Áp dụng các kỹ thuật trong Big data vào lưu trữ dữ liệu"

Copied!
96
0
0

Loading.... (view fulltext now)

Văn bản

(1)

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

TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG ---o0o---

ĐỒ ÁN TỐT NGHIỆP

NGÀNH CÔNG NGHỆ THÔNG TIN

HẢI PHÒNG 2016

(2)

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

TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG

---o0o---

ÁP DỤNG CÁC KỸ THUẬT TRONG BIG DATA VÀO LƯU TRỮ DỮ LIỆU

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Thông Tin

HẢI PHÒNG - 2016

(3)

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

TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG

---o0o---

ÁP DỤNG CÁC KỸ THUẬT TRONG BIG DATA VÀO LƯU TRỮ DỮ LIỆU

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công Nghệ Thông Tin

Sinh viên thực hiện: Nguyễn Chí Thanh Giáo viên hướng dẫn: Nguyễn Trịnh Đông Mã số sinh viên: 1212101002

HẢI PHÒNG - 2016

(4)

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

TRƯỜNG ĐẠI HỌC DÂN LẬP HẢI PHÒNG CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh phúc

---o0o---

NHIỆM VỤ THIẾT KẾ TỐT NGHIỆP

Sinh viên: Nguyễn Chí Thanh Mã sinh viên: 1212101002

Lớp: CT1601 Ngành: Công Nghệ Thông Tin

Tên đề tài: Áp dụng các kỹ thuật trong Big data vào lưu trữ dữ liệu

(5)

NHIỆM VỤ ĐỀ TÀI

1. Nội dung và các yêu cầu cần giải quyết trong nhiệm vụ đề tài tốt nghiệp a. Nội dung:

- Tìm hiều về các thành phần công nghệ và quản lý Big data.

- Tìm hiểu mô hình xử lý dữ liệu phân tán MapReduce.

- Tìm hiểu hệ thống Hadoop.

- Đề ra phương pháp xây dựng hệ thống.

- Thử nghiệm với các công cụ để giải quyết bài toán.

b. Các yêu cầu cần giải quyết

- Nắm được các thành phần công nghệ Big data.

- Nắm được nguyên lý hoạt động mô hình Map Reduece.

- Nắm được quy trình hoạt động cơ bản của hệ thống Hadoop.

- Áp dụng kiến thức trong xây dựng phần mềm thử nghiệm.

2. Các số liệu cần thiết để thiết kế, tính toán

3. Địa điểm thực tập

(6)

CÁN BỘ HƯỚNG DẪN ĐỀ TÀI ĐỀ TÀI TỐT NGHIỆP Người hướng dẫn thứ nhất:

Họ và tên: Nguyễn Trịnh Đông Học hàm, học vị: Thạc sĩ

Cơ quan công tác: Trường Đại học Dân lập Hải Phòng Nội dung hướng dẫn:

- Tìm hiều về các thành phần công nghệ và quản lý Big data.

- Tìm hiểu mô hình xử lý dữ liệu phân tán MapReduce.

- Tìm hiểu hệ thống Hadoop.

- Đề ra phương pháp xây dựng hệ thống.

- Thử nghiệm với các công cụ để giải quyết bài toán.

Đề tài tốt nghiệp được giao ngày 03 tháng 10 năm 2016 Yêu cầu phải hoàn thành trước ngày 30 tháng 12 năm 2016

Đã nhận nhiệm vụ: Đ.T.T.N Sinh viên

Đã nhận nhiệm vụ: Đ.T.T.N Cán bộ hướng dẫn Đ.T.T.N

Hải Phòng, ngày tháng năm 2016 HIỆU TRƯỞNG

GS.TS.NGƯT Trần Hữu Nghị

(7)

PHẦN NHẬN XÉT TÓM TẮT CỦA CÁN BỘ HƯỚNG DẪN 1. Tinh thần thái độ của sinh viên trong quá trình làm đề tài tốt nghiệp:

...

...

...

...

...

...

...

...

2. Đánh giá chất lượng của đề tài tốt nghiệp (so với nội dung yêu cầu đã đề ra trong nhiệm vụ đề tài tốt nghiệp)

...

...

...

...

...

...

...

...

3. Cho điểm của cán bộ hướng dẫn (Điểm ghi bằng số và chữ)

...

...

Ngày tháng năm 2016 Cán bộ hướng dẫn chính

(Ký, ghi rõ họ tên)

(8)

PHẦN NHẬN XÉT ĐÁNH GIÁ CỦA CÁN BỘ CHẤM PHẢN BIỆN ĐỀ TÀI TỐT NGHIỆP

1. Đánh giá chất lượng đề tài tốt nghiệp (về các mặt như cơ sở lý luận, thuyết minh chương trình, giá trị thực tế,…)

2. Cho điểm của cán bộ phản biện (Điểm ghi bằng số và chữ)

...

...

Ngày tháng năm 2016 Cán bộ chấm phản biện

(Ký, ghi rõ họ tên)

(9)

1

LỜI CẢM ƠN

Qua thời gian học tập và nghiên cứu tại trường Đại học Dân lập Hải Phòng, đầu tiên em xin chân thành cảm ơn sâu sắc tới thầy giáo GS.TS NGƯT Trần Hữu Nghị hiệu trưởng nhà trường là người đã tạo điều kiện về cơ sở vật chất trang thiết bị giúp chúng em học tập và nghiên cứu trong thời gian qua.

Em xin chân thành cảm ơn tới tất cả thầy giáo, cô giáo trong nhà trường.Em xin chân thành cảm ơn các thầy giáo cô giáo trong Bộ môn Tin học trực tiếp giảng dạy cho em những kiến thức bổ ích.

Đặc biệt em xin chân thành cảm ơn thầy giáo Nguyễn Trịnh Đông trong thời gian làm tốt nghiệp vừa qua, thầy đã giành nhiều thời gian và tâm huyết để hướng dẫn em thực hiện đề tài này.

Dưới đây là kết quả của quá trình tìm hiểu và nghiên cứu mà em đã đạt được trong thời gian vừa qua. Mặc dù rất cố gắng và được thầy cô giúp đỡ nhưng do hiểu biết và kinh nghiệm của mình còn hạn chế nên có thể đây chưa phải là kết quả mà thầy cô mong đợi từ em. Em rất mong nhận được những lời nhận xét và đóng góp quý báu của thầy cô để bài luận văn của em được hoàn thiện hơn cũng như cho em thêm nhiều kinh nghiệm cho công việc sau này.

Em xin chân thành cảm ơn!

Hải Phòng, tháng 12 năm 2016 Sinh viên thực hiện

Nguyễn Chí Thanh

(10)

2

MỤC LỤC

MỤC LỤC ... 2

DANH MỤC HÌNH ... 4

DANH MỤC BẢNG ... 5

DANH MỤC TỪ VIÊT TẮT ... 6

LỜI MỞ ĐẦU ... 7

CHƯƠNG 1: CÔNG NGHỆ QUẢN LÝ DỮ LIỆU LỚN ... 9

1.1 Công nghệ nền tảng áp dụng cho Big data ... 9

1.1.1 Tìm hiểu các thành phần công nghệ Big data ... 9

1.1.2 Ảo hóa và hỗ trợ tính toán phân tán ... 16

1.1.3 Kiểm tra đám mây và Big data ... 24

1.2 Quản lý dữ liệu lớn... 36

1.2.1 Cơ sở dữ liệu hoạt động ... 36

1.2.2 Thiết bị và kho dữ liệu lớn ... 49

CHƯƠNG 2: XÂY DỰNG KHO DỮ LIỆU VĂN BẢN ... 51

2.1 Khám phá dữ liệu phi cấu trúc ... 51

2.2 Tìm hiểu về phân tích văn bản ... 52

2.3 Phân tích và kỹ thuật khai thác ... 54

2.3.1 Tìm hiểu thu thập thông tin ... 56

2.3.2 Nguyên tắc phân loại ... 57

2.4 Đưa kết quả cùng với dữ liệu có cấu trúc ... 57

2.5 Đưa dữ liệu lớn sử dụng ... 58

2.6 Công cụ phân tích văn bản cho Big data ... 60

2.6.1 Attensity ... 60

2.6.2 Clarabridge ... 60

2.6.3 IBM ... 61

2.6.4 OpenText ... 61

2.6.5 SAS ... 62

(11)

3

CHƯƠNG 3: HADOOP VÀ THỰC NGHIỆM ... 63

3.1 Giới thiệu hệ thống Hadoop ... 63

3.1.1 Mô hình xử lý dữ liệu phân tán Mapreduce ... 63

3.1.2 Hadoop – nền tảng lập trình theo mô hình Mapreduce ... 66

3.1.3 Xây dựng một chương trình chạy trên nền Hadoop ... 73

3.2 Thực nghiệm ... 76

3.2.1 Hướng dẫn cài đặt Hadoop cluster ... 76

3.2.2 Khởi động hệ thống... 80

KẾT LUẬN ... 87

TÀI LIỆU THAM KHẢO ... 88

(12)

4

DANH MỤC HÌNH

Hình 2-1: Mẫu hồ sơ cuộc gọi ... 52

Hình 3-1: Mô hình tổng quát của Mapreduce ... 63

Hình 3-2: Quá trình Split ... 64

Hình 3-3: Quá trình Mapper và Shuffle trên một máy ... 64

Hình 3-4: Quá trình Reduce ... 65

Hình 3-5: Các thành phần của Hadoop cluster ... 67

Hình 3-6: Cơ chế hoạt động của JobTracker và TaskTracker trong Hadoop .... 68

Hình 3-7: Kiến trúc Master/Slave của hệ thống tập tin phân tán Hadoop ... 70

Hình 3-8: Nhân bản block trong HDFS ... 71

Hình 3-9: Quá trình đọc dữ liệu trên HDFS ... 72

Hình 3-10: Quy trình ghi dữ liệu trên HDFS theo cơ chế ống dẫn ... 72

Hình 3-11: Quá trình hoạt động của một tác vụ MapReduce trên Hadoop ... 76

Hình 3-12: Đăng nhập vào tài khoản người dùng hduser ... 80

Hình 3-13: Khởi động Hadoop ... 80

Hình 3-14: Kiểm tra Hadoop ... 81

Hình 3-15: Trang quản lý Hadoop All Aplications ... 82

Hình 3-16: Trang quản lý Hadoop Namenode ... 82

Hình 3-17: Trang quản lý Hadoop SecondaryNamenode ... 83

Hình 3-18: Trang quản lý Hadoop Directory ... 83

Hình 3-19: Tắt Hadoop ... 84

Hình 3-20: Tạo thư mục vidu ... 84

Hình 3-21: Thêm file văn bản vào trong thư mục vidu ... 85

Hình 3-22: Thư mục vidu và file vanban.txt được tạo ... 85

Hình 3-23: Copy thư mục vidu vào hdfs ... 86

(13)

5

DANH MỤC BẢNG

Bảng 2-1: Chuyển văn bản phi cấu trúc thành dữ liệu có cấu trúc ... 53 Bảng 2-2: Truy vấn, khai thác dữ liệu, tìm kiếm và phân tích văn bản ... 54 Bảng 2-3: Kết hợp dữ liệu có cấu trúc và dữ liệu không có cấu trúc ... 58

(14)

6

DANH MỤC TỪ VIÊT TẮT

Từ viết tắt Từ đầy đủ Diễn giải

API Application Programming Interfaces Giao diện lập trình ứng dụng

XML Extensible Markup Language Ngôn ngữ đánh dấu mở rộng

SQL Structured Query Language Ngôn ngữ truy vấn có cấu trúc

HDFS Hadoop Distributed File System Hệ thống phân tán tập tin của Hadoop

SaaS Software as a Service Triển khai phần mềm

nhƣ là một dịch vụ

IaaS Infrastructure as a Service Triển khai cơ sở hạ tầng nhƣ là một dịch vụ

PaaS Platform as a Service Triển khai nền tảng nhƣ là một dịch vụ

DaaS Data as a Service Triển khai dữ liệu nhƣ là

một dịch vụ RDBMS Relational Database Management

System

Hệ thống quản lý cơ sở dữ liệu quan hệ

KVP Key-Value pair Cặp khóa – giá trị

(15)

7

LỜI MỞ ĐẦU

Sự phát triển của xã hội dẫn đến bùng nổ dữ liệu trong những thập niên gần đây. Những sản phẩm công nghệ mới đem lại nhiều tiện ích trong cuộc sống, được ứng dụng ở nhiều lĩnh vực thông tin truyền thông. Hệ thống thông tin điện tử, trực tuyến, các website của những doanh nghiệp tổ chức được phát triển mạnh mẽ góp phần tăng cường mối quan hệ, hợp tác ở nhiều lĩnh vực như văn hóa xã hội, khoa học công nghệ, y tế, giáo dục, giải trí… Con người có trong tay nhiều công cụ để chia sẻ thông tin qua blog, website, diễn đàn, các mạng xã hội trực tuyến như Facebook, Twitter, Youtube…Cách đây không lâu, vào năm 2000, chỉ mới có một phần tư lượng thông tin lưu trữ ở dạng kỹ thuật số trên thế giới. Ba phần tư còn lại được lưu trữ trên giấy tờ, phim, và các phương tiện analog khác. Nhưng do lượng dữ liệu kỹ thuật số bùng nổ quá nhanh – cứ 3 năm lại tăng gấp đôi – cục diện trên nhanh chóng đảo ngược. Ngày nay, chỉ dưới 2%

tổng lượng thông tin chưa được chuyển sang lưu trữ ở dạng kỹ thuật số.

Tuy nhiên những phương thức lưu trữ dữ liệu đã bộc lộ rất nhiều hạn chế.

Ngày nay khối lượng dữ liệu vô cùng lớn, kích cỡ lên đến hàng trăm terabyte cho đến petabyte chỉ cho một tập hợp dữ liệu. Cùng với đó khi mà hơn 80% dữ liệu sinh ra là phi cấu trúc (tài liệu, blog, hình ảnh, video, bài hát, dữ liệu cảm biến, thiết bị chăm sóc sức khỏe…) thì những phương pháp lưu trữ dữ liệu truyền thống không thể đảm đương được. Những phương pháp đó không cho phép liên kết và phân tích nhiều dạng dữ liệu khác nhau. Khối lượng dữ liệu gia tăng nhanh nhưng tốc độ xử lý dữ liệu (thu nhận, xử lý, đáp trả) mất rất nhiều thời gian trong khi nhu cầu của con người muốn xử lý được ngay dữ liệu tức thời (tính đến bằng mili giây). Điều đó thúc đẩy con người tạo ra một phương pháp và quản lý dữ liệu khác phù hợp hơn.

Và Big data ra đời đã đánh dấu một trang mới trong lịch sử phát triển công nghệ. Big data là một hệ thống dữ liệu liệu vô cùng lớn, đến mức không thể lưu trữ trong các hệ thống cơ sở dữ liệu truyền thống. Sự phức tạp và không thể định hình thành một thể thống nhất của dữ liệu Big data cũng là một nhân tố làm nó trở nên khó đồng bộ để lưu trữ trong một hệ thống cơ sở dữ liệu truyền thống.

Dữ liệu được thu thập từ nhiều nguồn khác nhau bao gồm: dữ liệu không giới hạn từ internet, web 2.0, từ các thiết bị nghiên cứu (dữ liệu thiên văn, dịch vụ y tế…), dữ liệu từ các thiết bị thông minh (hay còn gọi là smart device). Do đó nó mang cấu trúc không cố định.Big data đã thể hiện được sức mạnh và tầm ảnh hưởng đến mọi lĩnh vực trong xã hội.

(16)

8

Trong đề tài này em sẽ trình bày về công nghệ quản lý Big data, mô hình xử lý dữ liệu phân tán Mapreduce và hệ thống Hadoop.

(17)

9

CHƯƠNG 1: CÔNG NGHỆ QUẢN LÝ DỮ LIỆU LỚN

1.1 Công nghệ nền tảng áp dụng cho Big data 1.1.1 Tìm hiểu các thành phần công nghệ Big data

Big data có số lượng dữ liệu lưu trữ rất lớn và thường lưu trữ các dòng dữ liệu có kiểu khác nhau ở tốc độ cao. Nhiều kĩ sư phần mềm dầy dặn kinh nghiệm và các nhà phát triển biết cách để nhắm đến một thậm chí là hai tình huống này hoàn toàn dễ dàng. Ví dụ, nếu bạn phải đối mặt dữ liệu lớn cần giải quyết cùng với yêu cầu khả năng chịu lỗi, bạn có thể lựa chọn triển khai cụm cơ sở dữ liệu dư thừa trong trung tâm cơ sở dữ liệu với cơ sở hạ tầng mạng rất nhanh. Tương tự, nếu yêu cầu là kết hợp nhiều loại dữ liệu khác nhau từ sự hiểu biết và các nguồn thông tin ẩn danh, lựa chọn có thể là xây dựng một mô hình di chuyển kho dữ liệu theo yêu cầu của khách hàng.

Tuy nhiên bạn có thể không có không đủ điều kiện để triển khai cụ thể. Khi bạn rời khỏi nơi mình có quyền điều khiển và kiểm soát dữ liệu chặt chẽ, bạn cần tạo ra một mô hình kiến trúc để nhắm đến loại môi trường lai. Môi trường mới này đòi hỏi kiến trúc này phải hiểu về tính chất của Big data và yêu cầu để đưa kiến thức vào giải pháp kinh doanh. Trong chương này chúng ta sẽ tìm hiểu về kiến trúc liên quan đến dữ liệu lớn.

1.1.1.1 Sự dư thừa cơ sở hạ tầng vật lý

Ở cấp thấp nhất là cơ sở hạ tầng vật lý như phần cứng, mạng, ... Công ty của bạn có thể đã có trung tâm dữ liệu hoặc được đầu tư cơ sở vật chất nên bạn muốn tìm một cách để sử dụng dữ liệu hiện hữu. Thi hành dữ liệu lớn có yêu cầu rất cụ thể trên tất cả các phần tử trong kiến trúc tham khảo, vì thế bạn cần kiểm tra những yêu cầu này về nền tảng cơ sở lớp – lớp để đảm bảo sẽ thực hiện và nâng cấp theo đúng yêu cầu của công ty. Điều quan trọng là phải thực hiện theo đúng nguyên tắc. Mức độ ưu tiên theo danh sách nguyên tắc này bao gồm:

- Performance (Hiệu năng): Thực thi thường được tiến hành nối đuôi nhau dựa trên một giao dịch hay một câu hỏi có yêu cầu ở tốc độ rất nhanh (hiệu suất cao), do vậy chi phí cho cơ sở hạ tầng thường rất tốn kém.

(18)

10

- Availability (Tính sẵn có): Bạn có cần đảm bảo thời gian dịch vụ 100%?

Công ty của bạn có thể chờ được bao lâu trong trường hợp dịch vụ gián đoạn hoặc không đạt yêu cầu? Cơ sở hạ tầng đảm bảo tính sẵn sàng cao cũng rất tốn kém.

- Scalability (Khả năng mở rộng): Cơ sở hạ tầng của bạn cần được mở rộng như thế nào? Dung lượng đĩa cần bao nhiêu để đảm bao yêu cầu trong thời điểm hiện tại và tương lai?

- Flexibility (Linh hoạt): Bạn thêm tài nguyên vào cơ sở hạ tầng sớm nhất là khi nào? Cơ sở hạ tầng khôi phục sau thất bại nhanh mức nào? Cơ sở hạ tầng đạt mức linh hoạt nhất rất tốn kém nhưng có thể kiểm soát bằng dịch vụ điện toán đám mây, nơi bạn chỉ trả tiền cho những gì bạn thực sự sử dụng.

- Cost (Chi phí): Bạn có thể đủ khả năng chi trả cho cái gì? Bởi cơ sở hạ tầng là tập hợp của rất nhiều thành phần, bạn có thể mua hệ thống mạng tốt nhất và tiết kiệm tiền cho việc lưu trữ hoặc ngược lại. Bạn cần lập yêu cầu đối với mỗi lĩnh vực trong hoàn cảnh ngân sách cụ thể và chi trả cho những nơi cần thiết.

Big data hoàn toàn tập trung vào tốc độ xử lý cao, khả năng lưu trữ dữ liệu lớn và đa dạng nên cơ sở vật chất theo nghĩa đen sẽ quyết định đến sự thành bại của việc thực hiện. Hầu hết việc thực thi Big data cần ở mức độ sẵn sàng cao nên mạng, server và bộ lưu trữ phải vừa có thể thay đổi (mở rộng, thu hẹp), vừa phải tránh dư thừa. Khả năng thay đổi và dư thừa có mối quan hệ với nhau. Về bản chất luôn có lý do khiến cho ngay cả hệ thống mạng tốt nhất cũng có thể bị lỗi như là một trục trặc phần cứng. Do đó công nghệ dự phòng đảm bảo rằng trục trặc này sẽ không gây ra ngưng trệ.

a. Sự dư thừa mạng

Mạng nên dư thừa và phải có đủ khả năng thích ứng trước số lượng và tốc độ của dữ liệu ra vào trong mạng lưới giao thông trên mạng. Khi bạn bắt đầu làm về Big data, mạng là phần thiết yếu trong chiến lược tin học của bạn. Nó là cơ sở để gia tăng số lượng và vận tốc.

Những người thiết kế cơ sở hạ tầng nên lập kế hoạch cho hệ thống mạng.

Khi lưu lượng giao thông mạng thay đổi (tăng, giảm), có sự ảnh hưởng tới tài sản vật chất liên quan đến việc triển khai thực hiện. Cơ sở hạ tầng của bạn nên đưa ra khả năng giám sát giúp người điều hành có thể phản ứng khi lượng tài nguyên tăng lên dẫn đến thay đổi khối lượng công việc.

(19)

11

b. Quản lý phần cứng: Bộ lưu trữ và Server

Phần cứng (bộ lưu trữ và server) phải có đủ tốc độ và năng lực xử lý tất cả các khả năng của Big data. Đó là sử dụng một ít để có mạng tốc độ cao cùng với các server chậm bởi vì các máy chủ có thể trong tình trạng thắt nút cổ chai. Tuy nhiên một bộ lưu trữ dữ liệu nhanh và tính toán các máy chủ có thể vượt qua hiệu suất mạng. Tất nhiên, sẽ không có gì hoạt động tốt nếu hiệu suất mạng thấp và kém chất lượng.

c. Hoạt động cơ sở hạ tầng

Một thiết kế quan trọng cần quan tâm là quản lý hoạt động cơ sở hạ tầng.

Mức cao nhất về hiệu suất và tính linh hoạt chỉ xuất hiện trong một môi trường được quản lý tốt. Các nhà quản lý dữ liệu có thể dự đoán và ngăn chặn các thất bại thảm hại, như vậy giữ được sự toàn vẹn của dữ liệu và duy trì quy trình nghiệp vụ.

1.1.1.2 Cơ sở hạ tầng an ninh

An ninh và bảo mật trong Big data tương tự như các yêu cầu về môi trường dữ liệu thông thường. Các yêu cầu về an ninh phải được liên kết chặt chẽ với nhu cầu nghiệp vụ cụ thể. Một số thách thức phát sinh khi Big data trở thành một phần của chiến lược bao gồm:

- Truy cập dữ liệu: Khả năng truy cập dữ liệu của người dùng để tính toán dữ liệu lớn có cùng mức độ yêu cầu kĩ thuật như triển khai dữ liệu không lớn. Dữ liệu cần có chỉ dành cho những người có nhu cầu nghiệp vụ để kiểm tra hoặc tương tác với nó. Hầu hết các nền tảng lưu trữ dữ liệu có hệ thống an ninh nghiêm ngặt và thường được tăng cường với mộ khả năng nhận dạng hợp nhất, cung cấp truy cập thích hợp trên nhiều lớp của kiến trúc.

- Truy cập ứng dụng: Truy cập dữ liệu ứng dụng cũng tương đối đơn giản từ góc độ kĩ thuật. Hầu hết các giao diện lập trình ứng dụng (API) cung cấp bảo vệ từ việc sử dụng trái phép hoặc truy cập. Mức độ bảo vệ thích hợp nhất cho triển khai thực hiện Big data.

(20)

12

- Mã hóa dữ liệu: Mã hóa dữ liệu là thách thức lớn nhất về bảo mật trong môi trường Big data. Trong môi trường truyền thống, mã hóa và giải mã dữ liệu thực sự cần nguồn lực lớn của hệ thống. Với khối lượng, tốc độ và sự đa dạng của Big data, vấn đề này càng khó khăn hơn. Mã hóa dữ liệu là cách tốt nhất để cung cấp khả năng tính toán nhiều hơn và nhanh hơn. Tuy nhiên điều này đi kèm với một bảng giá. Do vậy cần xác định phần dữ liệu nào cần bảo mật và để mã hóa các mục cần thiết.

- Phát hiện đe dọa: Bao gồm các thiết bị di động và các mạng xã hội theo cấp số nhân tăng cả số lượng dữ liệu và các mối đe dọa an ninh. Do đó điều quan trọng là các tổ chức có cách tiếp cận vòng ngoài an ninh.

1.1.1.3 Giao diện ứng dụng và Internet

Cơ sở hạ tầng vật lý cho phép tất cả mọi thứ và cơ sở hạ tầng an ninh bảo vệ tất cả các yếu tố trong môi trường Big data. Các cấp độ tiếp theo là các giao diện mà cung cấp truy cập hai chiều cho tất cả các thành phần của Stack – từ các ứng dụng doanh nghiệp đến dữ liệu từ Internet. Một phần quan trọng của việc thiết kế các giao diện này là tạo ra một cấu trúc phù hợp có thể chia sẻ cả bên trong lẫn bên ngoài công ty cũng như các đối tác trong kinh doanh.

Trong nhiều thập kỷ, các lập tình viên đã sử dụng API để cung cấp truy cập đến và đi từ việc triển khai phần mềm. Các nhà cung cấp công cụ và công nghệ sẽ đi đến độ dài lớn để đảm bảo rằng nó là một nhiệm vụ tương đối đơn giản để tạo ra các ứng dụng mới sử dụng sản phẩm của họ. Nó cần thiết cho các chuyên gia CNTT để tạo ra tùy chỉnh hoặc các API độc quyền cho công ty. Bạn cần làm điều này cho lợi thế cạnh tranh, một số nhu cầu nghiệp vụ và đó không phải là một nhiệm vụ đơn giản. API cần được lưu trữ và duy trì để bảo toàn giá trị cho doanh nghiệp. Vì lý do này, một số công ty lựa chọn để sử dụng bộ công cụ API để có được một bước nhảy về hoạt động quan trọng này.

Bộ công cụ API có một vài ưu điểm so với các API phát triển nội bộ. Đầu tiên là bộ công cụ API là sản phẩm được tạo ra, được quản lý và duy trì bởi một bên thứ ba dộc lập. Thứ hai, chúng được thiết kế để giải quyết một yêu cầu kỹ thuật cụ thể. Nếu bạn cần các API cho ứng dụng web hoặc ứng dụng di động, có nhiều lựa chọn cho bạn bắt đầu.

(21)

13

Bởi vì thu thập dữ liệu và chuyển động có đặc điểm rất giống nhau, có thể thiết kế một bộ dịch vụ để thu thập, làm sạch, biến đổi, chuẩn hóa và lưu trữ các dữ liệu lớn trong hệ thống lưu trữ. Để tạo ra sự linh hoạt khi cần thiết, các nhà máy được điều khiển cùng với mô tả giao diện được viết bằng Extensible Markup Language (XML). Mức độ này cho phép các giao diện cụ thể được tạo ra một cách dễ dàng và nhanh chóng mà không cần phải xây dựng các dịch vụ cụ thể cho từng nguồn dữ liệu.

1.1.1.4 Cơ sở dữ liệu hoạt động

Ở lõi của môi trường Big data là những cơ sở dữ liệu chứa các phần dữ liệu liên quan đến công ty của bạn. Không có sự lựa chọn duy nhất đúng liên quan đến ngôn ngữ cơ sở dữ liệu. Mặc dù SQL là ngôn ngữ thông dụng truy vấn cơ sở dữ liệu nhưng các ngôn ngữ khác cũng có thể cung cấp một cách hiệu quả hơn.

Ví dụ nếu bạn sử dụng một mô hình quan hệ, bạn có thể sử dụng SQL để truy vấn nó. Tuy nhiên bạn có thể sử dụng ngôn ngữ khác như Python hay Java. Nó là rất quan trọng để hiểu các dạng dữ liệu có thể đang bị điều khiển bởi cơ sở dữ liệu và hỗ trợ các hành vi giao dịch đúng. Nhà thiết kế cơ sở dữ liệu mô tả hành vi này với ACID. Nó tượng trưng cho:

- Atomicity (Mức nguyên tử): Một giao dịch là “tất cả hoặc không có gì”

khi nó ở mức nguyên tử. Nếu bất cứ phần nào của giao dịch hoặc những thất bại của hệ thống ở mức cơ bản thì toàn bộ giao dịch sẽ thất bại.

- Consistency (Tính nhất quán): Chỉ những giao dịch với dữ liệu hợp lệ sẽ được thực hiện trên cơ sở dữ liệu. Nếu dữ liệu bị hỏng hoặc không phù hợp thì các giao dịch sẽ không được hoàn thành và dữ liệu sẽ không được lưu vào cơ sở dữ liệu.

- Isolation (Độc lập): Nhiều giao dịch diễn ra đồng thời sẽ không tác động vào nhau. Tất cả các giao dịch hợp lệ sẽ thực hiện cho đến khi hoàn thành và theo thứ tự chúng được gửi đến để xử lý.

- Durability (Độ bền vững): Sau khi dữ liệu từ các giao dịch được ghi vào cơ sở dữ liệu, nó sẽ nằm ở đó mãi mãi.

1.1.1.5 Tổ chức dịch vụ và công cụ dữ liệu

Tổ chức dịch vụ dữ liệu và các công cụ xác thực, lắp ráp các phần khác nhau thành phần dữ liệu lớn đưa vào bộ sưu tập theo ngữ cảnh có liên quan. Bởi vì là dữ liệu lớn nên kỹ thuật đã tiến hóa để xử lý dữ liệu hiệu quả và liên tục.

(22)

14

Tổ chức dịch vụ dữ liệu, trong thực tế là một hệ sinh thái của các công cụ và công nghệ có thể được sử dụng để thu thập và tổng hợp số liệu. Như vậy các công cụ cần tích hợp, dịch thuật, chuẩn hóa, phạm vi. Công nghệ trong lớp này bao gồm:

- Một hệ thống tập tin phân phối: cần thiết để thích ứng với sự phân tách của các luồng dữ liệu và cung cấp khả năng lưu trữ.

- Dịch vụ chuyển đổi cấu trúc: cần thiết cho việc lưu trữ dữ liệu bền vững và các cuộc gọi thủ tục đa ngôn ngữ từ xa (RPC).

- Dịch vụ điều phối: cần thiết cho việc xây dựng ứng dụng phân tán.

- Trích đoạn, biến đổi, tải (ETL): cần thiết cho việc tải và chuyển đổi cấu trúc – phi cấu trúc vào Hadoop.

- Dịch vụ tiến độ công việc: cần thiết cho việc lập kế hoạch và cung cấp một cấu trúc để đồng bộ hóa yếu tố quá trình trên lớp.

1.1.1.6 Kho dữ liệu phân tích

Các kho dữ liệu từ lâu đã được coi là các kỹ thuật chính mà các tổ chức sử dụng để tối ưu hóa dữ liệu để giúp các nhà sản xuất quyết định. Thông thường, các kho dữ liệu bình thường thu thập từ nhiều nguồn khác nhau và lắp ráp để tạo điều kiện phân tích của doanh nghiệp. Kho dữ liệu đơn giản hóa việc tạo ra các báo cáo và trực quan của các mục dữ liệu khác nhau. Chúng thường được tạo ra từ cơ sở dữ liệu quan hệ, cơ sở dữ liệu đa chiều, các tập tin phẳng, và cơ sở dữ liệu đối tượng - về cơ bản của bất kỳ kiến trúc lưu trữ. Trong một môi trường truyền thống, nơi hiệu suất có thể không phải là ưu tiên cao nhất, sự lựa chọn của các công nghệ cơ bản được điều khiển bởi các yêu cầu cho việc phân tích, báo cáo và trực quan của dữ liệu công ty.

Là một tổ chức dữ liệu và nó luôn sẵn sàng để phân tích, triển khai hầu hết kho dữ liệu được lưu giữ qua hàng loạt quá trình. Vấn đề là kho dữ có thể không đủ cho nhiều ứng dụng dữ liệu lớn. Sự căng thẳng áp đặt bởi các dòng dữ liệu tốc độ cao có khả năng đòi hỏi một cách tiếp cận thời gian thực hơn với kho dữ liệu lớn. Điều này không có nghĩa là bạn sẽ không được tạo ra và cung cấp một kho dữ liệu và phân tích một siêu kho dữ liệu với các quá trình thực thi. Thay vào đó, bạn có thể sẽ có kho dữ liệu hoặc siêu kho dữ liệu, hiệu suất và quy mô sẽ phản ánh kịp thời yêu cầu của các nhà phân tích và ra quyết định.

(23)

15

Bởi vì kho nhiều dữ liệu và siêu kho dữ liệu được bao gồm các dữ liệu thu thập từ nhiều nguồn khác nhau trong công ty, các chi phí liên quan đến việc làm sạch và bình thường hóa của dữ liệu cũng phải được giải quyết. Với dữ liệu lớn, bạn tìm thấy một số khác biệt quan trọng:

- Dòng dữ liệu truyền thống (từ giao dịch, ứng dụng, vv) có thể sản xuất rất nhiều dữ liệu khác nhau.

- Hàng chục các nguồn dữ liệu mới cũng tồn tại, một trong số chúng cần một số thao tác xử lý trước khi nó có thể được dùng cho doanh nghiệp.

- Nguồn nội dung cũng sẽ cần phải được làm sạch, và có những yêu cầu kỹ thuật khác nhau để có thể sử dụng với dữ liệu có cấu trúc.

Trong lịch sử, các nội dung của kho dữ liệu và siêu kho dữ liệu được tổ chức và giao cho các nhà lãnh đạo kinh doanh phụ trách chiến lược và quy hoạch. Với dữ liệu lớn, chúng ta đang nhìn thấy các đội được tận dụng dữ liệu cho việc ra quyết định. Nhiều triển khai dữ liệu lớn cung cấp khả năng thời gian thực, vì vậy doanh nghiệp sẽ có thể cung cấp nội dung cho phép các cá nhân với vai trò hoạt động để giải quyết các vấn đề như hỗ trợ khách hàng, cơ hội kinh doanh, và thực thi dịch vụ trong thời gian thực gần. Bằng cách này, dữ liệu lớn giúp di chuyển hành động từ các văn phòng trở lại văn phòng.

1.1.1.7 Phân tích Big data

Hiện tại công cụ phân tích kỹ thuật và sẽ rất hữu ích trong việc đưa ra ý nghĩa của dữ liệu lớn. Tuy nhiên, có một nhược điểm. Các thuật toán là một phần của những công cụ này có để có thể làm việc với một lượng lớn có khả năng thời gian thực và dữ liệu khác nhau. Các cơ sở hạ tầng sẽ cần phải được thực hiện để hỗ trợ. Các nhà cung cấp các công cụ phân tích cũng cần phải đảm bảo rằng các thuật toán của họ làm việc qua việc triển khai phân phối.

- Báo cáo và biểu đồ: Những công cụ này cung cấp một đại diện "thân thiện" của thông tin từ các nguồn khác nhau. Mặc dù là một trụ cột trong thế giới dữ liệu truyền thống, chúng vẫn đang phát triển đối với dữ liệu lớn. Một số công cụ đang được sử dụng là loại mới của cơ sở dữ liệu gọi chung là NoSQL.

(24)

16

- Hình dung: Những công cụ này là bước tiếp theo trong quá trình báo cáo. Các đầu ra có xu hướng được tương tác cao và năng động trong tự nhiên. Một khác biệt quan trọng giữa các báo cáo đầu ra và hình dung là hình ảnh động. Người dùng doanh nghiệp có thể xem các thay đổi trong các dữ liệu sử dụng một loạt các kỹ thuật hiển thị khác nhau, bao gồm bản đồ tâm trí, bản đồ nhiệt, bản đồ thông tin, và sơ đồ kết nối. Thông thường, báo cáo và hình dung xảy ra ở phần cuối của các hoạt động kinh doanh. Mặc dù các dữ liệu có thể được nhập khẩu vào một công cụ khác để tính toán thêm, kiểm tra, đây là bước cuối cùng.

- Phân tích: Những công cụ tiếp cận vào kho dữ liệu và xử lý dữ liệu cho người dùng.

1.1.1.8 Những ứng dụng của Big data

Tuỳ chỉnh và bên thứ ba ứng dụng cung cấp một phương pháp khác để chia sẻ và kiểm tra các nguồn dữ liệu lớn. Mặc dù tất cả các lớp của kiến trúc tham khảo rất quan trọng trong quyền riêng của họ, lớp này là nơi gồm hầu hết đổi mới và sáng tạo.

Giống như bất kỳ sáng kiến phát triển ứng dụng nào, việc tạo ra các ứng dụng dữ liệu lớn sẽ yêu cầu cơ cấu, tiêu chuẩn, sự chặt chẽ, và API được xác định rõ. Hầu hết các ứng dụng kinh doanh muốn tận dụng dữ liệu lớn sẽ cần phải đăng ký để API trên toàn bộ stack. Nó có thể là cần thiết để xử lý dữ liệu thô từ các cửa hàng dữ liệu cấp thấp và kết hợp các dữ liệu thô với lượng dữ liệu được tổng hợp từ các kho hàng.

Big data di chuyển nhanh chóng và thay đổi trong chớp mắt, vì vậy nhóm phát triển phần mềm cần nhanh chóng tạo ra các ứng dụng phù hợp để giải quyết những thách thức kinh doanh của thời điểm này. Các công ty có thể cần phải suy nghĩ về việc tạo phát triển nhanh chóng đáp ứng với những thay đổi trong môi trường kinh doanh bằng cách tạo và triển khai các ứng dụng theo yêu cầu. Trong thực tế, nó có thể thích hợp hơn để nghĩ về những ứng dụng như "tùy chỉnh bán"

bởi vì chúng liên quan đến lắp ráp hơn thực tế mã hóa ở mức độ thấp.

1.1.2 Ảo hóa và hỗ trợ tính toán phân tán

Ảo hóa là một công nghệ nền tảng áp dụng đối với việc thực hiện điện toán đám mây và dữ liệu lớn. Nó cung cấp cơ sở cho nhiều thuộc tính nền tảng cần thiết để truy cập, lưu trữ, phân tích và quản lý các thành phần tính toán phân tán trong môi trường dữ liệu lớn. Ảo hóa - quá trình sử dụng tài nguyên máy tính bắt chước các nguồn lực khác - được đánh giá cao vì khả năng của nó để tăng nguồn lực CNTT hiệu quả và khả năng mở rộng. Một ứng dụng chính của ảo

(25)

17

hóa là hợp nhất máy chủ, giúp các tổ chức nâng cao việc sử dụng các máy chủ vật lý và có khả năng tiết kiệm chi phí cơ sở hạ tầng. Tuy nhiên, có thể tìm thấy nhiều lợi ích của ảo hóa. Các công ty mà ban đầu chỉ tập trung vào công nghệ ảo hóa máy chủ hiện nay đang nhận ra rằng nó có thể được áp dụng trên cơ sở hạ tầng CNTT toàn bộ, bao gồm cả các phần mềm, lưu trữ và hệ thống mạng.

1.1.2.1 Tìm hiểu những vấn đề cơ bản của ảo hóa

Ảo hóa phân tách nguồn lực và dịch vụ từ các môi trường phân phối vật lý cơ bản, cho phép bạn tạo ra nhiều hệ thống ảo trong một hệ thống vật lý duy nhất. Một trong những lý do chính mà các công ty đã thực hiện ảo hóa là để cải thiện hiệu suất và hiệu quả xử lý kết hợp đa dạng của các khối lượng công việc.

Thay vì chỉ định một nhóm dành riêng cho các nguồn lực vật chất để mỗi nhóm thực hiện nhiệm vụ, một nhóm gộp tài nguyên ảo để có thể nhanh chóng phân bổ trên tất cả các khối lượng công việc. Sự phụ thuộc vào biển tài nguyên ảo cho phép các công ty cải thiện độ trễ. tăng tốc độ cung cấp dịch vụ và hiệu quả. Đây là một chức năng của bản chất phân tán của các môi trường ảo hóa và giúp cải thiện tổng thể thời gian tới giá trị.

Sử dụng một bộ phân phối các nguồn lực vật chất, chẳng hạn như máy chủ, một cách linh hoạt và hiệu quả mang lại lợi ích đáng kể trong điều kiện cần tiết kiệm chi phí và cải thiện năng suất. Việc thực hành có nhiều lợi ích, bao gồm những điều sau đây:

- Ảo hóa các nguồn lực vật chất (như máy chủ, lưu trữ, và các mạng) cho phép cải thiện đáng kể trong việc sử dụng các nguồn lực này.

- Ảo hóa cho phép cải tiến kiểm soát việc sử dụng và hiệu suất của nguồn lực CNTT.

- Ảo hóa có thể cung cấp một mức độ tự động hóa và tiêu chuẩn hóa để tối ưu hóa môi trường máy tính.

- Ảo hóa cung cấp nền tảng cho điện toán đám mây.

Mặc dù có thể sử dụng ảo hóa để bổ sung nguồn lực song ảo hóa không phải là không tốn chi phí. Tài nguyên ảo phải được quản lý để đảm bảo an toàn.

Một hình ảnh có thể là một kỹ thuật cho kẻ lạ xâm nhập truy cập trực tiếp vào trong hệ thống. Nếu công ty không có một quá trình xóa những hình ảnh không sử dụng, hệ thống sẽ không còn hoạt động hiệu quả.

(26)

18

a. Tầm quan trọng của ảo hóa dữ liệu lớn

Giải quyết thách thức Big data thường đòi hỏi việc quản lý khối lượng lớn các cửa hàng dữ liệu phân tán cao cùng với việc sử dụng các ứng dụng tính toán và dữ liệu chuyên sâu. Do đó, bạn cần một môi trường CNTT có hiệu quả cao để hỗ trợ dữ liệu lớn. Ảo hóa cung cấp mức độ gia tăng của hiệu quả để làm nền tảng dữ liệu lớn thành hiện thực. Mặc dù vậy, ảo hóa là kỹ thuật không phải là một yêu cầu để phân tích dữ liệu lớn, khung phần mềm như MapReduce, được sử dụng trong các môi trường dữ liệu lớn, có hiệu quả hơn trong một môi trường ảo hóa.

Ảo hóa có ba đặc điểm hỗ trợ khả năng mở rộng và hoạt động hiệu quả cần thiết cho môi trường dữ liệu lớn:

- Phân vùng: Trong ảo hóa, nhiều ứng dụng và hệ điều hành được hỗ trợ trong một hệ thống vật lý duy nhất bằng cách phân vùng (chia) các nguồn lực sẵn có.

- Cô lập: Mỗi máy ảo được phân tách từ hệ thống vật lý máy chủ và máy ảo khác. Nếu trong trường hợp máy ảo treo, các máy ảo khác và các hệ thống máy chủ không bị ảnh hưởng. Ngoài ra, dữ liệu không được chia sẻ giữa máy ảo và máy khác.

- Đóng gói: Một máy ảo có thể được cho là đại diện (và thậm chí lưu trữ).

Đây là một tập tin duy nhất, vì vậy bạn có thể xác định nó một cách dễ dàng dựa vào các dịch vụ mà nó cung cấp. Ví dụ, tập tin có chứa các quá trình đóng gói có thể là một dịch vụ kinh doanh hoàn chỉnh. Máy ảo đóng gói này có thể được trình bày cho một ứng dụng như một thực thể hoàn chỉnh. Vì vậy, đóng gói có thể bảo vệ mỗi ứng dụng để nó không can thiệp vào một ứng dụng khác.

Một trong những yêu cầu quan trọng nhất để thành công với dữ liệu lớn là có phải đủ năng lực thực hiện để hỗ trợ việc phân tích khối lượng lớn và đa dạng các loại dữ liệu. Khi bạn bắt đầu với môi trường nền tảng như Hadoop MapReduce và, điều quan trọng là bạn có một cơ sở hạ tầng hỗ trợ, có thể mở rộng quy mô. Ảo hóa thêm hiệu quả ở mọi lớp của cơ sở hạ tầng CNTT. Áp dụng ảo hóa trên môi trường của bạn sẽ giúp đỡ để đạt được khả năng mở rộng cần thiết để phân tích dữ liệu lớn.

(27)

19

Toàn bộ môi trường CNTT cần phải được tối ưu hóa ở mỗi lớp, từ mạng vào cơ sở dữ liệu, lưu trữ và máy chủ. Nếu bạn chỉ ảo hóa máy chủ của bạn, bạn có thể gặp vướng mắc từ các yếu tố cơ sở hạ tầng khác như lưu trữ và mạng.

Nếu bạn chỉ tập trung vào việc ảo hóa là một yếu tố của cơ sở hạ tầng của bạn, bạn ít có khả năng để đạt được độ trễ và hiệu và nhiều khả năng mất chi phí cao hơn và mắc phải những rủi ro an ninh.

Thực tế là hầu hết các tổ chức không cố gắng để ảo hóa tất cả các yếu tố của cơ sở hạ tầng của họ tại một thời gian. Nhiều tổ chức bắt đầu với ảo hóa máy chủ và đạt được một mức độ nhất định của những cải tiến hiệu quả. Các yếu tố khác có thể được ảo hóa khi cần thiết để tiếp tục cải thiện hiệu suất hệ thống tổng thể và hiệu quả. Sau đây mô tả cách ảo hóa của mỗi nguyên tố có trong môi trường CNTT - máy chủ, lưu trữ, các ứng dụng, dữ liệu, mạng, bộ vi xử lý, bộ nhớ, và các dịch vụ - có thể có một tác động tích cực trên phân tích dữ liệu lớn.

b. Ảo hóa máy chủ

Trong ảo hóa máy chủ, một máy chủ vật lý được phân chia thành nhiều máy chủ ảo. Các phần cứng và các tài nguyên của một máy - bao gồm bộ nhớ truy cập ngẫu nhiên (RAM), CPU, ổ cứng, và điều khiển mạng - có thể được ảo hóa (logic split) vào một loạt các máy ảo mà mỗi máy chạy các ứng dụng riêng của mình và hệ điều hành. Một máy ảo (VM) là một đại diện phần mềm của một máy vật lý có thể thực hiện các chức năng tương tự như các máy vật lý. Một lớp mỏng của phần mềm được đưa vào các phần cứng có chứa một màn hình máy ảo, hoặc hypervisor. Hypervisor có thể được coi như là công nghệ quản lý lưu lượng giữa các máy ảo và máy vật lý.

Ảo hóa máy chủ sử dụng hypervisor để cung cấp hiệu quả trong việc sử dụng các nguồn lực vật chất. Cài đặt, cấu hình và công việc hành chính có liên quan đến việc thiết lập các máy ảo. Điều này bao gồm quản lý giấy phép, quản lý mạng và quản lý khối lượng công việc, cũng như kế hoạch năng lực.

Máy chủ ảo hóa giúp đảm bảo rằng nền tảng có thể mở rộng khi cần thiết để xử lý khối lượng lớn và đa dạng các loại dữ liệu trong phân tích dữ liệu lớn.

Bạn không thể biết được mức độ âm lượng hoặc nhiều loại dữ liệu có cấu trúc và không có cấu trúc cần thiết trước khi bạn bắt đầu phân tích của bạn. Chính điều này làm cho nhu cầu về máy chủ ảo hóa lớn hơn, cung cấp môi trường của bạn với khả năng để đáp ứng nhu cầu bất ngờ để xử lý tập dữ liệu rất lớn.

(28)

20

Ngoài ra, máy chủ ảo hóa cung cấp nền tảng cho phép rất nhiều các dịch vụ đám mây được sử dụng như nguồn dữ liệu trong phân tích Big data. Ảo hóa làm tăng hiệu quả của các đám mây mà làm cho nhiều hệ thống phức tạp dễ dàng để tối ưu hóa hơn. Các tổ chức có hiệu quả hoạt động và tối ưu hóa để có thể truy cập dữ liệu mà trước đây hoặc là không có hoặc rất khó để thu thập. Các công ty có thể tích hợp thông tin này với các dữ liệu sản phẩm bán hàng nội bộ và để đạt được cái nhìn sâu sắc vào sở thích của khách hàng.

c. Ứng dụng ảo hóa

Ảo hóa cơ sở hạ tầng ứng dụng cung cấp một cách hiệu quả để quản lý các ứng dụng trong hoàn cảnh với nhu cầu khách hàng khác nhau. Các ứng dụng được gói gọn mà loại bỏ sự phụ thuộc của nó từ hệ thống máy tính vật lý bên dưới. Điều này giúp nâng cao khả năng quản lý tổng thể và tính di động của các ứng dụng. Ngoài ra, các ứng dụng cơ sở hạ tầng phần mềm ảo hóa thường cho phép cho việc hệ thống hóa các chính sách sử dụng kinh doanh và kỹ thuật để đảm bảo rằng mỗi ứng dụng của bạn thúc đẩy nguồn tài nguyên ảo và vật lý trong một cách dự đoán được. Hiệu quả có được là bởi vì bạn có thể dễ dàng phân phối các nguồn lực CNTT theo các giá trị kinh doanh tương đối từ các ứng dụng của bạn. Nói cách khác, các ứng dụng quan trọng nhất của bạn có thể nhận được ưu tiên hàng đầu để rút ra từ máy tính sẵn có và khả năng lưu trữ khi cần thiết.

Ảo hóa cơ sở hạ tầng ứng dụng sử dụng kết hợp với ảo hóa máy chủ có thể giúp đảm bảo rằng các thỏa thuận kinh doanh dịch vụ cấp (SLAs) được đáp ứng.

Ảo hóa máy chủ theo dõi CPU và bộ nhớ sử dụng, nhưng không tính đến sự khác biệt về ưu tiên kinh doanh khi phân bổ nguồn lực. Ví dụ, bạn có thể yêu cầu tất cả các ứng dụng đang được điều trị với cùng một ưu tiên kinh doanh.

Bằng cách thực hiện ảo hóa cơ sở hạ tầng ứng dụng ngoài việc ảo hóa máy chủ, bạn có thể đảm bảo rằng các ứng dụng ưu tiên cao nhất có quyền truy cập ưu tiên hàng đầu đến các nguồn dữ liệu.

Nền tảng dữ liệu lớn được thiết kế để hỗ trợ phân phối, các ứng dụng dữ liệu chuyên sâu sẽ chạy tốt hơn và nhanh hơn trong một môi trường ảo. Điều này không có nghĩa rằng bạn sẽ muốn ảo hóa tất cả các ứng dụng liên quan đến dữ liệu lớn. Ví dụ, một ứng dụng phân tích văn bản có thể chạy tốt nhất trong một môi trường khép kín và ảo hóa sẽ không thêm bất kỳ lợi ích gì.

(29)

21

d. Ảo hóa mạng

Mạng ảo hóa cung cấp một cách hiệu quả để sử dụng mạng như một biển tài nguyên kết nối. Mạng được ảo hóa cũng tương tự như trong công nghệ vật lý khác. Thay vì dựa vào các mạng vật lý cho việc quản lý giao thông giữa các kết nối, bạn có thể tạo ra nhiều mạng ảo mà tất cả sử dụng thực hiện vật lý như nhau. Điều này có thể hữu ích nếu bạn cần phải xác định một mạng cho các dữ liệu thu thập với một tập hợp các đặc tính hiệu suất, năng lực và một mạng cho các ứng dụng với hiệu suất và công suất khác nhau. Hạn chế trong các lớp mạng có thể dẫn đến tắc nghẽn dẫn đến độ trễ không thể chấp nhận trong môi trường dữ liệu lớn. Ảo hóa mạng giúp giảm những tắc nghẽn và cải thiện khả năng quản lý dữ liệu lớn phân phối cần thiết để phân tích dữ liệu lớn.

e. Bộ vi xử lý và bộ nhớ ảo

Bộ vi xử lý ảo hóa giúp tối ưu hóa bộ xử lý và tối đa hóa hiệu suất. Bộ nhớ ảo tách riêng bộ nhớ từ các máy chủ. Trong phân tích Big data, bạn có thể lặp đi lặp lại các truy vấn của tập dữ liệu lớn và tạo ra các thuật toán phân tích tiên tiến, tất cả được thiết kế để tìm kiếm các mẫu và xu hướng chưa được hiểu rõ.

Những phân tích tiên tiến có thể đòi hỏi nhiều sức mạnh xử lý (CPU) và bộ nhớ (RAM). Đối với một số tính toán, nó có thể mất một thời gian dài mà không có đủ CPU và tài nguyên bộ nhớ. Bộ vi xử lý và bộ nhớ ảo có thể giúp tăng tốc độ xử lý và nhận được kết quả phân tích của bạn sớm hơn.

f. Dữ liệu và lưu trữ ảo hóa

Ảo hóa dữ liệu có thể được sử dụng để tạo ra một nền tảng cho các dịch vụ dữ liệu liên kết động. Điều này cho phép dữ liệu được dễ dàng tìm kiếm và kết nối thông qua một nguồn tham khảo thống nhất. Kết quả là dữ liệu ảo hóa cung cấp một dịch vụ trừu tượng mà không phụ thuộc vào cơ sở dữ liệu vật lý bên dưới. Ngoài ra, dữ liệu ảo hóa cho thấy nhiều dữ liệu được lưu trữ cho tất cả các ứng dụng để cải thiện hiệu suất.

Ảo hóa lưu trữ kết hợp tài nguyên lưu trữ vật lý để chia sẻ hiệu quả hơn.

Điều này làm giảm chi phí lưu trữ và làm cho nó dễ dàng hơn để quản lý các cửa hàng dữ liệu cần thiết phân tích dữ liệu lớn.

(30)

22

Ảo hóa dữ liệu và ảo hóa lưu trữ đóng một vai trò quan trọng trong làm cho dễ dàng hơn và ít tốn kém hơn để lưu trữ, tải về, và phân tích khối lượng lớn các loại dữ liệu. Hãy nhớ rằng một số dữ liệu lớn có thể không có cấu trúc và không dễ dàng được lưu trữ bằng phương pháp truyền thống. Ảo hóa lưu trữ làm cho nó dễ dàng hơn để lưu trữ các loại dữ liệu lớn và không có cấu trúc. Trong một môi trường dữ liệu lớn, đó là lợi thế để có quyền truy cập vào một loạt các cửa hàng dữ liệu hoạt động theo yêu cầu. Ví dụ, bạn có thể chỉ cần truy cập vào một cơ sở dữ liệu dạng cột thường xuyên. Với ảo hóa, các cơ sở dữ liệu có thể được lưu trữ như là một hình ảnh ảo và gọi bất cứ khi nào nó là cần thiết mà không cần tiêu tốn tài nguyên trung tâm dữ liệu có giá trị hoặc công suất.

1.1.2.2 Quản lý ảo hóa với Hypervisor

Trong một thế giới lý tưởng, bạn không muốn lo lắng về các hệ thống điều hành cơ bản và các phần cứng vật lý. Hypervisor là công nghệ có trách nhiệm đảm bảo rằng chia sẻ tài nguyên diễn ra một cách trật tự và lặp lại, cho phép nhiều hệ điều hành để chia sẻ một máy chủ duy nhất. Nó tạo ra và chạy các máy ảo. Hypervisor nằm ở mức thấp nhất của môi trường phần cứng và sử dụng một lớp mỏng của mã lệnh để cho phép chia sẻ tài nguyên động.

Trong thế giới của Big data, bạn có thể cần phải hỗ trợ nhiều môi trường hoạt động khác nhau. Hypervisor trở thành một cơ chế cung cấp lý tưởng cho các thành phần công nghệ của các dữ liệu ngăn xếp lớn. Hypervisor cho phép bạn hiển thị các ứng dụng tương tự trên rất nhiều hệ thống mà không cần phải thể chất sao chép ứng dụng vào từng hệ thống. Là một lợi ích bổ sung, vì kiến trúc hypervisor, nó có thể tải bất kỳ (hoặc nhiều) hệ điều hành khác nhau như thể họ chỉ là một ứng dụng khác.

1.1.2.3 Trừu tượng hóa và ảo hóa

Đối với các nguồn tài nguyên và các dịch vụ được ảo hóa, chúng được tách ra khỏi môi trường phân phối vật lý cơ bản. Thuật ngữ kỹ thuật đối với hành vi tách biệt này được gọi là trừu tượng hóa. Trừu tượng hóa là một khái niệm quan trọng trong dữ liệu lớn. MapReduce và Hadoop được phân phối môi trường điện toán mà tất cả mọi thứ là trừu tượng. Với các chi tiết là trừu tượng hóa thì các nhà phát triển hoặc nhà phân tích không cần phải quan tâm đến nơi mà các yếu tố dữ liệu đó thực sự nằm vị trí nào.

(31)

23

Trừu tượng hóa giảm thiểu sự phức tạp của một dữ liệu nào đó bằng cách ẩn các chi tiết và chỉ cung cấp các thông tin có liên quan. Ví dụ, nếu bạn đã đi để lấy một người mà bạn chưa bao giờ gặp nhau trước đây, họ có thể cho bạn biết vị trí để gặp người đó, chiều cao, màu tóc, và sẽ mặc những gì. Họ không cần phải cho bạn biết nơi họ được sinh ra, có bao nhiêu tiền trong ngân hàng, ngày tháng năm sinh của mình. Đó là ý tưởng với trừu tượng - đó là cung cấp một đặc điểm kỹ thuật cao cấp hơn là đi sâu vào nhiều chi tiết về một cái gì đó làm việc như thế nào. Trong đám mây, ví dụ, trong một cơ sở hạ tầng như là một mô hình cung cấp dịch vụ (IaaS), các chi tiết của cơ sở hạ tầng vật lý và ảo được trừu tượng hóa từ người dùng.

1.1.2.4 Triển khai ảo hóa để làm việc với Big data

Ảo hóa giúp làm cho môi trường CNTT của bạn đủ thông minh để xử lý phân tích dữ liệu lớn. Bằng cách tối ưu hóa tất cả các yếu tố của cơ sở hạ tầng, bao gồm cả phần cứng, phần mềm và lưu trữ, bạn đạt được hiệu quả cần thiết để xử lý và quản lý khối lượng lớn dữ liệu có cấu trúc và không có cấu trúc. Với dữ liệu lớn, bạn cần truy cập, quản lý và phân tích dữ liệu có cấu trúc và phi cấu trúc trong một môi trường phân phối.

Big data giả định phân phối. Trong thực tế, bất kỳ loại MapReduce nào cũng sẽ làm việc tốt hơn trong một môi trường ảo hóa. Bạn cần có khả năng di chuyển khối lượng công việc xung quanh dựa trên yêu cầu cho sức mạnh tính toán và lưu trữ. Ảo hóa sẽ cho phép bạn để giải quyết những vấn đề lớn mà chưa được giới hạn phạm vi. Ảo hóa sẽ cho phép hỗ trợ một loạt các cửa hàng dữ liệu lớn hoạt động. Ví dụ, một cơ sở dữ liệu đồ thị có thể trở thành như một hình ảnh.

Lợi ích trực tiếp nhất từ ảo hóa là để đảm bảo rằng công cụ MapReduce làm việc tốt hơn. Ảo hóa sẽ dẫn đến phạm vi tốt hơn và hiệu suất cao hơn cho MapReduce. Mỗi một Map và Reduce cần được thực hiện một cách độc lập.

Nếu động cơ MapReduce là song song và được cấu hình để chạy trong một môi trường ảo, bạn có thể giảm chi phí quản lý và cho phép mở rộng và co thắt trong các khối lượng công việc nhiệm vụ. MapReduce chính nó là vốn song song và phân tán. Bằng cách bắt các MapReduce trong một container ảo, bạn có thể chạy những gì bạn muốn bất cứ khi nào bạn cần nó. Với ảo hóa, bạn tăng cường sử dụng tài sản mà bạn đã trả tiền bằng cách chuyển chúng các nguồn tài nguyên chung.

(32)

24

1.1.3 Kiểm tra đám mây và Big data

Sức mạnh của đám mây là người dùng có thể truy cập vào tài nguyên máy tính và lưu trữ cần thiết với rất ít hoặc không có hỗ trợ IT hay phải mua thêm phần cứng hoặc phần mềm. Một trong những đặc điểm quan trọng của đám mây là khả năng mở rộng đàn hồi: Người dùng có thể thêm hoặc bớt đi các nguồn lực trong gần như thời gian thực dựa trên yêu cầu thay đổi. Các đám mây đóng một vai trò quan trọng trong thế giới dữ liệu lớn. Những thay đổi lớn xảy ra khi các thành phần cơ sở hạ tầng được kết hợp với những tiến bộ trong quản lý dữ liệu.

Mở rộng chiều ngang và tối ưu hóa cơ sở hạ tầng hỗ trợ việc thực hiện thực tế của dữ liệu lớn.

1.1.3.1 Xác định các đám mây trong Big data

Điện toán đám mây là một phương pháp cung cấp một tập hợp các tài nguyên máy tính chia sẻ bao gồm các ứng dụng, tính toán, lưu trữ, mạng, phát triển và nền tảng triển khai, cũng như các quá trình kinh doanh. Điện toán đám mây biến tài sản máy tính bị bưng bít truyền thống vào biển chia sẻ các nguồn tài nguyên dựa trên một nền tảng Internet cơ bản. Trong điện toán đám mây, tất cả mọi thứ, từ sức mạnh tính toán cơ sở hạ tầng điện toán và từ các ứng dụng và các quá trình kinh doanh để dữ liệu và phân tích, có thể được gửi đến bạn như một dịch vụ. Để được hoạt động trong thế giới thực, các đám mây phải được thực hiện với quy trình chuẩn hóa thông thường và tự động hóa.

Nhiều dịch vụ điện toán đám mây doanh nghiệp tận dụng cho tất cả mọi thứ từ sao lưu vào phần mềm như một dịch vụ (SaaS) tùy chọn như quản lý quan hệ khách hàng dịch vụ (CRM). Với sự phát triển của điện toán di động, nhiều người tiêu dùng, các chuyên gia và các công ty đang tạo và truy cập dữ liệu với các dịch vụ dựa trên đám mây. Người tiêu dùng trung bình có thể được gửi một phiếu giảm giá trực tuyến với một cửa hàng yêu thích; một người quản lý kiểm soát chất lượng trong một nhà máy sản xuất có thể thu thập dữ liệu cảm biến từ một loạt các máy móc để xác định liệu một vấn đề chất lượng tồn tại. Các kịch bản này được xác định trên cơ sở hạ tầng dịch vụ dữ liệu dựa trên đám mây.

(33)

25

Một ví dụ phổ biến về lợi ích của điện toán đám mây hỗ trợ dữ liệu lớn có thể được ghi nhận ở cả Google và Amazon.com. Cả hai công ty phụ thuộc vào khả năng quản lý một lượng lớn dữ liệu để di chuyển các doanh nghiệp của họ về phía trước. Các nhà cung cấp cần thiết để đến với cơ sở hạ tầng và các công nghệ có thể hỗ trợ các ứng dụng ở quy mô lớn. Hãy xem xét Gmail và hàng triệu triệu thông điệp rằng Google sẽ xử lý mỗi ngày như là một phần của dịch vụ này. Google đã có thể tối ưu hóa hệ điều hành Linux và môi trường phần mềm của mình để hỗ trợ e-mail theo cách hiệu quả nhất. Do đó, nó có thể dễ dàng hỗ trợ hàng trăm triệu người sử dụng. Quan trọng hơn nữa, Google có thể nắm bắt và tận dụng số lượng lớn các dữ liệu về cả hai người sử dụng mail của mình và sử dụng công cụ tìm kiếm của mình.

Tương tự như vậy, Amazon.com, với các trung tâm dữ liệu IaaS của nó, được tối ưu hóa hỗ trợ cho những khối lượng công việc để Amazon có thể tiếp tục cung cấp các dịch vụ mới và hỗ trợ một số lượng ngày càng tăng của khách hàng mà không vi phạm các ngân hàng. Để phát triển kinh doanh bán lẻ của mình, Amazon phải có khả năng quản lý dữ liệu về hàng hóa của mình, người mua nó, và kênh của các thương gia của đối tác. Nhắm mục tiêu quảng cáo dựa trên mô hình mua của khách hàng là rất quan trọng cho sự thành công của công ty. Các công ty này hiện cung cấp một loạt các dịch vụ dựa trên đám mây cho dữ liệu.

1.1.3.2 Tìm hiểu về triển khai đám mây và mô hình phân phát

Hai mô hình điện toán đám mây chính trong các cuộc thảo luận về dữ liệu lớn là những đám mây công cộng và đám mây riêng. Đối với những tổ chức thông qua việc triển khai điện toán đám mây và cung cấp các mô hình, hầu hết sẽ sử dụng một sự kết hợp của nguồn tin máy tính (trung tâm dữ liệu và những đám mây tư nhân) và các dịch vụ công cộng (điều hành bởi một công ty bên ngoài để sử dụng chia sẻ của một loạt các khách hàng trả một trọng phí sử dụng). Làm thế nào các công ty cân bằng cung cấp công cộng và tư nhân phụ thuộc vào một số vấn đề, trong đó có sự riêng tư, độ trễ, và mục đích. Điều quan trọng là phải hiểu những môi trường và ý nghĩa của chúng đối với việc triển khai dữ liệu lớn tiềm năng. Bằng cách đó, bạn có thể xác định xem bạn có thể muốn sử dụng một IaaS đám mây công cộng (mô tả sau) - ví dụ, đối với các dự án lớn dữ liệu của bạn - hoặc nếu bạn muốn tiếp tục để giữ tất cả các dữ liệu của bạn trên cơ sở. Hoặc, bạn có thể muốn sử dụng một sự kết hợp của cả hai. Vì vậy, họ phác thảo các mô hình triển khai và phân phối đầu tiên và sau đó nói chuyện nhiều hơn về những gì họ có nghĩa là dữ liệu lớn.

(34)

26

a. Mô hình triển khai điện toán đám mây Các đám mây công cộng

Các đám mây công cộng là một tập hợp các phần cứng, mạng, lưu trữ, dịch vụ, ứng dụng và giao diện thuộc sở hữu và điều hành bởi một bên thứ ba để sử dụng bởi các công ty và cá nhân khác. Các nhà cung cấp thương mại tạo ra một trung tâm dữ liệu cao khả năng mở rộng mà giấu đi các chi tiết của cơ sở hạ tầng cơ bản từ người tiêu dùng. đám mây công cộng là khả thi bởi vì họ thường quản lý khối lượng công việc tương đối lặp đi lặp lại hoặc đơn giản. Ví dụ, thư điện tử là một ứng dụng rất đơn giản. Do đó, một nhà cung cấp điện toán đám mây có thể tối ưu hóa môi trường để nó là thích hợp nhất để hỗ trợ một số lượng lớn các khách hàng, thậm chí nếu nó giúp tiết kiệm rất nhiều tin nhắn.

Tương tự như vậy, các nhà cung cấp điện toán đám mây công cộng cung cấp dịch vụ lưu trữ hoặc máy tính tối ưu hóa phần cứng và phần mềm máy tính của họ để hỗ trợ các loại hình cụ thể của khối lượng công việc.

Ngược lại, các trung tâm dữ liệu điển hình hỗ trợ rất nhiều các ứng dụng khác nhau và khối lượng công việc mà nó không thể dễ dàng tối ưu hóa. Một đám mây công cộng có thể rất hiệu quả khi một tổ chức đang thực hiện một dự án phân tích dữ liệu phức tạp và cần chu kỳ tính toán thêm để xử lý các nhiệm vụ. Ngoài ra, các công ty có thể chọn để lưu trữ dữ liệu trong một đám mây công cộng, nơi chi phí cho mỗi gigabyte là tương đối rẻ tiền so với dung lượng đã mua. Những vấn đề quan trọng hơn với những đám mây công cộng cho dữ liệu lớn là các yêu cầu an ninh và số lượng của độ trễ đó là chấp nhận được.

Tất cả các đám mây công cộng là không giống nhau. Một số đám mây công cộng là dịch vụ quản lý khả năng mở rộng với một mức độ bảo mật cao và một mức độ cao về quản lý dịch vụ. Những đám mây công cộng khác ít mạnh mẽ và kém an toàn, nhưng họ ít chi phí để sử dụng. Sự lựa chọn của bạn sẽ phụ thuộc vào tính chất của dự án dữ liệu lớn của bạn và mức độ rủi ro mà bạn có thể lường trước.

Tài liệu tham khảo

Tài liệu liên quan

- Thu thập, tổ chức và bảo quản dữ liệu lớn: chương trình đào tạo phải trang bị cho người học các phương pháp và công cụ thu thập, đánh giá và chọn lọc các loại dữ

Hệ thống thiết kế đã ứng dụng và minh chứng các kĩ thuật truyền dữ liệu có dây và không dây, cùng với các cảm biến cần thiết có thể được sử dụng để theo dõi các

** ThS, Trường Đại học Đồng Tháp.. Vì vậy, việc nghiên cứu nhằm đưa ra các giải pháp cho phép chuyển đổi dữ liệu từ các cơ sở dữ liệu quan hệ của Web hiện tại sang mô

Vậy nếu có thể ứng dụng được Graph Mining để tìm được tập các đồ thị con chứa đặc trưng sinh học, việc phân loại enzyme có thể sẽ đạt hiệu quả hơn, hỗ trợ tốt cho

Kết quả nghiên cứu cho phép triển khai hệ thống IoT Gateway trong thực tế với các ứng dụng đo lường, phân tích và xử lý dữ liệu trực tuyến với yêu cầu sử dụng thuật

Bài báo đã thu được kết quả sau khi ứng dụng công nghệ quét Laser 3D: (1) Hiển thị mô hình 3D của thửa đất cần cấp giấy phép xây dựng trên bản đồ quy hoạch; (2)

Sự lệch khỏi quy luật tuyến tính Curie- Weiss là do sự xuất hiện các cụm sắt từ trong vùng thuận từ của vật liệu làm phát sinh một pha từ mới gọi là pha Griffiths hoặc có thể

Thực nghiệm với một số robot khác nhau Trong mục này, trên cùng một robot chúng tôi sẽ sử dụng tất cả các tùy chọn của bài toán tối ưu giống nhau chỉ thay đổi duy nhất