1. Trang chủ
  2. » Giáo Dục - Đào Tạo

CHỦ ĐỀ DATA STREAMING TRONG ĐIỆN TOÁN ĐÁM MÂY Môn học Điện toán đám mây

46 2 0

Đ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

Nội dung

Trang 1

KHOA ĐIỆN TỬ VIỄN THÔNG

BÀI TẬP TIỂU LUẬN

CHỦ ĐỀ: DATA STREAMING TRONG ĐIỆN TOÁN ĐÁM MÂY

Môn học : Điện toán đám mây

Sinh viên : Ngô Văn Trí - B20DCVT390

Trang 2

CHƯƠNG 1: GIỚI THIỆU VỀ ĐIỆN TOÁN ĐÁM MÂY VÀ DATA STREAMING 9

1.1 Tổng quan về điện toán đám mây 9

1.1.1 Khái niệm về điện toán đám mây 9

1.1.2 Các đặc điểm của điện toán đám mây 10

1.1.3 Các mô hình điện toán đám mây 12

1.1.3.a Mô hình dịch vụ: 12

1.1.3.b Mô hình triển khai: 14

1.1.4 Các ứng dụng điện toán đám mây: 15

1.2 Giới thiệu và Data Streaming 16

1.2.1 Khái niệm: 16

1.2.2 Đặc điểm của Data Streaming: 18

1.2.3 Ưu, nhược điểm của Data Streaming: 19

1.2.3.a Ưu điểm: 19

1.2.3.b Nhược điểm: 20

1.3 Data Streaming dựa trên môi trường Điện toán đám mây 20

1.3.1 Các thế hệ của hệ thống xử lý luồng dữ liệu: 21

1.3.2 Các use cases: 22

1.3.3 Scaling: 24

1.3.3.a Phân vùng dữ liệu: 24

1.3.3.b Phân vùng truy vấn: 25

1.3.4 Khả năng chịu lỗi 26

1.3.4.a Quản lý trạng thái và theo dõi sự kiện 26

1.3.4.b Xử lý lỗi và phát lại sự kiện 27

1.3.5 Những phiên bản cải tiến 27

1.4 Kết luận chương: 28

CHƯƠNG 2: TRIỂN KHAI MÔ HÌNH ỨNG DỤNG CỦA DATA STREAMING DỰA TRÊN MÔI TRƯỜNG ĐIỆN TOÁN ĐÁM MÂY 30

Trang 3

2.1 Tìm hiểu các phần mềm và môi trường triển khai 30

2.1.1 Azure event hubs 30

2.1.2 Azure Streaming Analytics 31

2.1.4 Power BI 32

2.2 Cài đặt, triển khai mô hình ứng dụng 33

2.2.1 Bài toán đặt ra 33

Trang 4

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

NIST National Institute of Standards andTechnology Viện Tiêu chuẩn và Công nghệ SOA Service Oriented Architecture Kiến trúc hướng dịch vụ

API Application Programming Interface Giao diện lập trình ứng dụng IaaS Infrastructure as a Service Dịch vụ dành cho Cơ sở hạ tầng PaaS Platform as a Service Dịch vụ dành cho Cơ sở nền tảng SaaS Software as a Service Dịch vụ dành cho Phần mềm HDFS Hadoop Distributed File System Hệ thống Tệp phân tán của Hadoop OLAP Online Analytical Processing Xử lý Phân tích Trực tuyến

AI Artificial Intelligence Trí tuệ nhân tạo

Trang 5

DANH MỤC HÌNH ẢNH

Hình 1.1: Các thế hệ data streaming 21

Hình 2.1: Azure Event Hubs 30

Hình 2.2: Azure Stream Analytics 32

Trang 6

PHÂN CHIA CÔNG VIỆC

Thành viên Công việc Mức độ hoàn thành Hoàng Đức Cường 1.1, 1.2, word Tốt

Ngô Văn Trí 1.3, 1.4, 2.1, 2.2, 2.2.1,2.2.2, 2.4, slide Tốt Bùi Văn Dũng 2.2.3, 2.3.1, thuyết trình Tốt

Trang 7

ĐẶT VẤN ĐỀ

Trong thời đại số hóa ngày nay, dữ liệu ngày càng trở nên phong phú và phức tạp hơn bao giờ hết Đối với các doanh nghiệp và tổ chức, việc nắm bắt và xử lý dữ liệu một cách hiệu quả không chỉ là một thách thức mà còn là một cơ hội để tạo ra giá trị cạnh tranh và phát triển.

Trong lĩnh vực điện toán đám mây, việc xử lý dữ liệu theo kiểu truyền thống có thể không còn đáp ứng được nhu cầu của các ứng dụng và dịch vụ đòi hỏi sự linh hoạt và thời gian thực Đặc biệt, khi nhu cầu về phân tích dữ liệu ngay lập tức (real-time analytics) và phản hồi nhanh chóng ngày càng tăng cao, việc sử dụng các phương pháp truyền thống có thể gặp phải nhiều hạn chế.

