Logo Zephyrnet

Các lớp của kiến ​​trúc nền tảng dữ liệu

Ngày:


Giới thiệu chung

Trong bài viết này, tôi sẽ hướng dẫn bạn qua các lớp của Kiến trúc nền tảng dữ liệu. Trước hết, chúng ta hãy hiểu Lớp, một lớp đại diện cho một phần có thể sử dụng được thực hiện một công việc chính xác hoặc một tập hợp các nhiệm vụ trong nền tảng dữ liệu. Các lớp khác nhau của kiến ​​trúc nền tảng dữ liệu mà chúng ta sẽ thảo luận trong bài viết này bao gồm lớp Nhập dữ liệu, Lớp lưu trữ dữ liệu, Lớp xử lý và phân tích dữ liệu, Lớp giao diện người dùng và Lớp Đường ống dữ liệu. Nếu bạn chưa quen với Kỹ thuật dữ liệu, hãy làm theo 9 kỹ năng hàng đầu cần có để trở thành một kỹ sư dữ liệu.

Nguồn: Tác giả

Mục lục

  1. Lớp thu thập dữ liệu hoặc Lớp nhập dữ liệu
  2. Lớp lưu trữ dữ liệu hoặc lớp tích hợp
  3. Lớp xử lý dữ liệu
  4. Phân tích và Lớp giao diện người dùng
  5. Lớp đường ống dữ liệu

Lớp thu thập dữ liệu

Nguồn: Tác giả

Đây là lớp đầu tiên của kiến ​​trúc nền tảng dữ liệu. Lớp Thu thập dữ liệu như tên gọi có nhiệm vụ kết nối với các hệ thống nguồn và đưa dữ liệu vào nền tảng dữ liệu một cách định kỳ. Lớp này thực hiện các tác vụ sau:

  1. Lớp này chịu trách nhiệm kết nối với các nguồn dữ liệu.
  2. Lớp này chịu trách nhiệm chuyển dữ liệu từ các nguồn dữ liệu sang nền tảng dữ liệu ở chế độ phát trực tuyến hoặc chế độ hàng loạt hoặc cả hai.
  3. Hơn nữa, lớp này có nhiệm vụ duy trì thông tin về dữ liệu được thu thập trong kho siêu dữ liệu. Ví dụ: có bao nhiêu dữ liệu được đưa vào nền tảng dữ liệu và thông tin mô tả khác?

Có nhiều công cụ khác nhau có sẵn trên thị trường, nhưng một số công cụ phổ biến bao gồm Google Cloud Data Flow, IBM Streams, Amazon Kinesis và Apache Kafka là một số công cụ được sử dụng để nhập dữ liệu hỗ trợ cả chế độ hàng loạt và phát trực tuyến.

Nguồn: Tác giả

Một khi dữ liệu được chia nhỏ, nó cần được lưu trữ và tích hợp vào nền tảng dữ liệu giống như cách chúng ta lưu trữ thức ăn trong dạ dày. Để lưu trữ và tích hợp dữ liệu, chúng ta hướng tới lớp thứ hai của nền tảng dữ liệu là lớp Lưu trữ dữ liệu hoặc lớp Tích hợp dữ liệu.

Lớp lưu trữ dữ liệu và tích hợp dữ liệu

Nguồn: Tác giả

Đây là lớp thứ hai của kiến ​​trúc nền tảng dữ liệu. Lớp Thu thập dữ liệu như tên gọi có nhiệm vụ lưu trữ dữ liệu để xử lý và sử dụng lâu dài. Hơn nữa, lớp này cũng chịu trách nhiệm cung cấp dữ liệu để xử lý ở cả hai chế độ phát trực tuyến và hàng loạt. Vì lớp này chịu trách nhiệm cung cấp dữ liệu có sẵn để xử lý, nên nó cần phải đáng tin cậy, có thể mở rộng, hiệu suất cao và tiết kiệm chi phí. IBM DB2, IBM DB2, Microsoft SQL Server, MySQL, Oracle Database và PostgreSQL là một số cơ sở dữ liệu quan hệ phổ biến. Nhưng ngày nay, cơ sở dữ liệu quan hệ dựa trên đám mây đã trở nên phổ biến trong những năm gần đây, một số cơ sở dữ liệu quan hệ dựa trên đám mây là IBM DB2, Google Cloud SQL và SQL Azure. Trong hệ thống cơ sở dữ liệu NoSQL hoặc phi quan hệ trên đám mây, chúng tôi có IBM Cloudant, Redis, MongoDB, Cassandra và Neo4J. Các công cụ để tích hợp bao gồm đám mây Pak cho dữ liệu của IBM, đám mây Pak cho tích hợp và Open Studio của IBM. Khi dữ liệu đã được nhập, lưu trữ và tích hợp, nó cần được xử lý. Vì vậy, với điều này, chúng tôi chuyển sang Lớp xử lý dữ liệu

Lớp xử lý dữ liệu

Nguồn: Tác giả

