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

báo cáo dữ liệu lớn khoa học máy tính

48 0 0
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

Tiêu đề Dữ Liệu Lớn
Tác giả Nguyễn Văn Chiến, Võ Tấn Sang, Nguyễn Hoàng Phương, Nguyễn Đức Quỳnh
Người hướng dẫn TS. Hàn Trung Định
Trường học Trường Đại Học Giao Thông Vận Tải TP.HCM
Chuyên ngành Khoa Học Máy Tính
Thể loại Báo cáo
Năm xuất bản 2022
Thành phố TP. HCM
Định dạng
Số trang 48
Dung lượng 9,77 MB

Cấu trúc

  • CHƯƠNG 1: MÔ TẢ DỮ LI ỆU VÀ HƯỚ NG TIẾP CẬN (5)
    • 1.1 Mô t d ả ữ liệu (0)
    • 1.2 Hướng ti p c ế ậ n (7)
  • CHƯƠNG 2: CƠ SỞ LÝ THUYẾT (8)
    • 2.1 Docker (8)
      • 2.1.1 C ấu trúc của docker (8)
      • 2.1.2 Nguyên t c ho ắ ạt động (9)
      • 2.1.3 Quy trình hoạt động (10)
      • 2.1.4 S ự khác nhau gi a Hypervisors và Docker ữ (11)
      • 2.1.5 Ưu điểm c a Docker ủ (0)
      • 2.1.6 M ột số công c và thu t ng trong Docker ụ ậ ữ (13)
    • 2.2 Hadoop (15)
      • 2.2.1 Kiến trúc Hadoop (16)
      • 2.2.2 Cách thức hoạt động (16)
      • 2.2.3 Ưu điểm c a Hadoop ủ (17)
      • 2.2.4 Cài đặt cụm Hadoop v i Docker ớ (17)
    • 2.3 Sqoop (19)
      • 2.3.1 C ấu trúc Sqoop (20)
      • 2.3.2 Ưu điểm c a Sqoop ủ (21)
      • 2.3.3 Sqoop và các công cụ (22)
      • 2.3.4 Các t p l nh c a Sqoop ậ ệ ủ (23)
  • CHƯƠNG 3: MÔ HÌNH TOÁN (27)
    • 3.1 Giới thi u Linear Regression ệ (27)
    • 3.2 Phân tích toán học (28)
      • 3.2.1 D ạng của Linear Regression (28)
      • 3.2.2 Sai s d ố ự đoán (28)
      • 3.2.3 Hàm m t mát ấ (28)
      • 3.2.4 Nghi ệm cho bài toán Liner Regression (29)
  • CHƯƠNG 4: MÔ HÌNH THỰC NGHIỆM (31)
    • 4.1 Giới thi u h ệ ồi quy đa thức (31)
      • 4.1.1 Nguyên nhân dùng hồi quy đa thức (31)
      • 4.1.2 Công dụng của hồi quy đa thức (31)
    • 4.2 K ết qu ả thực nghiệm (0)
  • CHƯƠNG 5: TRỰC QUAN HÓA DỮ LIỆU (36)
    • 5.1 D ữ liệu không gian địa lý (36)
    • 5.2 Biểu đồ Treemaps (37)
    • 5.3 Biểu đồ bong bóng (37)
  • CHƯƠNG 6: HƯỚNG PHÁT TRIỂN ĐỀ TÀI (39)
    • 6.1 Công cụ xử lí dữ liệ u (0)
      • 6.1.1 Hive (39)
      • 6.1.2 Spark (41)
    • 6.2 ETL trong Data Warehoue (45)
  • CHƯƠNG 2 Hình 2.1: Ki n trúc Docker ế (0)
  • CHƯƠNG 4 Hình 4.1: Mô hình d ự đoán xu hướng dịch b nh Covid hàng ngày ệ (0)
  • CHƯƠNG 5 Hình 5.1: Bi ểu đồ mô t các ca nhiả ễm ở các khu v c trên toàn c u ựầ (0)

Nội dung

Sau khi tạo Dockerfile, người dùng sẽ có 1 Container lưu trữ bộ thư viện và ứng dụng của mình..  Pull, Run: thao tác này áp dụng khi người dùng muốn truy cập container này bằng 1 thiết

MÔ TẢ DỮ LI ỆU VÀ HƯỚ NG TIẾP CẬN

Hướng ti p c ế ậ n

Đối với t p d ậ ữliệu trên đề xuất dùng phương pháp hồi quy tuyến tính để đưa ra mô hình dự đoán cho xu hướng tình hình d ch COVID-19 trong th i gian tị ờ ới Đố ớ ậi v i t p d ữ liệu lớn và được cập nhật hàng ngày d ữliệu sẽ được c p nh t vào hậ ậ ệ thống bigdata và được phân tán trên nhiều ‘node’ khác nhau để hỗ trợ cho vi c x lý d u l n sau này ệ ử ữliệ ớ

CƠ SỞ LÝ THUYẾT

Docker

Docker là m t n n tộ ề ảng mã ngu n mồ ở để xây d ng, tri n khai và qu n lý các ự ể ả ứng dụng được container (trên nền tảng ảo hóa) Docker cung cấp cách để building, deloying và running ng d ng d dàng b ng cách s d ng containers ứ ụ ễ ằ ử ụ

Docker cho phép các nhà phát triển đóng gói ng d ng vào container Các thành ứ ụ phần thực thi được chu n hóa k t h p mã nguẩ ế ợ ồn ứng d ng v i t t cụ ớ ấ ả các thư viện Và nó phụ thuộc c a h ủ ệ điều hành (OS) c n thiầ ết đểchạy mã trong b t kấ ỳ môi trường nào Trong khi các nhà phát tri n có th t o container mà không cể ể ạ ần đến Docker Docker giúp vi c xây d ng, tri n khai, qu n lý container tr nên dệ ự ể ả ở ễ dàng, đơn giản, an toàn hơn

Về cơ bản, đây là một bộ công cụ cho phép các nhà phát tri n xây d ng, tri n khai, ch y, ể ự ể ạ cập nh t và d ng các container b ng cách s d ng các lậ ừ ằ ử ụ ệnh đơn giản và tự động hóa tiết kiệm công việc.

Docker được thiết kế dưới mô hình ki n trúc client-server Docker server (Docker ế daemon) có vai trò tri n khai, ch y và phân b các Docker container Docker client và ể ạ ổDocker server có thể được phân b cùng server ho c khác server Chúng k t n i thông ổ ặ ế ố qua n n t ng REST API d a trên UNIX sockets ho c network interface ề ả ự ặ

 Docker daemon đóng vai trò là thành phần core, theo dõi và nghe API request và quản lý các Docker object Docker daemon ở các host khác nhau vẫn có khả năng giao tiếp và kết nối với nhau

 Docker client là công cụ chính để người dùng thực hiện các thao tác trên nền tảng

Khi người dùng sử dụng giao diện dòng lệnh (CLI) để gõ lệnh "Docker run imageABC", yêu cầu sẽ được gửi đến dockerd thông qua API Sau đó, Docker daemon sẽ tiếp nhận và xử lý yêu cầu Điều đáng chú ý là Docker client có khả năng kết nối, giao tiếp và truyền tải yêu cầu đến nhiều Docker daemon khác nhau.

 Docker registry hiểu theo nghĩa đơn giản là kho lưu trữ các Image Điển hình là Docker Hub, mặt khác người dùng có thể tự thiết lập một Docker registry của riêng mình