Trong bối cảnh này, khái niệm về data streaming đã trở thành một yếu tố quan trọng trong việc xử lý và phân tích dữ liệu trong môi trường điện toán đám mây Data streaming là một phương pháp linh hoạt cho phép dữ liệu được xử lý và phân tích ngay khi nó được tạo ra hoặc nhập vào hệ thống, thay vì chờ đợi cho đến khi toàn bộ dữ liệu được tích luỹ xong.

Tuy nhiên, mặc dù data streaming mang lại nhiều lợi ích, nhưng cũng đặt ra nhiều thách thức và vấn đề cần được giải quyết Cụ thể, các hệ thống data streaming phải đối mặt với các vấn đề như độ trễ (latency), độ tin cậy (reliability), khả năng mở rộng (scalability), và bảo mật dữ liệu.

Bên cạnh đó, việc tích hợp data streaming vào môi trường điện toán đám mây còn đòi hỏi sự hiểu biết sâu rộng về các công nghệ và dịch vụ đám mây, cũng như khả năng tương tác với các thành phần khác trong hệ thống.

Trang 8

Do đó, trong tiểu luận này, chúng ta sẽ đi sâu vào việc tìm hiểu về data streaming trong điện toán đám mây Chúng ta sẽ khám phá cách mà data streaming đóng vai trò quan trọng trong việc cải thiện khả năng xử lý và phân tích dữ liệu, đồng thời xem xét các thách thức và cơ hội mà nó mang lại Bằng cách này, chúng ta có thể hiểu rõ hơn về tầm quan trọng của data streaming và cách áp dụng nó trong các mô hình điện toán đám mây hiện đại.

Trang 9

CHƯƠNG 1: GIỚI THIỆU VỀ ĐIỆN TOÁN ĐÁM MÂY VÀ DATA STREAMING1.1 Tổng quan về điện toán đám mây

1.1.1 Khái niệm về điện toán đám mây

Đám mây (cloud) là một mô hình mà mọi thông tin đều được lưu trữ, tính toán, xử lý trong các máy chủ đặt trên Internet Do đó, điện toán đám mây được hiểu như cách thức áp dụng các kỹ thuật điện toán dụra trên Internet Người sử dụng có thể làm việc với các thông tin đó mà không cần phải hiểu biết vể công nghệ, kỹ thuật và hạ tầng cơ sở của đám mây, Khách hàng sẽ không còn lo ngai về các kiến thức chuyên môn để điều khiển công nghệ, máy móc và cơ sở hạ tầng, mà tại đây các chuyên gia trong "đám mây" của các nhà cung cấp sẽ giúp thực hiện điều đó.

Thuật ngữ "đám mây" ở đây là lối nói ần dụ chỉ mạng Internet và liên tường vể độ phức tạp của các cơ sở hạ tầng ở bên trong Ở mô hình điện toán, mọi lĩnh vực liên quan đến công nghệ thông tin đều được cung cấp dưới dạng các "dịch vụ", nó cho phép khách hàng truy cập vào các dịch vụ của một nhà cung cấp nào đó "trong đám mây" mả không cần phải có các kiến thức, kinh nghiệm về công nghệ, cũng như không cần quan tâm đến các cơ sở hạ tầng bên trong.

Tải nguyên, dữ liệu, phần mềm và các thông tin liên quan đều được quản lý trên các máy chủ ảo (chính là các "đám mây").

"Ứng dụng điện toán đám mây" là những ứng dụng trực tuyến trên Internet Trình duyệt là giao diện ứng dụng vận hành còn dữ liệu được lưu trữ và xử lý ở máy chủ của nhà cung cấp úng dụng đó.

Trang 10

Điện toán đám mây tính toán, sử dụng phần mềm, truy cập dữ liệu và dịch vụ lưu trữ mà khách hàng không cần biết vị trí địa lý và cấu hình của hệ thống cung cấp dịch vụ.

Viện Tiêu chuẩn và Công nghệ (NIST) đã đưa ra nghĩa định nghĩa cụ thể:

"Điện toán đám mây là một mô hình cho phép ở một vị trí thuận tiện, khách hàng có thể truy cập mạng theo yêu cầu và được chia sẻ tài nguyên máy tính (mạng, máy chủ, lưu trữ, ứng dụng và dịch vụ) được nhanh chóng từ nhà cung cấp Trong trường hợp xấu nhất thì cũng phải cung cấp dịch vụ hoạt động ở mức cao nhất".

Hiểu theo cách khác, điện toán đám mây là sự thực hiện kết hợp nhiều công nghệ hiện có (SOA-Service Oriented Architecture - Kiến trúc hướng dịch vụ) với những ý tưởng mới để tạo ra một giải pháp công nghệ thông tin đầy đủ.