Đây là lớp thứ ba của kiến ​​trúc nền tảng dữ liệu. Như tên cho thấy, lớp này chịu trách nhiệm cho một nhiệm vụ xử lý. Quá trình xử lý bao gồm xác thực dữ liệu, chuyển đổi và áp dụng logic nghiệp vụ cho dữ liệu. Lớp xử lý sẽ có thể thực hiện một số tác vụ bao gồm:

  1. Đọc dữ liệu ở chế độ hàng loạt hoặc truyền trực tuyến từ bộ nhớ và áp dụng các phép biến đổi.
  2. Hỗ trợ các công cụ truy vấn và ngôn ngữ lập trình phổ biến.
  3. Quy mô để đáp ứng nhu cầu xử lý của một tập dữ liệu ngày càng tăng.
  4. Cung cấp một cách để các nhà phân tích và nhà khoa học dữ liệu làm việc với dữ liệu trong nền tảng dữ liệu.

Nhiệm vụ chuyển đổi thường xảy ra trong lớp này bao gồm:

  1. Cấu trúc: Đây là những thao tác làm thay đổi cấu trúc của dữ liệu. Sự thay đổi này có thể đơn giản hoặc phức tạp về bản chất. Cách đơn giản cũng có thể giống như thay đổi cách sắp xếp các trường trong bản ghi hoặc tập dữ liệu hoặc phức tạp như kết hợp các trường có cấu trúc phức tạp bằng cách sử dụng các phép nối và liên kết.
  2. Bình thường hóa: Phần này tập trung vào việc giảm bớt sự dư thừa và không nhất quán. Nó cũng tập trung vào việc làm sạch cơ sở dữ liệu của dữ liệu không sử dụng.
  3. Chuẩn hóa: Chuẩn hóa là nhiệm vụ kết hợp dữ liệu từ nhiều bảng thành một bảng duy nhất để nó có thể được truy vấn hiệu quả hơn cho mục đích báo cáo và phân tích.
  4. Làm sạch dữ liệu: Làm sạch dữ liệu, sửa chữa các bất thường trong dữ liệu để cung cấp dữ liệu đáng tin cậy cho các ứng dụng và sử dụng hạ nguồn.

Có rất nhiều công cụ có sẵn trên thị trường để thực hiện các thao tác này trên dữ liệu, bao gồm chẳng hạn như bảng tính, OpenRefine, Google DataPrep, Watson Studio Refinery và Trifacta Wrangler. Python và R cũng cung cấp một số thư viện và gói được tạo rõ ràng để xử lý dữ liệu. Điều rất quan trọng cần biết là lưu trữ và xử lý không phải lúc nào cũng được thực hiện trong các lớp riêng biệt. Ví dụ: trong cơ sở dữ liệu quan hệ, việc lưu trữ và xử lý đều diễn ra trong cùng một lớp trong khi trong hệ thống Dữ liệu lớn, dữ liệu được lưu trữ trước tiên trong hệ thống Phân tán tệp Hadoop và sau đó được xử lý trong công cụ xử lý dữ liệu như Spark.

Phân tích và Lớp giao diện người dùng

Nguồn: Tác giả

Đây là lớp thứ tư của kiến ​​trúc nền tảng dữ liệu. Lớp này chịu trách nhiệm cung cấp dữ liệu quy trình cho người dùng cuối, bao gồm các nhà phân tích thông tin kinh doanh và các bên liên quan trong kinh doanh, những người sử dụng những dữ liệu này với sự trợ giúp của các trang tổng quan và báo cáo tương tác, hơn nữa, các nhà khoa học dữ liệu và nhà phân tích dữ liệu thuộc danh mục người dùng cuối này. tiếp tục xử lý dữ liệu này cho trường hợp sử dụng cụ thể. Lớp này cần hỗ trợ các công cụ truy vấn như công cụ SQL và công cụ No-SQL và các ngôn ngữ lập trình như Python, R và Java và hơn thế nữa, các lớp này cần hỗ trợ API có thể được sử dụng để chạy báo cáo về dữ liệu cho cả quá trình xử lý trực tuyến và ngoại tuyến.

Lớp đường ống dữ liệu

Nguồn: Tác giả

Đây là lớp cuối cùng của kiến ​​trúc này, lớp này có nhiệm vụ thực hiện và duy trì một luồng dữ liệu liên tục thông qua đường ống dẫn dữ liệu này. Đây là lớp có khả năng trích xuất, biến đổi và tải các công cụ. Có một số giải pháp đường ống dữ liệu có sẵn, phổ biến nhất trong số đó là Apache Airflow và DataFlow.

Ghi chú kết thúc

Trong bài viết này, bạn đã tìm hiểu về các lớp của kiến ​​trúc nền tảng dữ liệu. Đây là một phiên bản đơn giản hóa của một kiến ​​trúc phức tạp hỗ trợ một loạt các nhiệm vụ.

Nguồn: https://www.analyticsvidhya.com/blog/2022/01/layers-of-the-data-platform-architecture/

tại chỗ_img

Tin tức mới nhất

tại chỗ_img

Trò chuyện trực tiếp với chúng tôi (chat)

Chào bạn! Làm thế nào để tôi giúp bạn?