Hình 2.2: Cơ chếhoạt động của Docker

Cơ chế hoạt động của Docker không đơn giản như cách sử d ng mà có ph c tụ ứ ạp hơn Docker hoạt động trên s k t h p gi a 1 Docker engine v i 2 y u tự ế ợ ữ ớ ế ố:

+ Giao ti p gi a server và client nh REST API ế ữ ờ

Docker hoạt động thông qua vi c cung c p nhệ ấ ững phương thức tiêu chuẩn để chạy mã của người dùng Theo đó, các container thực hi n thao tác o hóa hệ ả ệ điều hành phía máy chủ Docker được thiết lập trên từng máy chủ và được hỗ trợ các câu lệnh đơn giản có nhi m v tri n khai, khệ ụ ể ởi động ho c t m d ng Container M t s d ch vặ ạ ừ ộ ố ị ụ AWS như AWS Fargate, Amazon ECS, Amazon EKS và AWS Batch hỗ trợ người dùng ch y các ạ container Docker quy mô l n m t cách thu n tiở ớ ộ ậ ện và nhanh chóng hơn

Docker hoạt động d a trên th t ự ứ ự 3 bước: Build - Push Pull, Run –

Hình 2.3: Th t ứ ự các bước hoạt động Docker

Để sử dụng Docker, người dùng cần bắt đầu bằng cách truy cập Docker và tạo một Dockerfile, trong đó chứa code của họ Dockerfile này sau đó sẽ được thiết lập trên một thiết bị đã cài đặt Docker Engine Sau khi tạo Dockerfile, người dùng sẽ có một Container lưu trữ bộ thư viện và ứng dụng của họ.

 Push: có được container sẽ được người dùng push lên đám mây và lưu trữ tại đó

Thao tác này được thực hiện qua mạng Internet

 Pull, Run: thao tác này áp dụng khi người dùng muốn truy cập container này bằng

1 thiết bị khác (đã được cài đặt Docker Engine) thì yêu cầu phải Pull container này về máy và cho phép quá trình Run Container diễn ra

2.1.4 Sự khác nhau gi a Hypervisors và Dockerữ

Hình 2.4: Sự khác nhau trong ki n trúc Hypervisor và Docker ế

Hypervisor là ảo hỏa nằm ở tầng Hardware (phần cứng), tức là mô phỏng phần cứng và chạy những OS con trên phần cứng đó (Các công cụ Hypervisor như Virtual Box, VMware )

Sự khác nhau giữa Hypervisors và Docker

Docker: Dùng chung kernel, chạy độc lập trên Host Operating System và có thể chạy trên bất kì hệ điều hành nào cũng như cloud Khởi động và làm cho ứng dụng sẵn sàng chạy trong 500ms, mang lại tính khả thi cao cho những dự án cần sự mở rộng nhanh. Virtual Machine(Hypervisors): Cần thêm một Guest OS cho nên sẽ tốn tài nguyên hơn và làm chậm máy thật khi sử dụng Thời gian khởi động trung bình là 20s có thể lên đến hàng phút, thay đổi phụ thuộc vào tốc độ của ổ đĩa

 Dễ sử dụng: cách sử dụng Docker khá đơn giản, phù hợp với nhiều đối tượng như lập trình viên, sys admin… Docker khai thác lợi thế của container để triển khai và kiểm tra nhanh chóng Docker hỗ trợ đóng gói ứng dụng trên laptop và chạy chương trình trên public cloud, private cloud… Câu lệnh là “Build once, run anywhere”

 Tốc độ: Docker container có ưu điểm là nhẹ và nhanh, cho phép người dùng thiết lập và chạy docker container với tốc độ tính bằng giây

 Môi trường chạy và khả năng mở rộng: người dùng có thể phân nhỏ các chức năng trên ứng dụng thành các container riêng lẻ Với Docker đem đến khả năng liên kết các container với nhau tạo lập thành 1 ứng dụng, thuận tiện hơn khi thực hiện thao tác scale, cập nhật các thành phần riêng biệt

2.1.6 Một số công c và thu t ng trong Docker ụ ậ ữ

Mọi container Docker bắt đầu bằng một file văn bản đơn giản chứa hướng dẫn về cách t o image container Docker DockerFile t ạ ự động hóa ti n trình t o image Docker V ế ạ ề cơ bản, đây là danh sách các lệnh mà Docker Engine s ẽchạy để ậ t p h p image ợ

Docker image ch a mã nguứ ồn ứng d ng thụ ực thi cũng như tấ ảt c các công cụ, thư viện Kèm theo dependencies mà ng d ng cứ ụ ần đểchạy dướ ại d ng container Khi ta chạy Docker image, nó s ẽtrở thành m t phiên b n (ho c nhiộ ả ặ ều phiên b n) c a container ả ủ

Hadoop

Hadoop là một framwork giúp lưu trữ và x lý Big Data áp d ng MapReduce Nói ử ụ đơn giản cách khác nó s giúp s p x p d u sao cho user có th d dàng s d ng nhẽ ắ ế ữliệ ể ễ ử ụ ất MapReduce được Google tạo ra ban đầu để ử lý đố x ng dữ liệ ớu l n c a công ty hủ ọ

Ta còn có th gể ọi phương pháp này là Phân tán dữ liệu vì nó tách h t t p h p các dế ậ ợ ữ liệu ban đầu thành các d ữliệu nh và sỏ ắp x p lế ại chúng để d dàng tìm ki m và truy xuễ ế ất hơn, đặc biệt là việc truy xuất các d liệu tương đồng Ví dụ thưữ ờng th y nhấ ất là các đề xuất mà ta hay thấy ở Google tìm ki m ế

Hadoop là một nền tảng phân phối chức năng thông thường được phát triển dựa trên mô hình lập trình MapReduce Hadoop cho phép phát triển các ứng dụng phân tán bằng Java hoặc các ngôn ngữ lập trình khác như C++, Python, Pearl nhờ cơ chế streaming Mặc dù được viết bằng Java, Hadoop vẫn hỗ trợ tính năng này.

 Hadoop Common: Đây là các thư viện và ti n ích c n thi t cệ ầ ế ủa Java để các module khác s d ng Nhử ụ ững thư viện này cung cấp h ệthống file và l p OS trớ ừu tượng, đồng thời chứa các mã lệnh Java đểkhởi động Hadoop

 Hadoop YARN: Đây là framework để quản lý tiến trình và tài nguyên của các cluster

 Hadoop Distributed File System (HDFS): Đây là hệ thống file phân tán cung cấp truy cập thông lượng cao cho ng dứ ụng khai thác d ữliệu

 Hadoop MapReduce: Đây là hệ thống dựa trên YARN dùng để x lý song song các ử tập d ữliệu lớn