Với những ưu điểm trên việc áp dụng mô hình điện toán đám mây là một hướng lựa chọn tất yếu trong tương lai

1.1.2 Các đặc điểm của điện toán đám mây

Mô hình điện toán đám mây có những đặc điểm sau:

- Sự linh động (Agility) giúp người dùng nhanh chóng sử dụng dịch vụ và không tốn kém đầu tư vào xây dựng cơ sờ hạ tầng.

- Giao diện lập trình ứng dụng (Application Programming Interface - API) giúp người lập trình tiếp cận và tương tác với phần mềm đám mây thông qua giao diện sử dụng.

- Chi phí (Cost) giảm được đáng kể khi sử dụng đám mây công cộng, chi phí vốn để xây dựng cơ sở hạ tầng có thể chuyển qua cho hoạt động khác Điều này bỏ qua rào cản thuế quan, tại đây cơ sở hạ tầng được cung cấp bởi bên thứ ba và không cần phải mua luôn một lần để tính toán hay sử dụng công việc không thường xuyên tính toán chuyên sâu.

Trang 11

- Độc lập về vị trí và thiết bị (Device and location independence) cho phép người dùng truy cập hệ thống với bất kỳ nơi đâu và trình duyệt nảo, ở bất kì vị trí nào từ những thiết bị đang sử dụng như máy tính hay thiết bị di động Khi cơ sở hạ tầng được cung cấp bởi bên thứ ba thì khách hàng có thể truy cập thông qua Internet.

- Cho phép chia sê các nguồn tải nguyên và tính chi phí khi sử dụng cho nên:

 Tập trung đầu tư được cơ sở hạ tầng  Chia sẻ để tăng hiệu suất hoạt động  Cải tiến để tăng hiệu suất hệ thống

- Độ tin cậy (Reliability) sẽ được cải tiến thông qua những góp ý của khách hàng giúp điện toán đám mây được hoàn thiện, thiết kế phù hợp cho việc kinh doanh và khắc phục những lỗi ảnh hưởng tới hệ thống và khách hàng.

- Khả năng mờ rộng (Scalability) thông qua việc cung cấp động có thể mở rộng tùy theo yêu cầu của khách hàng.

- Bảo mật (Security) có thể tập trung dữ liệu, gia tăng các hình thức bảo mật Các mối quan tâm như: mất quyền kiểm soát nhũng dữ liệu nhạy cảm và thiếu bảo mật tại nơi lưu trữ dữ liệu Bảo mật luôn được đặt lên hảng đầu, đây là nhiệm vụ an ninh phía bên nhà cung cấp phải đạm bảo khi khách hàng sử dụng Nhà cung cấp thường xuyên ghi nhật kí truy cập, để theo dõi và quản lí.

- Bảo trì (Maintenance) ứng dụng điện toán đám mây dễ dàng thực hiện công việc này nếu chúng không được cài đặt trên mỗi máy tính của mỗi người dùng.

Trang 12

1.1.3 Các mô hình điện toán đám mây

1.1.3.a Mô hình dịch vụ:

Các nhà cung cấp dịch vụ điện toán đám mây cung cấp các dịch vụ của họ theo ba mô hình cơ bản:

Dịch vụ dành cho Cơ sở hạ tầng (IaaS- Infrastructure as a Service).

IaaS là một dạng dịch vụ phát triển mạnh mẽ trong lĩnh vực điện toán đám mây, cho phép người dùng thuê và truy cập vào cơ sở hạ tầng máy tính mà không cần phải quản lý trực tiếp phần cứng IaaS cung cấp các nguồn tài nguyên như firewalls, load balancers, và các địa chỉ IP, trong khi hệ điều hành và các ứng dụng do người dùng tự cài đặt và cập nhật Điều này mang lại sự linh hoạt cho việc sử dụng tài nguyên và giúp dễ dàng quản lý hơn.

Dịch vụ IaaS phổ biến được cung cấp bởi các nhà cung cấp như Amazon, Google, và Microsoft Để quản lý IaaS hiệu quả, việc phát triển các templates cho các dịch vụ đám mây giúp tạo ra kế hoạch chi tiết để xây dựng hệ thống sẵn sàng sử dụng và tránh việc phải di chuyển giữa các đám mây khác nhau.

So với việc sở hữu và quản lý máy chủ, không gian lưu trữ, và thiết bị mạng, việc thuê dịch vụ IaaS mang lại sự linh hoạt và tiết kiệm chi phí Chi phí được tính dựa trên việc sử dụng chức năng và tài nguyên, phản ánh mức độ hoạt động thực tế của doanh nghiệp Điều này đánh dấu sự tiến bộ so với các giải pháp lưu trữ web và máy chủ cá nhân.

Dịch vụ dành cho Cơ sở nền tảng (PaaS-Platform as a Service).

PaaS là một giải pháp trong lĩnh vực điện toán đám mây, cung cấp cho người dùng một bộ công cụ toàn diện để phát triển, thử nghiệm và triển khai ứng dụng một cách dễ dàng trên môi trường đám mây Khách hàng

Trang 13

thường là các nhà phát triển phần mềm độc lập (ISV), chúng có thể xây dựng và cung cấp các ứng dụng phần mềm cho khách hàng cuối, có thể sử dụng trong nội bộ tổ chức hoặc được cung cấp dưới dạng dịch vụ ra bên ngoài.

Một trong những đặc điểm chính của PaaS là khả năng phát triển ứng dụng trên nền tảng Web Các nhà cung cấp PaaS phổ biến như Microsoft Azure, Google App Engine và Amazon Web Services hỗ trợ nhiều ngôn ngữ lập trình như NET, Java, Python và Ruby Tuy nhiên, mặc dù có sự đa dạng này, việc không đồng nhất giữa các nhà cung cấp PaaS về ngôn ngữ, công cụ phát triển và API có thể tạo ra những rào cản trong việc di chuyển hoặc tương tác giữa các ứng dụng trên các nền tảng khác nhau Ngoài ra, PaaS cung cấp một môi trường tính toán toàn diện và các giải pháp đa lớp, giúp người dùng triển khai ứng dụng mà không cần phải quan tâm đến sự phức tạp của hạ tầng phần cứng và phần mềm bên dưới Điều này cho phép người dùng tập trung vào việc phát triển ứng dụng một cách hiệu quả hơn, mà không phải lo lắng về việc cài đặt và quản lý hạ tầng.

Dịch vụ dành cho Phần mềm (SaaS- Software as a Service).

Software as a Service (SaaS) là một giải pháp phần mềm trên nền tảng đám mây, nổi bật với việc tập trung vào người dùng cuối Thay vì phải quản lý cơ sở hạ tầng và nền tảng phần mềm, SaaS cho phép người dùng truy cập vào các ứng dụng trực tuyến thông qua Internet mà không cần phải lo lắng về việc triển khai và cập nhật phần mềm.

Trước khi điện toán đám mây trở nên phổ biến như ngày nay, SaaS đã xuất hiện từ lâu với các dịch vụ như email như Gmail, Yahoo Mail Hiện nay, các dịch vụ SaaS cho doanh nghiệp, như Office 365 của Microsoft và

Trang 14

các ứng dụng quản lý khách hàng (CRM) của Salesforce, đang ngày càng được sử dụng rộng rãi.

SaaS mang lại nhiều lợi ích cho tổ chức và doanh nghiệp, bao gồm cách trả chi phí theo mức độ sử dụng hàng tuần hoặc hàng tháng, giảm bớt chi phí đầu tư ban đầu và tăng tính linh hoạt cho việc chọn lựa và sử dụng các ứng dụng Các nhà cung cấp SaaS có thể lưu trữ ứng dụng trên máy chủ của họ hoặc tải ứng dụng xuống thiết bị khách hàng, cung cấp tính năng theo yêu cầu và tối ưu hóa quản lý phần mềm.

1.1.3.b Mô hình triển khai:

Điện toán đám mây riêng tư (Private cloud)

Điện toán đám mây riêng (Private Cloud) là mô hình trong đó hạ tầng đám mây được sử hữu bởi một tổ chức và phục vụ cho người dùng của tổ chức đó Private Cloud có thể được vận hành bởi một bên thứ ba và hạ tầng đám mây có thể được đặt bên trong hoặc bên ngoài tổ chức sở hữu (tại bên thứ ba kiêm vận hành hoặc thậm chí là một bên thứ tư).

Private Cloud được các tổ chức, doanh nghiệp lớn xây dựng cho mình nhằm khai thác ưu điểm về công nghệ và khả năng quản trị của công nghệ đám mây Với Private Cloud, các doanh nghiệp tối ưu được hạ tầng IT của mình, nâng cao hiệu quả sử dụng, quản lý trong cấp phát và thu hồi tài nguyên, qua đó giảm thời gian đưa sản phấm sản xuất, kinh doanh ra thị trường.

Điện toán đám mây công cộng (Public cloud)

Đây là mô hình mà hạ tầng của điện toán đám mây được một tổ chức sở hữu và cung cấp dịch vụ rộng rãi cho tất cả các khách hàng thông qua hạ tầng mạng Internet hoặc các mạng công cộng diện rộng Các ứng dụng khác nhau chia sẻ chung tài nguyên tính toán, mạng và lưu trữ Do vậy, hạ

Trang 15