Hiện nay Hadoop đang ngày càng được mở rộng cũng như được nhiều framwork khác h ỗtrợ như Hive, Hbase, Pig Tùy vào mục đích sử d ng mà ta s áp d ng framework ụ ẽ ụ phù hợp để nâng cao hi u qu x lý d u c a Hadoop ệ ả ử ữliệ ủ

Một user hay một ứng dụng có thể submit m t job lên Hadoop (hadoop job client) ộ với yêu c u x ầ ử lý cùng các thông tin cơ bản:

 Truyền dữ liệu lên server(input) để ắt đầ b u phân tán dữliệu và đưa ra kết quả (output)

 Các d ữliệu được ch y thông qua 2 hàm chính là map và reduce ạ o Map: s quét qua toàn b d u và phân tán chúng ra thành các d ẽ ộ ữliệ ữliệu con o Reduce: s thu th p các d u con l i và s p x p l i chúng ẽ ậ ữliệ ạ ắ ế ạ

 Các thi t l p c ế ậ ụthể liên quan đến job thông qua các thông s truyố ền vào

Hadoop job client submit job (file jar, file th c thi) và bự ắt đầu l p l ch làm ậ ị việc(JobTracker) đưa job vào hàng đợi

Sau khi ti p nh n yêu c u t JobTracker, server cha(master) s phân chia công viế ậ ầ ừ ẽ ệc cho các server con(slave) Các server con sẽ thực hiện các job được giao và tr k t qu ả ế ả cho server cha

TaskTrackers dùng để ểm tra đả ki m bảo các MapReduce hoạt động bình thường và kiểm tra kết qu ảnhận được (quá trình output)

Khi “chạy Hadoop” có nghĩa là chạy một tập các trình nền - daemon, ho c các ặ chương trình thường trú, trên các máy ch khác nhau trên mủ ạng c a b n Nh ng trình nủ ạ ữ ền có vai trò cụ thể, m t s ộ ốchỉ t n t i trên mồ ạ ột máy ch , mủ ột số có th t n t i trên nhi u máy ể ồ ạ ề chủ

2.2.3Ưu điểm c a Hadoop ủ o Hadoop framework cho phép người dùng nhanh chóng vi t và ki m tra các h ế ể ệthống phân tán Đây là cách hiệu quả cho phép phân phối dữ liệu và công việc xuyên suốt các máy tr m nh ạ ờ vào cơ chế ử x lý song song c a các lõi CPU ủ o Hadoop không dựa vào cơ chế chịu l i c a ph n c ng fault-tolerance and high ỗ ủ ầ ứ availability (FTHA), thay vì v y bậ ản thân Hadoop có các thư viện được thi t kế ế để phát hiện và x các lửlý ỗi ở lớp ứng dụng o Hadoop có th phát tri n lên nhi u server v i c u trúc master-ể ể ề ớ ấ slave để đảm b o thả ực hiện các công vi c linh ho t và không b ệ ạ ịngắt quãng do chia nh công vi c cho các server ỏ ệ slave được điều khi n b i server master ể ở o Hadoop có th ể tương thích trên m i n n tọ ề ảng như Window, Linux, MacOs do được tạo ra t Java ừ

2.2.4Cài đặt cụm Hadoop v i Docker ớ Để cài đặt Hadoop trong Docker container, chúng ta c n Hadoop docker images ầ Chúng tôi s d ng ngu n d ử ụ ồ ữliệu dưới đây cho việc tạo image https://github.com/big-data-europe/docker-hadoop

Sau khi git được cài đặt trong hệ thống, chúng ta s ẽ có thư mục docker-hadoop Tiếp theo, chúng tôi hi u ch nh port và node trong file docker-compose.yml cho phù hệ ỉ ợp bài th c hành ự

Triển khai c m Hadoop b ng command: ụ ằ $ docker-compose up d –

Như đã trình bày ở phần giới thi u, mô hình hadoop c a chúng tôi g m 3 node, ệ ủ ồ được thể hiện như sơ đồ dưới đây

Sau khi cài đặt Hadoop thành công, sử dụng lệnh $ docker ps để kiểm tra các container đang chạy Hình 2.6 minh họa kết quả sau khi thực hiện thành công.

Hình 2.7: Kiểm tra sau khi cài đặt thành công Tiếp theo, ta truy cập http://localhost: 9870 để xem trạng thái hiện tại của hệ thống từ namenode:

Hình 2.8: Ki m tra tr ng thái hi n t i c a h ể ạ ệ ạ ủ ệthống

Sqoop

Hầu hết các công ty lưu dữ liệu trong RDBMS và các gi i pháp kho d ả ữliệu khác H ọ cần 1 cách để di chuy n d ể ữliệu vào Hadoop để làm các x lý khác nhau và tr k t qu ử ả ế ảtrở về RDBMS t ừHadoop S di chuy n d u có th x y ra trong th i gian th c (real time) ự ể ữliệ ể ả ờ ự hoặc t i nhi u thạ ề ời điểm (interval) khác nhau Chúng ta c n 1 công c giúp di chuy n d ầ ụ ể ữ liệ ừu t SQL sang Hadoop và t Hadoop sang SQL Sqoop (SQL to Hadoop) là 1 công c ừ ụ như vậy, dùng trích xu t (extract) d ấ ữliệu t non-Hadoop và chuyừ ển đổi (transform) chúng vào định dạng mà Hadoop có th ể dùng và sau đó nạp (load) chúng vào HDFS Cơ bản nó là công c ETL (Extracts, Transform và Load) t ụ ừ SQL vào Hadoop Điểm hay là nó trích xuất (extract) dữ liệ ừu t Hadoop và n p (load) chúng vào Non-SQL (hoạ ặc RDBMS) Cơ bản, Sqoop là 1 công c dòng l nh làm SQL thành Hadoop và Hadoop thành SQL Nó là ụ ệ

1 trình thông d ch dòng l nh Nó tị ệ ạo MapReduce job đằng sau để import d ữliệu t CSDL ừ bên ngoài vào HDF S.

Tất c các Hả ệ thống quản lý cơ sở ữ liệu hiện có đều được thiết kế với tiêu chuẩn d SQL Tuy nhiên, m i DBMS khác nhau v ỗ ề phương ngữ ở một mức độ nào đó Vì vậy, s ự khác biệt này đặt ra nh ng thách th c khi chuy n d ữ ứ ể ữliệu qua các h ệthống K t n i Sqoop ế ố là thành phần giúp vượt qua những thách th c này.ứ

Việc truy n tài li u gi a Sqoop Hadoop và mề ệ ữ ạng lưới hệ thống tàng trữ bên ngoài được triển khai v i sớ ự trợ giúp của những đầu n i cố ủa Sqoop Sqoop có nh ng trình liên ữ kết để thao tác v i mớ ột loạt cơ sở tài li u quan h ệ ệphổ ậ c p, g m có MySQL, PostgreSQL, ồ Oracle, SQL Server và DB2 M i trình liên k t này biỗ ế ết cách tương tác với DBMS tương quan c a nó Ngoài ra còn có m t trình liên kủ ộ ết JDBC chung để liên k t v i b t kế ớ ấ ể cơ sở tài liệu nào tương hỗ giao th c JDBC c a Java Ngoài ra, Sqoop Big data cung ứ ủ ứng những trình liên kết MySQL và PostgreSQL đượ ối ưu hóa sửc t d ng nh ng API dành riêng cho ụ ữ cơ sở tài liệu để triển khai chuy n hàng lo t m t cách hi u su t cao ể ạ ộ ệ ấ