tầng của công nghệ này được tiết kế để đảm bảo cô lập về dữ liệu giữa các dịch vụ Public Cloud hướng tới sổ lượng khách hàng lớn nên thường có năng lực về hạ tầng cao, đáp ứng nhu cầu tính toán linh hoạt, đem lại chi phí thấp cho khách hàng Do đó khách hàng của dịch vụ trên Public Cloud sẽ bao gồm tất cả các tầng lớp mà khách hàng cá nhân và doanh nghiệp nhỏ sẽ được lợi thế trong việc dễ dàng tiếp cận các ứng dụng công nghệ cap, chất lượng mà không phải đầu tư ban đầu, chi phí sử dụng thấp, linh hoạt giữa các khách hàng và tách biệt về truy cập.

Điện toán đám mây chung (Community cloud)

Đám mây chung (Community Cloud) là mô hình trong đó hạ tầng đám mây được chia sẻ bởi một số tổ chức cho cộng đồng người dùng trong các tổ chức đó Các tổ chức này do đặc thù không tiếp cận với các dịch vụ Public Cloud và chia sẻ chung một hạ tầng đám mây để nâng cao hiệu quả đầu tư và sử dụng.

Điện toán đám mây lai (Hybrid cloud)

Mô hình đám mây lai (Hybrid Cloud) là mô hình bao gồm hai hoặc nhiều hơn các đám mây trên tích hợp với nhau Mô hình Hybrid Cloud cho phép chia sẻ hạ tầng hoặc đáp ứng nhu cầu trao đổi dữ liệu.

1.1.4 Các ứng dụng điện toán đám mây:

Google App Engine (GAE):

Google App Engine (GAE) là một nền tảng cho phép triển khai ứng dụng trên cơ sở hạ tầng của Google Việc phát triển ứng dụng trên GAE rất thuận tiện và dễ dàng, đồng thời cung cấp khả năng mở rộng linh hoạt để xử lý lượng truy cập tăng cao và nhu cầu lưu trữ mở rộng.

GAE hỗ trợ hai môi trường phát triển ứng dụng chính: môi trường chạy Java và môi trường chạy Python.

Trang 16

Windows Azure:

Windows Azure là một nền tảng của Microsoft cho phép triển khai ứng dụng Windows và lưu trữ dữ liệu trên nền tảng Internet của họ Nó cung cấp môi trường phát triển ứng dụng sử dụng NET Framework.

Windows Azure hỗ trợ nhiều ngôn ngữ phổ biến như C#, Visual Basic, và C++, cũng như Java, và có thể sử dụng các công cụ phát triển khác ngoài Visual Studio.

Amazon Web Services (AWS):

Amazon Web Services (AWS) là một bộ các dịch vụ được cung cấp cho các nhà phát triển, cho phép họ truy cập vào hạ tầng tính toán của

Amazon Các máy chủ có sẵn đã được phát triển và tối ưu qua nhiều năm bởi Amazon, giúp mọi người có thể truy cập Internet một cách dễ dàng AWS cung cấp một loạt các dịch vụ web để đáp ứng các nhu cầu cơ bản của hầu hết các hệ thống, bao gồm lưu trữ, tính toán, truyền tin và quản lý dữ liệu.

1.2 Giới thiệu và Data Streaming 1.2.1 Khái niệm:

Data streaming là một phương pháp xử lý dữ liệu trong đám mây, được sử dụng để xử lý dữ liệu trong thời gian thực và liên tục, thay vì lưu trữ dữ liệu và xử lý sau này Kỹ thuật này thường được áp dụng trong các ứng dụng mà dữ liệu được tạo ra và truy cập liên tục, chẳng hạn như các ứng dụng Internet of Things (IoT), truyền thông xã hội, giám sát hệ thống, và phân tích dữ liệu từ các nguồn dữ liệu đa dạng như cảm biến, logs, và sự kiện trực tuyến.Trong một hệ thống data streaming, dữ liệu được xử lý một cách liên tục và ngay lập tức, thay vì phải đợi đến khi toàn bộ dữ liệu được gửi và lưu trữ trước khi xử lý Các hệ thống xử lý data streaming thường bao gồm các thành phần như:

Trang 17

 Nguồn Dữ Liệu (Data Source): Đây là nơi dữ liệu được tạo ra hoặc thu thập từ các nguồn khác nhau Nguồn dữ liệu có thể là logs từ hệ thống, dữ liệu từ cảm biến IoT, hoặc dữ liệu từ các sự kiện trực tuyến.

 Hệ Thống Xử Lý (Processing System): Hệ thống này nhận dữ liệu từ nguồn và thực hiện các phép xử lý trên dữ liệu này Các phép xử lý có thể bao gồm lọc dữ liệu, chuyển đổi định dạng, tính toán thống kê, hoặc phát hiện sự kiện.

 Hệ Thống Lưu Trữ (Storage System): Trong một số trường hợp, dữ liệu được lưu trữ tạm thời để phục vụ cho các mục đích xử lý hoặc phân tích sau này Tùy thuộc vào yêu cầu của ứng dụng, dữ liệu có thể được lưu trữ tạm thời trong bộ nhớ hoặc trên đĩa cứng.

 Điểm Đích (Sink): Sau khi dữ liệu được xử lý, nó có thể được gửi đến các điểm đích khác nhau tùy thuộc vào yêu cầu của ứng dụng Các điểm đích có thể là hệ thống lưu trữ dữ liệu lớn như Hadoop Distributed File System (HDFS), cơ sở dữ liệu trực tuyến (OLAP), hệ thống tạo báo cáo, hoặc hệ thống đồ họa để hiển thị dữ liệu.

Cùng với sự lớn mạnh của Internet of Things (IoT), tầm quan trọng của việc truyền dữ liệu (data streaming) và xử lý dòng (stream processing) cũng ngày càng tăng lên Máy theo dõi sức khỏe cá nhân và hệ thống an ninh gia đình là hai ví dụ về data streaming Hệ thống an ninh gia đình có thể bao gồm nhiều cảm biến chuyển động để giám sát các khu vực trong nhà Các cảm biến này tạo ra một luồng dữ liệu liên tục được truyền đến hạ tầng xử lý để theo dõi mọi hoạt động trong thời gian thực và lưu trữ dữ liệu để phân tích sau này Máy theo dõi sức khỏe cá nhân là một ví dụ khác về dữ liệu streaming, bao gồm máy theo dõi nhịp tim, huyết áp và mức độ oxy trong máu Các thiết bị này liên tục tạo ra dữ liệu, việc phân tích dữ liệu này kịp thời là rất quan trọng để đảm bảo sự an toàn và sức khỏe của người dùng Một ví dụ khác về data streaming là trong việc giám sát thị trường chứng khoán thời gian thực: dữ liệu tài chính thời gian thực thường được truyền ở định dạng dòng, việc xử lý và phân tích dữ liệu tài chính (như giá

Trang 18

cổ phiếu và xu hướng thị trường) giúp các tổ chức nhanh chóng đưa ra quyết định quan trọng.

1.2.2 Đặc điểm của Data Streaming:

Nhạy với thời gian: Data streaming nhạy với thời gian, có nghĩa là mỗi

dòng dữ liệu đều đi kèm với dấu thời gian và có giá trị chỉ trong một khoảng thời gian nhất định Điều này đặc biệt quan trọng trong các ứng dụng đòi hỏi xử lý dữ liệu trong thời gian thực như giám sát an ninh, quản lý tài nguyên, và phát hiện sự cố.

Tiếp diễn: Data streaming không có điểm bắt đầu hoặc điểm kết thúc rõ

ràng Dữ liệu diễn ra liên tục và trong thời gian thực, không ngừng nghỉ, giúp hệ thống luôn cập nhật với thông tin mới nhất.

Không đồng nhất: Dữ liệu trong data streaming thường đến từ nhiều nguồn

khác nhau và có thể có định dạng khác nhau Điều này đặc biệt thấy rõ trong các hệ thống thu thập dữ liệu từ các nguồn đa dạng như cảm biến, logs, hệ thống IoT, và ứng dụng trực tuyến.

Không hoàn hảo: Do sự đa dạng của nguồn và cơ chế truyền dữ liệu, dữ

liệu trong data streaming có thể bị thiếu, hỏng hoặc không theo thứ tự Điều này đặc biệt quan trọng khi phải xử lý dữ liệu trong thời gian thực và đảm bảo tính chính xác của thông tin.

Tính biến động và không thể lặp lại: Data streaming là môi trường động,

dữ liệu diễn ra liên tục và không thể lặp lại một cách hoàn toàn Mặc dù có thể lưu trữ và phân tích dữ liệu sau này, nhưng dữ liệu mới có thể không giống với dữ liệu đã xử lý trước đó do tính chất thời gian thực của data streaming.

Dữ liệu lớn (Big Data): Data streaming thích hợp cho việc xử lý dữ liệu

lớn với các nguồn dữ liệu đa dạng và có thể phát sinh dữ liệu ở tốc độ cao, như logs hệ thống, dữ liệu từ cảm biến IoT, hoặc dữ liệu từ các ứng dụng trực tuyến.

Trang 19

1.2.3 Ưu, nhược điểm của Data Streaming:

1.2.3.a Ưu điểm:

Xử lý dữ liệu trong thời gian thực: Data streaming cho phép các ứng

dụng xử lý dữ liệu ngay khi nó được tạo ra, giúp phản ứng nhanh chóng đối với sự kiện xảy ra trong thế giới thực Ví dụ, trong giám sát an ninh, việc phát hiện chuyển động bất thường và phản ứng ngay lập tức có thể giúp ngăn chặn các sự kiện không mong muốn Hay như một ví dụ khác, dòng dữ liệu thời gian thực cho phép các tổ chức giám sát liên tục hệ sinh thái kinh doanh của họ Chúng thông báo cho các tổ chức về các vi phạm bảo mật có thể xảy ra, các vấn đề sản xuất, sự không hài lòng của khách hàng, khủng hoảng tài chính Với việc truyền và xử lý dữ liệu liên tục, các tổ chức có thể tránh được những tổn thất vốn dĩ có thể ngăn ngừa  Giảm chi phí cơ sở hạ tầng: Trong xử lý dữ liệu truyền thống, lượng lớn