Hình 2.9: C u trúc và cách th c hoấ ứ ạt động c a Sqoop ủ

Ngoài việc hỗ trợ nhiều dạng dữ liệu, Sqoop còn tích hợp nhiều trình kết nối bên thứ ba khác nhau để kết nối tới các kho dữ liệu, từ kho dữ liệu doanh nghiệp (bao gồm Netezza, Teradata và Oracle) đến các cơ sở dữ liệu NoSQL (chẳng hạn như Couchbase) Tuy nhiên, các đầu nối này không đi kèm với gói Sqoop; chúng cần được tải xuống riêng và có thể dễ dàng được thêm vào cài đặt Sqoop hiện có.

Xử lý phân tích s d ng Hadoop yêu c u t i mử ụ ầ ả ột lượng l n d ớ ữliệu t các ngu n khác ừ ồ nhau vào các c m Hadoop Quá trình t i dụ ả ữ ệ li u hàng loạt này vào Hadoop, t các nguừ ồn không đồng nhất và sau đó xử lý nó, đi kèm với một số thách thức nhất định Duy trì và đảm bảo tính nh t quán của d liệu và đảm bảo s d ng hi u quả tài nguyên, là một s ấ ữ ử ụ ệ ố yếu t cố ần xem xét trước khi lựa chọn cách ti p cế ận phù hợp để ả ữ t i d liệu

 Tải dữ liệu bằng Scripts

Cách ti p c n truy n th ng c a vi c s d ng t p lế ậ ề ố ủ ệ ử ụ ậ ệnh để ả ữ liệ t i d u không phù hợp với vi c t i dệ ả ữ liệu hàng lo t vào Hadoop; cách ti p c n này không hi u qu và r t tạ ế ậ ệ ả ấ ốn thời gian

 Truy c p tr c ti p vào d ậ ự ế ữliệu bên ngoài thông qua ng d ng Map-Reduce ứ ụ Cung c p quy n truy c p tr c ti p vào dấ ề ậ ự ế ữ liệu ở các hệ thống bên ngoài (mà không cần t i vào Hadoop) cho các ng d ng thu nh bả ứ ụ ỏ ản đồ sẽ làm ph c t p các ứ ạ ứng dụng này

Vì v y, cách làm này không kh thi ậ ả

Ngoài kh ả năng làm việc v i d ớ ữliệu kh ng l , Hadoop có th làm vi c v i d ổ ồ ể ệ ớ ữliệu ở nhiều d ng khác nhau Vì vạ ậy, để ải dữ liệu không đồ t ng nhất như vậy vào Hadoop, các công cụ khác nhau đã được phát triển Sqoop và Flume là hai công c t i d ụ ả ữliệu như vậy

Sqoop được sử dụng để nhập dữ liệu từ các nguồn dữ liệu có cấu trúc như

Flume được sử dụng để chuyển dữ liệu phát trực tuyến hàng loạt sang HDFS

HDFS là một hệ thống tệp phân tán được sử dụng bởi hệ sinh thái Hadoop để lưu trữ dữ liệu

Sqoop có kiến trúc dựa trên trình kết nối Trình kết nối biết cách kết nối với nguồn dữ liệu tương ứng và tìm nạp dữ liệu

Flume có kiến trúc dựa trên tác nhân Ở đây, một đoạn mã được viết (được gọi là

‘tác nhân’) đảm nhiệm việc tìm nạp dữ liệu

HDFS có kiến trúc phân tán nơi dữ liệu được phân phối trên nhiều nút dữ liệu

HDFS là điểm đến để nhập dữ liệu bằng Sqoop

Dữ liệu chuyển đến HDFS thông qua không hoặc nhiều kênh

HDFS là điểm đến cuối cùng để lưu trữ dữ liệu

Tải dữ liệu Sqoop không theo hướng sự kiện

Tải dữ liệu Flume có thể được thúc đẩy bởi một sự kiện

HDFS chỉ lưu trữ dữ liệu được cung cấp cho nó bằng bất kỳ phương tiện nào Để nhập dữ liệu từ các nguồn dữ liệu có cấu trúc, người ta chỉ phải sử dụng các lệnh Sqoop, vì các trình kết nối của nó biết cách tương tác với các nguồn dữ liệu có cấu trúc và tìm nạp dữ liệu từ chúng Để tải dữ liệu phát trực tuyến như tweet được tạo trên Twitter hoặc tệp nhật ký của máy chủ web, nên sử dụng Flume Tác nhân Flume được xây dựng để tìm nạp dữ liệu phát trực tuyến

HDFS có các lệnh shell tích hợp riêng để lưu trữ dữ liệu vào đó HDFS không thể nhập dữ liệu phát trực tuyến

Specify JDBC connect string Specify connection manager class to use Manually specify JDBC driver class to use Override $HADOOP_MAPRED_HOME Print usage instructions

Set path for a file containing the authentication password password from console Set authentication password Set authentication username Print more information while working Optional properties file that provides connection parameters

–relaxed-isolation Set connection transaction isolation to read uncommitted for the mappers

Tạo m t t p l nh import d u RDMS (MySql) và h ộ ậ ệ ữliệ ệthống Hadoop

MYSQL_TABLE=covid_daily sqoop import connect jdbc:mysql://$MYSQL_HOST/$MYSQL_DB table $MYSQL_TABLE

username $MYSQL_USER password $MYSQL_PASS -m 1

Dữ liệu COVID đã được xử lý và lưu trữ trong cơ sở dữ liệu MySQL với địa chỉ IP máy chủ là 192.168.88.200 và cổng mặc định là 3306 Để tự động kết nối với hệ thống MySQL, Sqoop cung cấp các lệnh MySQL_USER, MySQL_PASS, tên cơ sở dữ liệu đích và bảng dữ liệu cần nhập vào hệ thống Hadoop Ngoài ra, Sqoop còn cung cấp các trình xử lý để nhập dữ liệu vào hệ thống Hadoop.

Hình 2.10: Sqoop ánh x ạ ra đoạn mã java Sqoop cũng cung cấp một tập lệnh để làm nhiệm v export d ụ ữliệu vào RDMS như sau:

MYSQL_TABLE=covid_daily sqoop export connect jdbc:mysql://$MYSQL_HOST/$MYSQL_DB table $MYSQL_TABLE username

$MYSQL_USER password $MYSQL_PASS

export-dir /emp/emp_data

Cú pháp Export Sqoop được liệt kê lại như sau:

Specify JDBC connect string Specify connection manager class to use Manually specify JDBC driver class to use Override $HADOOP_MAPRED_HOME Print usage instructions

Set path for a file containing the authentication password

Read password from console Set authentication password Set authentication username Print more information while working Optional properties file that provides connection parameters

MÔ HÌNH TOÁN

Giới thi u Linear Regression ệ