dữ liệu thường được lưu trữ trong kho dữ liệu Chi phí để duy trì các hệ thống lưu trữ này vô tình trở thành gánh nặng đối với các tổ chức Với data streaming, dữ liệu không được lưu trữ với lượng lớn, vậy nên các tổ chức có thể tiết kiệm được chi phí.

Tính quy mô và khả năng mở rộng: Data streaming có khả năng mở

rộng dễ dàng để đáp ứng với việc xử lý lượng dữ liệu lớn và tăng cường khả năng của hệ thống khi cần thiết Các hệ thống xử lý data streaming thường có thể mở rộng theo chiều ngang để xử lý nhiều dòng dữ liệu đồng thời.

Tính khả chịu lỗi: Hệ thống data streaming thường được thiết kế để đảm

bảo tính khả chịu lỗi Các phần mềm xử lý data streaming thường có khả

Trang 20

năng tự động phát hiện và khắc phục lỗi, giúp hệ thống duy trì tính ổn định và tin cậy.

Tính tương tác: Data streaming cho phép người dùng tương tác với dữ

liệu trong thời gian thực Người dùng có thể thực hiện truy vấn, phân tích, và đưa ra quyết định ngay khi dữ liệu được tạo ra và xử lý Điều này đặc biệt hữu ích trong việc theo dõi và điều khiển các hệ thống hoặc quy trình sản xuất.

1.2.3.b Nhược điểm:

Phức tạp trong triển khai: Xây dựng và triển khai hệ thống data

streaming có thể đòi hỏi kiến thức chuyên sâu về các công nghệ và khung công cụ Cần có kỹ năng và kinh nghiệm trong việc quản lý và vận hành

hệ thống để đảm bảo tính hiệu quả và tin cậy.

Chi phí cao: Triển khai và duy trì một hệ thống data streaming có thể đòi

hỏi chi phí đầu tư lớn, từ phần cứng đến phần mềm, cũng như chi phí vận hành và bảo trì hệ thống Điều này có thể là một rào cản đối với các tổ chức có nguồn lực hạn chế.

Yêu cầu cao về tính hiệu quả và hiệu suất: Data streaming đòi hỏi hệ

thống phải có khả năng xử lý dữ liệu ở tốc độ cao và liên tục Điều này có thể đặt ra thách thức về hiệu suất và tính hiệu quả của hệ thống, đặc biệt khi xử lý dữ liệu lớn và phức tạp.

Độ tin cậy và bảo mật: Việc đảm bảo độ tin cậy và bảo mật của dữ liệu

trong quá trình truyền và xử lý trong hệ thống data streaming là một thách thức Điều này đặc biệt quan trọng khi xử lý dữ liệu nhạy cảm và quan trọng, như thông tin cá nhân hoặc dữ liệu tài chính.

1.3 Data Streaming dựa trên môi trường Điện toán đám mây

Trang 21

Trong phần này chúng ta sẽ đi vào sơ lược về các thế hệ của hệ thống Data

Streaming và tìm hiểu về các hỗ trợ mới mẻ mà môi trường điện toán đám mây mang lại trong giai đoạn mới bùng nổ về khả năng kết hợp hệ thống xử lý luồng dữ liệu với điện toán đám mây (2010-2015) một số hệ thống tiêu biểu như Apache S4, Storm,D-Streams, StreamCloud,…và những phiên bản cải thiện cho đến hiện tại và sau này.

1.3.1 Các thế hệ của hệ thống xử lý luồng dữ liệu:

Hệ thống xử lý luồng dữ liệu có thể được chia thành 3 thế hệ:

Hình 1.1 Các thế hệ data streaming

Thế Hệ Đầu Tiên: Các hệ thống này được xây dựng dưới dạng nguyên mẫu độc

lập hoặc dưới dạng phần mở rộng của các công cụ cơ sở dữ liệu hiện có Chúng được phát triển với mục đích sử dụng cụ thể và rất hạn chế về các loại toán tử được hỗ trợ cũng như các chức năng sẵn có Đại diện của thế hệ này bao gồm Niagara, Telegraph và Aurora.

Trang 22

Thế Hệ Thứ Hai: Các hệ thống này đã mở rộng các ý tưởng xử lý luồng dữ liệu

với các tính năng nâng cao như khả năng chịu lỗi, xử lý truy vấn thích ứng, cũng như khả năng biểu đạt của toán tử nâng cao Các ví dụ quan trọng của lớp này là Borealis, CEDR, System S và CAPE.

Thế Hệ Thứ Ba: Các hệ thống này được thúc đẩy mạnh mẽ bởi xu hướng điện

toán đám mây, đòi hỏi các công cụ xử lý luồng dữ liệu phải có khả năng mở rộng cao và mạnh mẽ trước các lỗi Các hệ thống nổi tiếng của thế hệ này bao gồm Apache S4, D-Streams, Storm và StreamCloud.

Trong phần này, chúng em sẽ trình bày các nội dung về công cụ xử lý luồng dữ liệu thế hệ thứ ba với sự tích hợp mạnh mẽ với xu hướng điện toán đám mây Cách mà điện toán đám mây có thể hỗ trợ mạnh mẽ hơn cho hệ thống xử lý luồng dữ liệu so với các thế hệ tiền nhiệm, trọng tâm của vấn đề là ba điểm khác biệt chính: Các use cases, Scaling và Khả năng chịu lỗi.

1.3.2 Các use cases:

Trong thế hệ thứ ba của hệ thống xử lý luồng dữ liệu, một lớp lĩnh vực ứng dụng mới đã được giới thiệu Chúng bao gồm phát hiện sự bất thường trong luồng dữ liệu mạng xã hội và giám sát trang web/cơ sở hạ tầng Tất cả các trường hợp sử dụng này đều có một tập hợp các yêu cầu chung:

Phát hiện sự Bất Thường trong Luồng Dữ Liệu Mạng Xã Hội: Sử dụng các hệ thống xử lý luồng dữ liệu thế hệ thứ ba, các tổ chức có thể theo dõi và phát hiện sự bất thường trong các luồng dữ liệu mạng xã hội Ví dụ, có thể phát hiện các hành vi gian lận, các chuỗi sự kiện không bình thường hoặc các xu hướng không đúng đắn.

Giám Sát Trang Web/Cơ Sở Hạ Tầng: Các tổ chức có thể sử dụng hệ thống xử lý luồng dữ liệu để giám sát hoạt động trực tuyến của họ, bao gồm giám sát trang web và cơ sở hạ tầng Việc này giúp họ phát hiện và giải quyết các vấn đề kỹ thuật hoặc bảo mật một cách nhanh chóng, giảm thiểu thời gian ngừng hoạt động và cải thiện trải nghiệm người dùng.

Trang 23

Các trường hợp sử dụng này đặc biệt có các yêu cầu sau:

 Các kịch bản thường liên quan đến luồng đầu vào có tốc độ dữ liệu cao (> 10,000 sự kiện/giây).

 Độ trễ tối đa được yêu cầu là chỉ vài giây.

 Yêu cầu mối tương quan giữa dữ liệu lịch sử và dữ liệu trực tiếp.

 Yêu cầu hệ thống có quy mô linh hoạt và hỗ trợ khối lượng công việc đa dạng.

 Yêu cầu khả năng chịu lỗi ở mức thấp và hỗ trợ các sự kiện ngoài trật tự Dưới đây là một số trường hợp sử dụng cụ thể:

Google Trends: Google Trends là một ví dụ điển hình về ứng dụng xử lý dữ liệu dòng, giúp theo dõi sự phát triển của các xu hướng tìm kiếm trên Internet trong thời gian thực Google Trends phân tích từ khóa tìm kiếm trên Google và xác định các điểm bất thường như sự tăng đột ngột hoặc giảm đột ngột trong tìm kiếm.

Phát Hiện Sự Bất Thường trên Twitter: Bất cứ khi nào có sự kiện liên quan xảy ra trên thế giới, mọi người đều sử dụng Twitter để khám phá điều gì đang xảy ra bằng cách đưa ra các truy vấn Trong những trường hợp như vậy, dấu hiệu không thể tăng đột biến xảy ra trong các truy vấn được gửi tới Twitter và rất có thể những truy vấn này chưa từng thấy trước đây, khiến việc liên hệ chúng một cách chính xác với các sự kiện mà mọi người thực sự đang tìm kiếm là rất khó khăn Hơn nữa, sự quan tâm của mọi người đối với các sự kiện liên quan này chỉ là tạm thời và các truy vấn tương ứng sẽ giảm dần trong một khoảng thời gian giới hạn, vì vậy bắt buộc phải làm sắc nét mối tương quan này càng nhanh càng tốt.

Giám Sát Vận Hành Xe Buýt: Hội đồng thành phố Hà Nội có thể sử dụng hệ thống xử lý luồng dữ liệu để giám sát vận hành của 1000 xe buýt, cung cấp thông tin về ùn tắc giao thông hoặc tai nạn xe hơi trong thời gian thực.

Phát Hiện Gian Lận Trên Điện Thoại Di Động: Sử dụng xử lý dữ liệu trực tuyến, các tổ chức có thể phát hiện gian lận trong cuộc gọi điện thoại di động, với khả năng xử lý

Ngày đăng: 23/04/2024, 11:31

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

TÀI LIỆU LIÊN QUAN

w