Ví dụ đơn giản: Một căn nhà rộng 𝑥 1 𝑚 2 𝑣à 𝑐ó 𝑥 2 phòng ng và cách trung tâm ủ thành ph ố𝑥 3 km có giá tr bao nhiêu Gi s chúng ta có s ị ả ử ốliệu th ng kê t ố ừ 1000 căn nhà trong thành phố đó, liệu r ng khi có mằ ột căn nhà mới với các thông số về diện tích, số phòng ng và kho ng cách t i trung tâm, chúng ta có th dủ ả ớ ể ự đoán được giá của căn nhà đó không? Nếu có thì hàm dự đoán 𝑦=𝑓(𝑥) sẽ có dạng như thế nào? Ở đây 𝑥 [𝑥 1 ,𝑥 2 ,𝑥 3 ] là m t vector hàng ch a giá tr input, y là m t sộ ứ ị ộ ố vô hướng (scalar) bi u diể ễn output (t c giá cứ ủa căn nhà trong giá trị này)

Một cách đơn giản nhất, chúng ta có th ểthấ ằy r ng: i) di n tích nhà càng l n thì giá ệ ớ nhà càng cao; ii) s ố lượng phòng ng càng l n thì giá nhà càng cao; iii) càng xa trung tâm ủ ớ thì giá nhà càng gi m M t hàm sả ộ ố đơn giản nh t có th mô t m i quan hấ ể ả ố ệ giữa giá nhà và 3 đại lượng đầu vào là: y ≈ f(x) = y f(x) = x 1 1 ω + x 2 ω 2 + x 3 ω 3 + ω 0 (1) Trong đó 𝜔 1 ,𝜔 2 ,𝜔 3 ,𝜔 0 là h ng sằ ố, 𝜔 0 còn được gọi là bias M i quan hố ệ 𝑦≈ 𝑓(𝑥) là mối quan h tuy n tính (linear) Bàệ ế i toán chúng ta đang làm là một bài toán thuộc loại regression Bài toán đi tìm các hệ số tối ưu {𝜔 1 ,𝜔 2 ,𝜔 3 ,𝜔 0 } chính vì vậy được g i là ọ bài toán Linear Regression

Lưu ý cần nhớ: y là giá trị thực tế của kết quả (dựa trên dữ liệu thống kê có trong tập dữ liệu huấn luyện), trong khi 𝑦 là giá trị được mô hình hồi quy tuyến tính dự đoán được Nói chung y và 𝑦 là hai giá trị khác nhau do có sai số mô hình Tuy nhiên, chúng ta mong muốn sai số này là rất nhỏ.

Chú ý 2: Linear hay tuy n tính ế hiểu một cách đơn giản là th ng, ph ng Trong không ẳ ẳ gian hai chi u, m t hàm sề ộ ố được g i là tuy n tính nọ ế ếu đồ thị ủ c a nó có d ng mạ ột đường thẳng Trong không gian ba chi u, một hàm số ề được goi là tuy n tính nế ếu đồthị c a nó ủ có d ng m t m t ph ng Trong không gian nhiạ ộ ặ ẳ ều hơn 3 chiều, khái ni m m t ph ng không ệ ặ ẳ còn phù h p nợ ữa, thay vào đó, một khái niệm khác ra đời được g i là siêu m t ph ng ọ ặ ẳ(hyperplane) Các hàm s tuyố ến tính là các hàm đơn giản nh t, vì chúng thu n ti n trong ấ ậ ệ việc hình dung và tính toán Chúng ta sẽ được th y trong các bài vi t sau, tuy n tính rấ ế ế ất quan trọng và h u ích trong các bài toán Machine Learning Kinh nghi m cá nhân tôi cho ữ ệ thấy, trước khi hiểu được các thu t toán phi tuy n (non-linear, không ph ng), chúng ta cậ ế ẳ ần nắm vững các k ỹthuật cho các mô hình tuy n tính ế

Phân tích toán học

Mục này gi i thiớ ệu tóm lược phương pháp tối ưu đàn kiến Trước khi mô tả thu t ậ toán t ng quát, ta c n tìm hi u v ổ ầ ể ề đồthị ấu trúc cho bài toán t c ối ưu tổ ợp h

Trong phương trình (1) ở trên nếu chúng ta đặt 𝑤= [𝜔0,𝜔 1 ,𝜔 2 ,𝜔 3 ] 𝑇 = là vector (cột) h s c n ph i tệ ố ầ ả ối ưu và 𝑥 = [1,𝑥 1 ,𝑥 2 ,𝑥 3 ] là vector (hàng) d ữliệu đầu vào mở rộng

Số 1 được thêm vào ở đầu hàng để phép tính đơn giản hơn và thuận tiện hơn cho việc tính toán Khi đó phương trình (1) có thể được viết dướ ạng: i d

Chúng ta mong mu n r ng s sai khác e gi a giá trố ằ ự ữ ị thực y và giá tr dị ự đoán 𝑦 là nhỏ nhất Nói cách khác, chúng ta mu n giá tr ố ị sau đây càng nhỏ càng t t ố

2 đểthuận ti n cho việc tính toán (khi đạo hàm thì h sệ ệ ố 1 2 s b triẽ ị ệt tiêu Chúng ta cần 𝑒 2 vì 𝑒=𝑦−𝑦 có th là m t s âm, vi c nói e nh ể ộ ố ệ ỏnhất s ẽ không đúng vì khi 𝑒= −∞ là r t nh ấ ỏ nhưng lại sai lệch rất lớn

28 Điều tương tự xảy ra với tất cả các cặp (input, outcome) (𝑥 𝑗 ,𝑦 𝑖 ),𝑖= 1,2, …𝑁, với

N là số lượng dữ liệu quan sát được Điều chúng ta mu n, t ng sai s là nhố ổ ố ỏ nhất, tương đương với việc tìm w để hàm số sau đạt giá trị nhỏ nhất:

Hàm số ℒ(𝑤) được g i là hàm mọ ất mát (loss function) c a bài toán Linear ủ Regression Chúng ta luôn mong mu n r ng s mố ằ ự ất mát (sai s ) là nh ố ỏnhất, điều đó đồng nghĩa với việc tìm vector h s w sao cho giá tr c a hàm m t mát này càng nh càng t t ệ ố ị ủ ấ ỏ ố Giá tr c a w làm cho hàm mị ủ ất mát đạt giá trị nhỏ nhất được gọi là điểm tối ưu (optimal point), ký hiệu:

𝑊 ℒ(𝑤) Trước khi đi tìm lời giải, chúng ta đơn giả hóa phép toán trong phương trình hàm n mất mát (2) Đặt 𝑦= [𝑦 1 ;𝑦 2 ; … ;𝑦 𝑁 ] là m t vector c t ch a tộ ộ ứ ất c các output c a training ả ủ data; 𝑋= [𝑋1;𝑋 2 ; … ;𝑋 𝑁 ] là ma tr n dậ ữ liệu đầu vào (m r ng) mà m i hàng c a nó là ở ộ ỗ ủ một điểm dữ liệu Khi đó hàm số mất mát ℒ(𝑤) được viết dưới d ng ma trạ ận đơn giản hơn:

2ǁ𝑦−𝑋 𝑤ǁ 2 2 (3) Với ǁ𝑧ǁ 2 là Euclidean norm (chu n Euclid, hay kho ng cách Euclid), nói cách khác ẩ ả ǁ𝑧ǁ 2 2 là t ng cổ ủa bình phương mỗi ph n t c a vector z Tầ ử ủ ới đây, ta đã có mộ ạng đơn t d giản của hàm mất mát được viết như phương trình (3).

3.2.4 Nghiệm cho bài toán Liner Regression

Cách phổ biến nhất để tìm nghiệm của bài toán tối ưu là giải phương trình đạo hàm bằng 0 Tất nhiên, đó là khi việc tính đạo hàm và việc giải phương trình đạo hàm bằng 0 không quá phức tạp Thật may mắn, với các mô hình tuyến tính, hai việc này là khả thi.

29 Đạo hàm theo w c a hàm m t mát là: ủ ấ

𝜕𝑤 =𝑋 𝑇 (𝑋𝑤−𝑦) Phương trình đạo hàm bằng 0 tương đương với:

𝑋 𝑇 𝑋𝑤=𝑋 𝑇 𝑦 ≜ 𝑏 (4) (Ký hiệu 𝑋 𝑇 𝑦 ≜ 𝑏 nghĩa là đặt 𝑋 𝑇 𝑦 b ng b) ằ

Nếu ma tr n vuông ậ 𝐴=≜ 𝑋 𝑇 𝑋𝑤 khả ngh ch (non-singular hay invertible) thì ị phương trình (4) có nghiệm duy nhất: 𝑤=𝐴 −1 𝑏

Với khái ni m gi nghệ ả ịch đảo, điểm tối ưu của bài toán Linear Regression có dạng:

MÔ HÌNH THỰC NGHIỆM

Giới thi u h ệ ồi quy đa thức

Hồi quy đa thức là m t d ng h i quy tuyộ ạ ồ ến tính trong đó mối quan h ệgiữa các biến độc l p x và bi n ph thuậ ế ụ ộc y được mô hình hoá dưới dạng đa thức b c n H i quy ậ ồ đa thức phù h p v i m i quan h phi tuy n gi a giá trợ ớ ố ệ ế ữ ị trung bình có điều kiện tương ứng c a y, ủ được ký hi u là E(y|x) ệ

4.1.1Nguyên nhân dùng hồi quy đa thức

Có m t s m i quan h mà nhà nghiên c u sộ ố ố ệ ứ ẽ giả thuyết là đường cong Rõ ràng, loại trường hợp như vậy s bao g m mẽ ồ ột s hố ạng đa thức

Kiểm tra dư lượng, nếu chúng ta cố gắng điều chỉnh một mô hình tuyến tính cho phù h p v i dợ ớ ữ liệu cong, thì m t biộ ểu đồ phân tán c a phủ ần dư (trục Y) trên b dộ ự đoán (trục X) s có các bẽ ản vá s có nhiẽ ều phần dư dương ở giữa Do đó trong tình huống như vậy là không thích hợp.

Một gi ả định trong phân tích h i quy tuy n tính bồ ế ội thông thường là t t c các biấ ả ến độc lập là độc lập Trong mô hình hồi quy đa thức, gi ảthiết này không được thoả mãn

4.1.2Công dụng của hồi quy đa thức

Về cơ bản đượ ử dụng để xác địc s nh ho c mô t ặ ảhiện tượng phi tuyến tính như:

- Tốc độ phát triển c a các mô ủ

- Tiến tri n c a d ch bể ủ ị ệnh

- Phân b ố đòng vị của cacbon trong tr m tích h ầ ồ

Mục đích chính của mô hình hồi quy là mô tả giá trị của một biến phụ thuộc theo các giá trị của các biến độc lập Trong hồi quy đơn giản, một phương trình được sử dụng để thể hiện mối quan hệ này:

Y = a +bx + e Với y là bi n ph ế ụthuộc, a là h s ệ ốchặn c a y, b là h s góc và e là t l l i Trong ủ ệ ố ỉ ệ ỗ nhiều trường hợp, mô hình tuyến tính này sẽ không hoạt động Ví dụ nếu chúng ta phân tích quá trình s n xu t t ng h p hoá h c theo nhiả ấ ổ ợ ọ ệt độ mà quá trình t ng h p di n ra trong ổ ợ ễ những trường hợp như vậy chúng ta x d ng mô hình b c hai ử ụ ậ

Y = a + b 1 x + b 2 2 + e Với y là biến phụ thuộc vào x, a là chặn y và e là t l l i Nói chung chúng ta có ỉ ệ ỗ thể mô hình hoá nó cho giá tr ịthứ n Tổng quát như sau:

Vì hàm h i quy tuy n tính theo các biồ ế ến chưa biết, do đó các mô hình này là tuyến tính từ điểm ước lược Do đó, thông qua kỹ thuật Least Square, hay tính giá trị phản hồi là y

Với phần thực nghiệm này chúng ta có tập dữ liệu covid-19 được cung cấp ở trên Ý tưởng của bài toán v i t p d ớ ậ ữliệu cho trước lấy ra 95% d ữliệu để train mô hình còn lại 5% dữ liệu để test mô hình vừa train được Từ đó hình thành một mô hình train Mong muốn là d ự đoán 30 ngày kế tiếp mô hình s d ẽ ự đoán tình hình dịch bệnh có chiều hướng như thế nào

Sau đây là mộ số kết quả sau khi chạy thực nghiệm đã được ghi nhân lại và được trực quan hoá dưới dạng biểu đồ line

32 Hình 4.1: Mô hình d ự đoán xu hướng dịch b nh Covid hàng ngày ệ

Hình 4.2: D ự đoán số ca mắc bệnh được xác định hàng ngày Ưu điểm của việc s d ng hử ụ ồi quy đa thức:

 Phạm vi r ng cộ ủa hàm có th ể được phù hợp v i nó ớ

 Đa thức về cơ bản phù hợp với nhiều độ cong

 Đa thức cung c p giá tr gấ ị ần đúng nhất của mối quan h ệgiữa các bi n ph vào biế ụ ến đọ ậc l p

Hình 4.3: D ự đoán tình trạng hồi ph c c a bụ ủ ệnh nhân sau khi nhiễm

Với hình 4.3 thì đồ thị là một đường cong phức tạp với hồi quy đa thức hệ thống cũng đưa ra một đường cong gần đúng so với thực tế

Hình 4.4: Mô t tình hình t vong khi b nh nhân nhi m Covid ả ử ệ ễ

Tương tự h i quồ y đa thức cũng đưa ra dự đoán với một đường cong ph c t p so vứ ạ ới dữ liệu th c t ự ế

Nhược điểm của vi c s d ng hệ ử ụ ồi quy đa thức:

 Chúng quá nh y c m v i các y u t ngo i lai ạ ả ớ ế ố ạ

 Sự hiện diện của một hoặc hai điểm ngo i l trong dạ ệ ữ liệu có thể ảnh hưởng nghiêm trọng đến k t qu c a mế ả ủ ột phân tích hi tuyến

 Ngoài ra đáng tiếc là có ít công c xác thụ ực mô hình hơn để phát hi n các ngo i lệ ạ ệ trong h i quy phi tuy n so v i h i quy tuy n tính.ồ ế ớ ồ ế

TRỰC QUAN HÓA DỮ LIỆU

D ữ liệu không gian địa lý

Bản đồ lấy dữ liệu toạ độ trên địa cầu và chiếu lên một mặt ph ng sao cho khoẳ ảng cách và hình dạng trên địa cầu được hi n th gể ị ần đúng bằng hình dạng và khoảng cách trên m t ph ng 2D Ngoài ra có th ặ ẳ ểhiển th các giá tr d ị ị ữliệu ở các vùng khác nhau bằng cách tô màu các vùng đó trong bản đồ theo dữ liệu Trong một số trường hợp có thể hữu ích n u bóp méo các khu v c khác nhau theo m t sế ự ộ ố lượng khác (ví d : sụ ố lượng dân số) hoặc đơn giản hoá m i khu v c thành ph m t hình vuông Nh ng hình ỗ ự ố ộ ữ ảnh như vậy được gọi là bản đồ

Hình 5.1: Biểu đồ mô t các ca nhiả ễm ở các khu v c trên toàn c u ự ầ

Biểu đồ Treemaps

Biểu đồ Treemap là dạng trực quan hóa dữ liệu phân cấp, hiển thị dữ liệu dưới dạng một hình chữ nhật lớn được chia thành các hình chữ nhật nhỏ hơn để biểu thị tỷ lệ Các hình chữ nhật con này có thể được lồng vào nhau theo dạng đệ quy để biểu thị các cấp khác nhau trong phân cấp dữ liệu.

Hình 5.2: Biểu đồ ỉ lệ theo số lượng ca nhiễ t m ở các qu c gia trên thố ế giới

Biểu đồ bong bóng

Biểu đồ bong bóng kết hợp với to ạ đoạ địa lý đểthể hiện được tình hình dịch bệnh ở các nói trên th ếgiới Biểu đồ bong bóng th ểhiện 2 giá tr là v trí và s ị ị ố lượng ca nhiễm tỉ l theo chu vi cệ ủa bong bóng, giúp người nhìn có cái nhìn trực quan hơn về tình hình dịch b nh covid-19 trên toàn cệ ầu.

Hình 5.3: Biểu đồ bong bóng th ểhiện tình tr ng d ch b nh lây lan theo th i gianạ ị ệ ờVới biểu đồ bong bóng (hình 5.3) mô tr chi ti t khả ế ả năng lây lan dịch b nh trên ệ toàn c u theo th i gian thầ ờ ực, người nhìn có th ểthấy được các điểm bong bóng càng ngày càng l n theo th i gian lây lan d ch bớ ờ ị ệnh t khi d ch covid bừ ị ắt đầu có m t trên th ặ ếgiới và được ghi nh n ngày 22- -2020 ậ 01

HƯỚNG PHÁT TRIỂN ĐỀ TÀI

ETL trong Data Warehoue

ETL là vi t t t cế ắ ủa Extract - Transform - Load (tạm d ch: Trích xu - ị ất biến đổi - tải) Trong điện toán, trích xu - ất biến đổi - t i (ETL) là quy trình chung sao chép d ả ữliệu từ m t ho c nhi u ngu n vào h ộ ặ ề ồ ệthống đích đại di n cho d ệ ữliệu khác v i ngu n Quá trình ớ ồ ETL đã trở thành m t khái ni m ph ộ ệ ổbiến trong những năm 1970 và thường được s dử ụng trong kho d ữliệu.

Extract/Trích xuất là quá trình đọc dữ ệ ừ li u t cơ sở d liệu Trong giai đoạn này, ữ dữ liệu được thu thập, thường là từ nhiều loại ngu n khác nhau ồ

Transform/Biến đổi là quá trình chuyển đổ ữ liệu đượi d c trích xu t tấ ừ biểu mẫu trước đó thành biểu mẫu cần có để có thể được đặt vào cơ sở dữ liệu khác Chuyển đổi xảy ra b ng cách s d ng các quy t c ho c b ng tra c u ho c b ng cách k t h p dằ ử ụ ắ ặ ả ứ ặ ằ ế ợ ữ liệu này v i d ớ ữliệu khác

Load/Tải là quá trình ghi chép d ữliệu vào cơ sở ữ d liệu đích

Một h ệthống ETL được thi t k phù h p s trích xu t d ế ế ợ ẽ ấ ữliệu t các h ừ ệthống ngu n, ồ thực thi các tiêu chu n v tính nh t quán và chẩ ề ấ ất lượng dữ liệu, tuân th dủ ữ liệu để các nguồn riêng bi t có thệ ể được s d ng cùng nhau và cu i cùng cung c p dử ụ ố ấ ữ liệu ở định dạng sẵn sàng để các nhà phát triển ứng d ng có th xây d ng ng dụ ể ự ứ ụng và người dùng cuối có th ể đưa ra quyết định

Vì vi c trích xu t d ệ ấ ữliệu c n có thầ ời gian, nên thường th c hi n song song ba giai ự ệ đoạn Trong khi dữ liệu đang được trích xu t (extract), m t quá trình chuyấ ộ ển đổi (Transform) khác sẽ thực thi trong khi x lý dử ữ liệu đã nhận và chu n bẩ ị để ả t i trong khi quá trình t i d ả ữliệu bắt đầu mà không c n ch ầ ờ hoàn thành các giai đoạn trước

Hình 6.3: Cách th c hoứ ạt động c a ETL ủ

6.2.1Giai đoạn trích xu t (Extract) ấ Đây là phần đầu tiên của quy trình ETL, liên quan đến vi c trích xu t d ệ ấ ữliệu t các ừ hệ thống nguồn

Rất ít doanh nghi p ch sệ ỉ ử dụng m t loộ ại dữ liệu ho c hặ ệthống Hầu h t doanh ế nghiệp qu n lý d ả ữliệ ừu t nhi u ngu n khác nhau và s d ng m t s công c phân tích d ề ồ ử ụ ộ ố ụ ữ liệu để tối ưu hóa quá trình quản trị Để d ữliệu được chuyển đến một đích mới, trước tiên nó phải được trích xuất từ các nguồn.

Trong bước đầu tiên c a quy trình ETL, dủ ữ liệu có c u trúc và không cấ ấu trúc được nhập và h p nh t vào mợ ấ ột kho lưu trữ duy nh t D ấ ữliệu thô có th ể được trích xu t t ấ ừnhiều nguồn khác nhau, bao gồm:

- Cơ sở ữ d liệu hi n có ệ

- ng d ng bán hàng và ti p th Ứ ụ ế ị

- ng d ng và thi t b Ứ ụ ế ị di động

- H ệthống qu n lý khách hàng CRM ả

- N n t ng lề ả ưu trữ ữ d liệu

Mặc dù có thể xử lý thủ công dữ liệu, nhưng việc trích xuất dữ liệu được mã hóa theo phương pháp thủ công sẽ mất nhiều thời gian và dễ xảy ra lỗi Các công cụ ETL tự động hóa quy trình trích xuất, tạo ra một quy trình làm việc hiệu quả và đáng tin cậy hơn.

6.2.2 Giai đoạn chuyển đổi (Transform)

Trong giai đoạn này c a quy trình ETL, các quy tủ ắc và quy định có thể được áp dụng để đảm b o chả ất lượng dữ liệu và khả năng truy cập Quá trình chuyển đổ ữ liệu i d bao g m m t s quy trình ph : ồ ộ ố ụ

Data cleansing: nh m mằ ục đích chỉ truyền d ữliệu "đúng" cho mục tiêu

Tiêu chu n hóa - quy tẩ ắc định dạng được áp d ng cho t p d ụ ậ ữliệu.

Loại b d u trùng lỏ ữliệ ặp - d u giữliệ ống nhau được lo i tr ạ ừhoặc lo i b ạ ỏ Xác minh - dữ liệu không th s dể ử ụng được xóa và dữ liệu dị thường được g n c ắ ờ cảnh báo

Sắp xếp - d ữliệu đượ ắc s p x p theo tế ừng lo ại.

Ngày đăng: 16/09/2024, 15:43

HÌNH ẢNH LIÊN QUAN

Hình 1.3: Kỹ thuật Unpivot để lưu trữ  vào h   ệ thố ng big data - báo cáo dữ liệu lớn khoa học máy tính
Hình 1.3 Kỹ thuật Unpivot để lưu trữ vào h ệ thố ng big data (Trang 7)
Hình 2.1: Ki n trúc Docker  ế - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.1 Ki n trúc Docker ế (Trang 9)
Hình 2.2 : Cơ chế hoạt động của Docker - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.2 Cơ chế hoạt động của Docker (Trang 10)
Hình 2.3: Th  t   ứ ự các bướ c ho ạt độ ng Docker - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.3 Th t ứ ự các bướ c ho ạt độ ng Docker (Trang 11)
Hình 2.4 : Sự  khác nhau trong ki n trúc Hypervisor và Docker  ế - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.4 Sự khác nhau trong ki n trúc Hypervisor và Docker ế (Trang 12)
Hình  5: Docker Image  2. - báo cáo dữ liệu lớn khoa học máy tính
nh 5: Docker Image 2 (Trang 13)
Hình 2.6: Mô hình Hadoop  Sau khi cài đặt thành công, ta dùng command $ docker ps để kiểm tra các container  đang chạy, dưới đây là hình ảnh kết quả sau khi thực hiện thành công - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.6 Mô hình Hadoop Sau khi cài đặt thành công, ta dùng command $ docker ps để kiểm tra các container đang chạy, dưới đây là hình ảnh kết quả sau khi thực hiện thành công (Trang 18)
Hình 2.8: Ki m tra tr ng thái hi n t i c a h   ể ạ ệ ạ ủ ệ thống - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.8 Ki m tra tr ng thái hi n t i c a h ể ạ ệ ạ ủ ệ thống (Trang 19)
Hình 2.7: Kiểm tra sau khi cài đặt thành công  Tiếp theo, ta truy cập http://localhost: 9870 để xem trạng thái hiện tại của hệ thống - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.7 Kiểm tra sau khi cài đặt thành công Tiếp theo, ta truy cập http://localhost: 9870 để xem trạng thái hiện tại của hệ thống (Trang 19)
Hình 2.9: C u trúc và cách th c ho ấ ứ ạt độ ng c a Sqoop  ủ - báo cáo dữ liệu lớn khoa học máy tính
Hình 2.9 C u trúc và cách th c ho ấ ứ ạt độ ng c a Sqoop ủ (Trang 21)
Hình 2. 10 : Sqoop ánh x   ạ ra đoạn mã java  Sqoop cũng cung cấ p một tập l ệnh để  làm nhiệm v  export d  ụữ liệu vào RDMS như sau: - báo cáo dữ liệu lớn khoa học máy tính
Hình 2. 10 : Sqoop ánh x ạ ra đoạn mã java Sqoop cũng cung cấ p một tập l ệnh để làm nhiệm v export d ụữ liệu vào RDMS như sau: (Trang 25)
Hình 4.2: D   ự đoán số  ca mắc b ệnh được xác đị nh hàng ngày - báo cáo dữ liệu lớn khoa học máy tính
Hình 4.2 D ự đoán số ca mắc b ệnh được xác đị nh hàng ngày (Trang 34)
Hình 4.3: D   ự đoán tình trạng hồi ph c c a b ụ ủ ệnh  nhân sau khi nhi ễm - báo cáo dữ liệu lớn khoa học máy tính
Hình 4.3 D ự đoán tình trạng hồi ph c c a b ụ ủ ệnh nhân sau khi nhi ễm (Trang 34)
Hình 4.4: Mô t  tình hình t  vong khi b nh nhân nhi m Covid  ả ử ệ ễ - báo cáo dữ liệu lớn khoa học máy tính
Hình 4.4 Mô t tình hình t vong khi b nh nhân nhi m Covid ả ử ệ ễ (Trang 35)
Hình 5.1 : Biểu đồ  mô t  các ca nhi ả ễm ở  các khu v c trên toàn c u  ự ầ - báo cáo dữ liệu lớn khoa học máy tính
Hình 5.1 Biểu đồ mô t các ca nhi ả ễm ở các khu v c trên toàn c u ự ầ (Trang 37)
Hình 5.2: Bi ểu đồ ỉ lệ theo số lượng ca nhiễ  t m ở các qu c gia trên th ố ế  giới - báo cáo dữ liệu lớn khoa học máy tính
Hình 5.2 Bi ểu đồ ỉ lệ theo số lượng ca nhiễ t m ở các qu c gia trên th ố ế giới (Trang 37)
Hình 5.3: Bi ểu đồ  bong bóng th   ể hiện tình tr ng d ch b nh lây lan theo th i gian ạ ị ệ ờ Với bi ểu đồ  bong bóng (hình 5.3) mô tr  chi ti t khảế ả năng lây lan dị ch b nh trên ệ toàn c u theo th i gian th ầ ờ ực, ngườ i nhìn có th  ể thấy được các đi - báo cáo dữ liệu lớn khoa học máy tính
Hình 5.3 Bi ểu đồ bong bóng th ể hiện tình tr ng d ch b nh lây lan theo th i gian ạ ị ệ ờ Với bi ểu đồ bong bóng (hình 5.3) mô tr chi ti t khảế ả năng lây lan dị ch b nh trên ệ toàn c u theo th i gian th ầ ờ ực, ngườ i nhìn có th ể thấy được các đi (Trang 38)
Hình 6.1:  Kiế n trúc c a Hive  ủ - báo cáo dữ liệu lớn khoa học máy tính
Hình 6.1 Kiế n trúc c a Hive ủ (Trang 39)
Hình 6.2: Sơ đồ mô t  quy trình làm vi c gi a Hive và Hadoop  ả ệ ữ - báo cáo dữ liệu lớn khoa học máy tính
Hình 6.2 Sơ đồ mô t quy trình làm vi c gi a Hive và Hadoop ả ệ ữ (Trang 40)
Hình 6.3: Cách th c ho ứ ạt độ ng c a ETL  ủ - báo cáo dữ liệu lớn khoa học máy tính
Hình 6.3 Cách th c ho ứ ạt độ ng c a ETL ủ (Trang 46)

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

TÀI LIỆU LIÊN QUAN

w