Ngày 24 tháng 10 năm 2022 - Máy Tính Bài viết này được dịch và tổng hợp dựa trên tài liệu tham khảo Azure ở cuối bài, nhằm mục đích học tập và tổng kết kiến thức. Giới thiệu về các định dạng dữ liệu phổ biến, công việc xử lý và vai trò cùng dịch vụ liên quan.
1 Các khái niệm cốt lõi về dữ liệu
1.1 Định dạng dữ liệu thường dùng
Dữ liệu là tập hợp các sự thật như số liệu, mô tả và kết quả quan sát được sử dụng để ghi lại thông tin. Các cấu trúc tổ chức dữ liệu thường biểu diễn các thực thể quan trọng đối với tổ chức (ví dụ: khách hàng, sản phẩm, đơn đặt hàng). Mỗi thực thể thường có một hoặc nhiều thuộc tính (ví dụ: khách hàng có thể có tên, địa chỉ và số điện thoại).
Dữ liệu có thể được phân loại thành: cấu trúc hóa, bán cấu trúc và không cấu trúc.
Dữ liệu cấu trúc hóa
Dữ liệu cấu trúc hóa là dữ liệu tuân theo một mẫu cố định, vì vậy tất cả dữ liệu đều có cùng các trường hoặc thuộc tính. Mẫu của thực thể dữ liệu cấu trúc hóa thường được biểu diễn bằng bảng: tức là dữ liệu được đại diện bởi một hoặc nhiều bảng, mỗi bảng bao gồm hàng và cột (hàng đại diện cho các ví dụ của thực thể dữ liệu, cột đại diện cho các thuộc tính của thực thể dữ liệu).
Ví dụ, hình dưới đây minh họa cách biểu diễn bảng của các thực thể dữ liệu Customer và Product. !Biểu diễn bảng của thực thể dữ liệu
Dữ liệu cấu trúc hóa thường được lưu trữ trong cơ sở dữ liệu, nơi mà các bảng có thể được liên kết với nhau thông qua các khóa giá trị trong mô hình quan hệ.
Dữ liệu bán cấu trúc
Dữ liệu bán cấu trúc là thông tin có một số cấu trúc nhưng cho phép có sự khác biệt giữa các ví dụ của thực thể. Ví dụ, mặc dù hầu hết khách hàng có thể chỉ có một email, nhưng một số có thể có nhiều email, và một số có thể không có email nào cả.
Một định dạng phổ biến của dữ liệu bán cấu trúc là JavaScript Object Notation (JSON). Ví dụ dưới đây hiển thị hai tài liệu JSON biểu diễn thông tin khách hàng. Mỗi tài liệu khách hàng đều chứa địa chỉ và thông tin liên lạc, nhưng các trường cụ thể có thể khác nhau tùy theo từng khách hàng.
// Khách hàng 1
{
"firstName": "Joe",
"lastName": "Jones",
"address":
{
"streetAddress": "1 Main St.",
"city": "New York",
"state": "NY",
"postalCode": "10099"
},
"contact":
[
{
"type": "home",
"number": "555 123-1234"
},
{
"type": "email",
"address": "joe@litware.com"
}
]
}
// Khách hàng 2
{
"firstName": "Samir",
"lastName": "Nadoy",
"address":
{
"streetAddress": "123 Elm Pl.",
"unit": "500",
"city": "Seattle",
"state": "WA",
"postalCode": "98999"
},
"contact":
[
{
"type": "email",
"address": "samir@northwind.com"
}
]
}
JSON chỉ là một trong nhiều cách có thể biểu diễn dữ liệu bán cấu trúc. Điểm mấu chốt ở đây không phải là kiểm tra chi tiết cú pháp JSON mà là làm nổi bật tính linh hoạt của cách biểu diễn dữ liệu bán cấu trúc.
Dữ liệu không cấu trúc
Không phải mọi dữ liệu đều là cấu trúc hóa hoặc bán cấu trúc hóa. Ví dụ, tài liệu, hình ảnh, âm thanh và video cũng như các tệp nhị phân có thể không có cấu trúc cụ thể. Loại dữ liệu này được gọi là dữ liệu không cấu trúc.
Lưu trữ dữ liệu
Do dữ liệu có ba loại chính: cấu trúc hóa, bán cấu trúc và không cấu trúc, nên các phương pháp lưu trữ dữ liệu phổ biến có thể được chia thành hai nhóm lớn: cơ sở dữ liệu và lưu trữ tệp.
1.2 Lưu trữ tệp
Định dạng tệp cụ thể được sử dụng để lưu trữ dữ liệu phụ thuộc vào nhiều yếu tố, bao gồm:
- Kiểu dữ liệu cần lưu trữ (cấu trúc hóa, bán cấu trúc hóa hoặc không cấu trúc hóa);
- Các ứng dụng và dịch vụ cần đọc, ghi và xử lý dữ liệu;
- Yêu cầu về dữ liệu dễ đọc cho con người hoặc dữ liệu được tối ưu hóa cho lưu trữ và xử lý hiệu quả.
Dưới đây thảo luận về một số định dạng tệp phổ biến.
Tệp văn bản phân cách
Dữ liệu thường được lưu trữ dưới dạng văn bản thuần túy với các dấu phân cách trường cụ thể và ký tự kết thúc dòng. Định dạng dữ liệu phân cách phổ biến nhất là trường được phân cách bằng dấu phẩy, dòng được kết thúc bằng ký tự xuống dòng. Dòng đầu tiên có thể là giá trị hoặc tên trường.
Các định dạng phổ biến khác bao gồm tệp phân cách bằng tab (TSV) và tệp phân cách bằng khoảng trống (trong đó tab hoặc khoảng trắng được sử dụng để phân cách trường), cũng như dữ liệu có độ rộng cố định dành cho mỗi trường.
Đối với dữ liệu cấu trúc hóa cần được truy cập ở định dạng dễ đọc cho con người bởi nhiều ứng dụng và dịch vụ khác nhau, định dạng văn bản phân cách là một lựa chọn tốt.
Ví dụ sau hiển thị một tập dữ liệu khách hàng ở định dạng phân cách bằng dấu phẩy:
FirstName,LastName,Email
Joe,Jones,joe@litware.com
Samir,Nadoy,samir@northwind.com
JSON
JSON là một định dạng phổ biến, trong đó sử dụng mô hình tài liệu phân tầng để định nghĩa các thực thể dữ liệu (đối tượng) có nhiều thuộc tính. Mỗi thuộc tính trong JSON có thể là một đối tượng (hoặc tập hợp các đối tượng), khiến JSON trở thành một định dạng linh hoạt cho dữ liệu cấu trúc hóa và bán cấu trúc hóa.
Ví dụ dưới đây hiển thị một tài liệu JSON chứa tập hợp các khách hàng. Mỗi khách hàng có ba thuộc tính (tên, họ và liên lạc), trong đó thuộc tính liên lạc có thể chứa nhiều phương thức liên lạc.
{
"customers": [
{
"firstName": "Joe",
"lastName": "Jones",
"contact": [
{
"type": "home",
"number": "555 123-1234"
},
{
"type": "email",
"address": "joe@litware.com"
}
]
},
{
"firstName": "Samir",
"lastName": "Nadoy",
"contact": [
{
"type": "email",
"address": "samir@northwind.com"
}
]
}
]
}
XML
XML là một định dạng dữ liệu dễ đọc cho con người, đã từng phổ biến trong thập niên 1990 và 2000. Hiện nay, nó phần lớn đã bị thay thế bởi định dạng JSON ít rườm rà hơn, nhưng vẫn còn một số hệ thống sử dụng XML để biểu diễn dữ liệu.
XML sử dụng các thẻ đóng/mở (<...>
) để định nghĩa các phần tử và thuộc tính, ví dụ như sau:
<Customers>
<Customer name="Joe" lastName="Jones">
<ContactDetails>
<Contact type="home" number="555 123-1234"/>
<Contact type="email" address="joe@litware.com"/>
</ContactDetails>
</Customer>
<Customer name="Samir" lastName="Nadoy">
<ContactDetails>
<Contact type="email" address="samir@northwind.com"/>
</ContactDetails>
</Customer>
</Customers>
BLOB
Cuối cùng, tất cả các tệp đều được lưu trữ dưới dạng dữ liệu nhị phân (1 và 0), nhưng trong các định dạng có thể đọc được của con người, các byte dữ liệu nhị phân được ánh xạ thành các ký tự in được (thông qua các phương án mã hóa ký tự như ASCII hoặc Unicode). Tuy nhiên, đặc biệt là đối với một số định dạng tệp dữ liệu không cấu trúc, dữ liệu có thể được lưu trữ dưới dạng tệp nhị phân thô cần được giải thích và trình bày bởi ứng dụng. Các loại tệp dữ liệu này thường được chuyên gia dữ liệu gọi là BLOB (Binary Large Objects).
Định dạng tệp được tối ưu hóa
Mặc dù định dạng dữ liệu dễ đọc cho con người rất hữu ích, nhưng chúng thường không được tối ưu hóa cho không gian lưu trữ hoặc xử lý. Theo thời gian, đã phát triển một số định dạng tệp chuyên dụng hỗ trợ nén, lập chỉ mục và lưu trữ cũng như xử lý hiệu quả. Một số định dạng tệp phổ biến bao gồm Avro, ORC và Parquet:
- Avro là một định dạng dựa trên hàng. Được tạo bởi Apache, mỗi bản ghi chứa một tiêu đề tin nhắn mô tả cấu trúc dữ liệu trong bản ghi. Tiêu đề tin nhắn này được lưu trữ dưới dạng JSON, dữ liệu được lưu trữ dưới dạng nhị phân. Ứng dụng sử dụng thông tin trong tiêu đề tin nhắn để phân tích dữ liệu nhị phân và trích xuất các trường chứa bên trong. Avro là một định dạng tuyệt vời để nén dữ liệu và giảm thiểu nhu cầu lưu trữ và băng thông mạng.
- ORC (Optimized Row Columnar format) tổ chức dữ liệu thành cột thay vì hàng. Được phát triển bởi HortonWorks, ORC được sử dụng để tối ưu hóa các hoạt động đọc/ghi trong Apache Hive (Hive là một hệ thống kho dữ liệu hỗ trợ tóm tắt và truy vấn nhanh chóng trên các tập dữ liệu lớn). Tệp ORC chứa một tập hợp các dải dữ liệu, mỗi dải dữ liệu lưu trữ một hoặc nhiều cột dữ liệu. Dải dữ liệu chứa chỉ mục hàng trong dải dữ liệu, dữ liệu mỗi hàng và phần chân trang để lưu trữ các thống kê cho mỗi cột (số lượng, tổng, giá trị lớn nhất, giá trị nhỏ nhất, v.v.).
- Parquet là một định dạng dữ liệu cột khác, được tạo bởi Cloudera và Twitter. Tệp Parquet chứa các nhóm hàng, dữ liệu của mỗi cột được lưu trữ cùng nhau trong cùng một nhóm hàng, mỗi nhóm hàng chứa một hoặc nhiều khối dữ liệu. Tệp Parquet chứa siêu dữ liệu mô tả tập hợp các hàng được tìm thấy trong mỗi khối. Ứng dụng có thể sử dụng siêu dữ liệu này để nhanh chóng định vị khối đúng cho một tập hợp hàng nhất định và truy xuất dữ liệu từ các cột đã chỉ định của những hàng đó. Parquet giỏi trong việc lưu trữ và xử lý hiệu quả các kiểu dữ liệu lồng nhau, hỗ trợ các phương án nén và mã hóa rất hiệu quả.
1.3 Cơ sở dữ liệu
Cơ sở dữ liệu được sử dụng để định nghĩa một hệ thống trung tâm có thể lưu trữ và truy vấn dữ liệu. Nói một cách đơn giản, hệ thống tệp lưu trữ tệp là một loại cơ sở dữ liệu; tuy nhiên khi chúng ta sử dụng thuật ngữ này trong ngữ cảnh chuyên môn về dữ liệu, chúng ta thường đề cập đến các hệ thống chuyên dụng quản lý bản ghi dữ liệu thay vì tệp.
Cơ sở dữ liệu quan hệ
Cơ sở dữ liệu quan hệ thường được sử dụng để lưu trữ và truy vấn dữ liệu cấu trúc hóa. Dữ liệu được lưu trữ trong các bảng đại diện cho các thực thể như khách hàng, sản phẩm hoặc đơn đặt hàng. Mỗi ví dụ của thực thể đều được phân bổ một khóa chính duy nhất để nhận dạng nó, và các khóa này được sử dụng để tham chiếu các ví dụ của thực thể trong các bảng khác. Ví dụ, bạn có thể tham chiếu khóa chính của khách hàng trong bản ghi đơn đặt hàng để chỉ ra khách hàng nào đã đặt hàng. Việc sử dụng khóa để tham chiếu dữ liệu thực thể giúp cơ sở dữ liệu quan hệ trở nên chuẩn hóa, điều này có thể tránh được các giá trị trùng lặp. Ví dụ, thông tin chi tiết của một khách hàng chỉ được lưu trữ một lần thay vì mỗi lần đặt hàng của khách hàng đều lưu trữ lại. Các bảng này được quản lý và truy vấn bằng ngôn ngữ SQL dựa trên tiêu chuẩn ANSI, do đó tương tự nhau trên nhiều hệ thống cơ sở dữ liệu.
Cơ sở dữ liệu không quan hệ
Cơ sở dữ liệu không quan hệ là các hệ thống quản lý dữ liệu không áp dụng mô hình quan hệ cho dữ liệu. Cơ sở dữ liệu không quan hệ thường được gọi là NoSQL (dù một số hỗ trợ các phiên bản ngôn ngữ SQL).
Có bốn loại cơ sở dữ liệu không quan hệ phổ biến:
- Cơ sở dữ liệu khóa-giá trị, trong đó mỗi bản ghi được tạo bởi một khóa duy nhất và giá trị liên kết, có thể ở bất kỳ định dạng nào.
!Khóa-Giá trị Lưu trữ
- Cơ sở dữ liệu tài liệu, đây là một hình thức cụ thể của cơ sở dữ liệu khóa-giá trị, trong đó giá trị là văn bản JSON (hệ thống đã được tối ưu hóa để phân tích cú pháp và truy vấn).
!Cơ sở dữ liệu Tài liệu
- Cơ sở dữ liệu họ cột, nó lưu trữ dữ liệu bảng chứa hàng và cột, nhưng bạn có thể chia cột thành các nhóm được gọi là họ cột. Mỗi họ cột chứa một tập hợp các cột có liên quan logic.
!Cơ sở dữ liệu Họ Cột
- Cơ sở dữ liệu đồ thị, lưu trữ các thực thể dưới dạng nút có kết nối để định nghĩa mối quan hệ giữa chúng.
!Cơ sở dữ liệu Đồ thị
1.4 Xử lý dữ liệu giao dịch
Hệ thống xử lý dữ liệu giao dịch là chức năng chính mà hầu hết mọi người nghĩ đến khi nói đến tính toán kinh doanh. Hệ thống giao dịch ghi lại các giao dịch bao gói các sự kiện cụ thể mà tổ chức muốn theo dõi. Giao dịch có thể là các giao dịch tài chính, chẳng hạn như dòng tiền giữa các tài khoản trong hệ thống ngân hàng, hoặc là một phần của hệ thống bán lẻ, theo dõi việc khách hàng trả tiền cho hàng hóa và dịch vụ. Có thể coi giao dịch như một đơn vị công việc nhỏ và rời rạc.
Hệ thống giao dịch thường là khối lượng lớn, đôi khi xử lý hàng triệu giao dịch trong một ngày. Dữ liệu đang được xử lý phải có thể được truy cập rất nhanh chóng. Công việc mà hệ thống giao dịch thực hiện thường được gọi là OLTP (Online Transactional Processing).
OLTP giải pháp phụ thuộc vào hệ thống cơ sở dữ liệu, trong đó dữ liệu được lưu trữ được tối ưu hóa cho các hoạt động đọc và ghi, để hỗ trợ công việc giao dịch bao gồm tạo, truy xuất, cập nhật và xóa bản ghi dữ liệu (thường được gọi là các hoạt động CRUD). Những hoạt động này sử dụng các giao dịch để đảm bảo tính toàn vẹn của dữ liệu được lưu trữ trong cơ sở dữ liệu. Để làm điều này, các hệ thống OLTP đảm bảo rằng các giao dịch hỗ trợ các ngữ nghĩa ACID:
- Nguyên tử - Mỗi giao dịch được coi là một đơn vị, hoàn toàn thành công hoặc hoàn toàn thất bại. Ví dụ, có một giao dịch rút tiền khỏi một tài khoản và gửi số tiền tương đương vào một tài khoản khác, hai hoạt động này phải được thực hiện đồng thời. Nếu một hoạt động không thể hoàn thành, thì hoạt động kia cũng phải thất bại.
- Nhất quán - Giao dịch chỉ có thể chuyển dữ liệu trong cơ sở dữ liệu từ một trạng thái hợp lệ sang trạng thái hợp lệ khác. Sử dụng ví dụ rút tiền và gửi tiền, trạng thái hoàn thành của giao dịch phải phản ánh việc tiền đã được chuyển từ một tài khoản sang tài khoản khác.
- Cách ly - Các giao dịch đồng thời không thể can thiệp lẫn nhau và phải có một trạng thái nhất quán của cơ sở dữ liệu. Ví dụ, trong khi một giao dịch đang chuyển tiền từ một tài khoản sang tài khoản khác, một giao dịch khác kiểm tra số dư của các tài khoản này phải trả về kết quả nhất quán. Giao dịch kiểm tra số dư không thể trả về số dư trước khi chuyển cho tài khoản gửi và số dư sau khi chuyển cho tài khoản nhận.
- Kiên trì - Khi một giao dịch được xác nhận, nó sẽ giữ trạng thái xác nhận. Sau khi giao dịch chuyển khoản hoàn thành, số dư tài khoản đã sửa đổi sẽ được lưu trữ, do đó ngay cả khi hệ thống cơ sở dữ liệu bị tắt, khi mở lại sẽ phản ánh giao dịch đã xác nhận.
Hệ thống OLTP thường được sử dụng để hỗ trợ các ứng dụng thời gian thực xử lý dữ liệu kinh doanh, thường được gọi là ứng dụng LOB (Line of Business).
1.5 Xử lý dữ liệu phân tích
Xử lý dữ liệu phân tích thường sử dụng các hệ thống chỉ đọc lưu trữ lượng lớn dữ liệu lịch sử hoặc các chỉ báo kinh doanh. Phân tích có thể dựa trên một bản chụp dữ liệu tại thời điểm nhất định hoặc một tập hợp các bản chụp.
Chi tiết cụ Sam86 Club Choi Game Bài thể của hệ thống xử lý phân tích có thể khác nhau tùy theo giải pháp, nhưng kiến trúc phổ biến của hệ thống phân tích cấp doanh nghiệp được minh họa trong hình dưới đây:
!Xử lý Phân tích
- Tập tin dữ liệu có thể được lưu trữ trong hồ dữ liệu trung tâm để phân tích.
- Quá trình trích xuất, chuyển đổi và tải (ETL) sao chép dữ liệu từ tệp và cơ sở dữ liệu OLTP vào kho dữ liệu được tối ưu hóa cho các hoạt động đọc. Thông thường, mô hình kho dữ liệu sẽ dựa trên bảng sự kiện chứa các giá trị bạn muốn phân tích (chẳng hạn như doanh số bán hàng) và các bảng chiều liên quan đại diện cho các thực thể bạn muốn đo lường chúng (chẳng hạn như khách hàng hoặc sản phẩm).
- Dữ liệu trong kho dữ liệu có thể được tổng hợp và tải vào mô hình phân tích trực tuyến (OLAP) hoặc tập hợp dữ liệu đa chiều. Giá trị tổng hợp từ bảng sự kiện được tính toán cho giao cắt của các chiều trong bảng chiều. Ví dụ, doanh thu bán hàng có thể được tổng hợp theo ngày, khách hàng và sản phẩm.
- Dữ liệu từ hồ dữ liệu, kho dữ liệu và mô hình phân tích có thể được truy vấn để tạo báo cáo, biểu đồ trực quan và bảng điều khiển.
Hồ dữ liệu phổ biến trong các kịch bản xử lý phân tích quy mô lớn, nơi cần thu thập và phân tích lượng lớn dữ liệu dựa trên tệp.
Kho dữ liệu là một cách thiết lập truyền thống để lưu trữ dữ liệu trong mô hình quan hệ được tối ưu hóa cho các hoạt động đọc, chủ yếu để hỗ trợ các truy vấn báo cáo và trực quan hóa dữ liệu. Mô hình kho dữ liệu có thể yêu cầu một số phi chuẩn hóa (giới thiệu một số lặp lại để làm cho các truy vấn thực hiện nhanh hơn).
Mô hình OLAP là một loại lưu trữ dữ liệu tổng hợp được tối ưu hóa cho công việc phân tích.
Dữ liệu được tổng hợp ở các mức độ khác nhau của các chiều, cho phép bạn xem tổng hợp ở nhiều cấp độ; ví dụ, tìm tổng doanh thu theo khu vực, thành phố hoặc địa chỉ riêng lẻ. Vì dữ liệu OLAP đã được tổng hợp trước, nên có thể chạy nhanh các truy vấn trả về tóm tắt mà nó chứa.
Các loại người dùng khác nhau có thể thực hiện phân tích dữ liệu ở các giai đoạn khác nhau của kiến trúc. Ví dụ:
- Nhà khoa học dữ liệu có thể sử dụng trực tiếp các tệp dữ liệu trong hồ dữ liệu để khám phá và xây dựng mô hình dữ liệu.
- Nhà phân tích dữ liệu có thể truy vấn trực tiếp các bảng trong kho dữ liệu để tạo báo cáo phức tạp và biểu đồ trực quan.
- Người dùng kinh doanh có thể sử dụng dữ liệu đã được tổng hợp trước trong mô hình phân tích dưới dạng báo cáo hoặc bảng điều khiển.
2 Vai trò và Dịch vụ Dữ liệu
Những người làm việc với dữ liệu thường đảm nhận các vai trò khác nhau trong việc quản lý, sử dụng và kiểm soát dữ liệu. Trong mô đun này, chúng tôi sẽ giới thiệu các vai trò khác nhau của chuyên gia dữ liệu, các nhiệm vụ và trách nhiệm liên quan đến các vai trò này, cũng như các dịch vụ Azure được sử dụng để thực hiện các nhiệm vụ này.
2.1 Các vai trò trong thế giới dữ liệu
Việc quản lý, kiểm soát và sử dụng dữ liệu liên quan đến nhiều vai trò khác nhau. Một số vai trò hướng đến kinh doanh, một số liên quan nhiều đến kỹ thuật, một số tập trung vào nghiên cứu, và một số là các vai trò lai kết hợp nhiều khía cạnh khác nhau của quản lý dữ liệu. Tổ chức của bạn có thể định nghĩa các vai trò theo cách khác nhau hoặc đặt tên khác cho chúng, nhưng các vai trò được mô tả trong đơn vị này bao gồm các phân chia nhiệm vụ và trách nhiệm phổ biến nhất.
Ba vai trò chính xử lý dữ liệu trong hầu hết các tổ chức là:
- Quản trị viên cơ sở dữ liệu, chịu trách nhiệm quản lý cơ sở dữ liệu, phân quyền cho người dùng, sao lưu dữ liệu và khôi phục dữ liệu trong trường hợp xảy ra sự cố.
- Kỹ sư dữ liệu, chịu trách nhiệm quản lý toàn bộ cơ sở hạ tầng và quy trình tích hợp dữ liệu của tổ chức, áp dụng các quy trình làm sạch dữ liệu, xác định các quy tắc quản trị dữ liệu và thực hiện các đường ống truyền và chuyển đổi dữ liệu giữa các hệ thống.
- Nhà phân tích dữ liệu, chịu trách nhiệm khám phá và phân tích dữ liệu để tạo các biểu đồ trực quan, giúp tổ chức đưa ra quyết định sáng suốt.
Các vai trò công việc định nghĩa các nhiệm vụ và trách nhiệm khác nhau. Tuy nhiên, trong một số tổ chức, cùng một người có thể đảm nhận nhiều vai trò.
DBA (Quản trị viên cơ sở dữ liệu)
Quản trị viên cơ sở dữ liệu chịu trách nhiệm thiết kế, triển khai và duy trì hệ thống cơ sở dữ liệu tại chỗ hoặc được lưu trữ trên đám mây. Họ chịu trách nhiệm về khả năng sẵn có tổng thể và tối ưu hóa hiệu suất của cơ sở dữ liệu. Họ hợp tác với các bên liên quan để triển khai các quy tắc, công cụ và quy trình kế hoạch sao lưu và khôi phục, để khôi phục sau thiên tai hoặc lỗi do con người.
Quản trị viên cơ sở dữ liệu cũng chịu trách nhiệm quản lý an ninh dữ liệu trong cơ sở dữ liệu, ủy quyền dữ liệu và cấp hoặc thu hồi quyền truy cập của người dùng.
Kỹ sư dữ liệu
Kỹ sư dữ liệu hợp tác với các bên liên quan để thiết kế và triển khai các công việc liên quan đến dữ liệu, bao gồm các đường ống trích xuất dữ liệu, hoạt động làm sạch và chuyển đổi cũng như lưu trữ dữ liệu cho công việc phân tích. Họ sử dụng nhiều công nghệ nền tảng dữ liệu, bao gồm cơ sở dữ liệu quan hệ và không quan hệ, lưu trữ tệp và luồng dữ liệu.
Họ cũng chịu trách nhiệm đảm bảo duy trì quyền riêng tư của dữ liệu tại các vị trí lưu trữ khác nhau trên đám mây và từ cơ sở hạ tầng tại chỗ lên đám mây.
Nhà phân tích dữ liệu
Nhà phân tích dữ liệu giúp doanh nghiệp tối đa hóa giá trị của tài sản dữ liệu của mình. Họ chịu trách nhiệm khám phá dữ liệu để tìm xu hướng và mối liên hệ, thiết kế và xây dựng các mô hình phân tích, và đạt được chức năng phân tích nâng cao thông qua báo cáo và biểu đồ trực quan.
Nhà phân tích dữ liệu chuyển đổi dữ liệu thô thành các thông tin liên quan dựa trên nhu cầu kinh doanh.
Các vai trò được mô tả ở đây đại diện cho các vai trò chính liên quan đến dữ liệu trong hầu hết các tổ chức vừa và lớn. Còn có các vai trò khác liên quan đến dữ liệu không được đề cập ở đây, chẳng hạn như nhà khoa học dữ liệu và kiến trúc sư dữ liệu; cũng như các chuyên gia kỹ thuật khác làm việc với dữ liệu, bao gồm nhà phát triển ứng dụng và kỹ sư phần mềm.
2.2 Dịch vụ dữ liệu
Dưới đây giới thiệu một số dịch vụ dữ liệu đám mây phổ biến nhất được Azure cung cấp.
Azure SQL
Azure SQL là danh từ chung cho tải game 789win một loạt các giải pháp cơ sở dữ liệu quan hệ dựa trên cơ sở dữ liệu Microsoft SQL Server. Các dịch vụ Azure SQL cụ thể bao gồm:
- Azure SQL Database - cơ sở dữ liệu dịch vụ nền tảng (PaaS) được quản lý hoàn toàn.
- Azure SQL Managed Instance - một phiên bản cơ sở dữ liệu SQL Server được quản lý với các chức năng bảo trì tự động, linh hoạt hơn so với Azure SQL Database nhưng chủ sở hữu cần chịu trách nhiệm quản lý nhiều hơn.
- Azure SQL VM - máy ảo có cài đặt SQL Server, cho phép cấu hình tối đa và chịu trách nhiệm quản lý hoàn toàn.
Quản trị viên cơ sở dữ liệu thường cung cấp và quản lý các hệ thống cơ sở dữ liệu Azure SQL để hỗ trợ các ứng dụng kinh doanh (LOB) cần lưu trữ dữ liệu giao dịch.
Kỹ sư dữ liệu có thể sử dụng hệ thống cơ sở dữ liệu Azure SQL làm nguồn dữ liệu cho các đường ống thực hiện các hoạt động trích xuất, chuyển đổi và tải (ETL) để trích xuất dữ liệu giao dịch vào hệ thống phân tích.
Nhà phân tích dữ liệu có thể truy vấn trực tiếp cơ sở dữ liệu Azure SQL để tạo báo cáo, nhưng trong các tổ chức lớn, dữ liệu này thường được kết hợp với dữ liệu khác từ các kho lưu trữ phân tích để hỗ trợ phân tích doanh nghiệp.
Azure Database cho Cơ Sở Dữ Liệu Mở Nguồn
Azure cung cấp nhiều dịch vụ được quản lý cho các cơ sở dữ liệu quan hệ mã nguồn mở phổ biến, bao gồm:
- Azure Database for MySQL - một hệ thống quản lý cơ sở dữ liệu mã nguồn mở dễ sử dụng, thường được sử dụng trong ứng dụng công nghệ LAMP (Linux, Apache, MySQL và PHP).
- Azure Database for MariaDB - một hệ thống quản lý cơ sở dữ liệu mới hơn, được tạo bởi các nhà phát triển ban đầu của MySQL. Bộ máy cơ sở dữ liệu đã được viết lại và tối ưu hóa cho hiệu suất. MariaDB cung cấp tính tương thích với Oracle Database.
- Azure Database for PostgreSQL - một cơ sở dữ liệu quan hệ/hỗn hợp đối tượng. Bạn có thể lưu trữ dữ liệu trong các bảng quan hệ, nhưng cơ sở dữ liệu PostgreSQL cũng cho phép lưu trữ các kiểu dữ liệu tùy chỉnh và các thuộc tính không quan hệ của riêng chúng.
Azure Cosmos DB
Azure Cosmos DB là một cơ sở dữ liệu không quan hệ (NoSQL) quy mô toàn cầu, hỗ trợ nhiều giao diện ứng dụng (API) cho phép bạn lưu trữ và quản lý dữ liệu dưới dạng tài liệu JSON, cặp khóa-giá trị, họ cột và đồ thị.
Azure Storage
Azure Storage là một dịch vụ lõi của Azure cho phép bạn lưu trữ dữ liệu ở:
- Container Blob - lưu trữ tệp nhị phân hiệu quả và có khả năng mở rộng.
- File Shares - chia sẻ tệp mạng, giống như bạn thường thấy trong mạng công ty.
- Tables - lưu trữ khóa-giá trị cho các ứng dụng cần đọc và ghi dữ liệu nhanh chóng.
Kỹ sư dữ liệu sử dụng Azure Storage để lưu trữ hồ dữ liệu - lưu trữ blob có không gian tên phân tầng, cho phép tổ chức tệp trong các thư mục của hệ thống tệp phân tán.
Azure Data Factory
Azure Data Factory là một dịch vụ Azure cho phép bạn định nghĩa và lên lịch các đường ống dữ liệu để truyền và chuyển đổi dữ liệu. Bạn có thể tích hợp các đường ống với các dịch vụ Azure khác, cho phép bạn trích xuất dữ liệu từ lưu trữ dữ liệu đám mây, xử lý dữ liệu bằng dịch vụ tính toán trên đám mây và lưu trữ kết quả trong một lưu trữ dữ liệu khác.
Kỹ sư dữ liệu sử dụng Azure Data Factory để xây dựng các giải pháp ETL (trích xuất, chuyển đổi và tải) sử dụng dữ liệu từ các hệ thống giao dịch trên toàn tổ chức để điền vào các kho lưu trữ phân tích.
Azure Synapse Analytics
Azure Synapse Analytics là một giải pháp phân tích dữ liệu toàn diện và thống nhất, cung cấp một giao diện dịch vụ đơn lẻ cho nhiều chức năng phân tích, bao gồm:
- Đường ống - dựa trên công nghệ giống như Azure Data Factory.
- SQL - một bộ máy cơ sở dữ liệu SQL cực kỳ có khả năng mở rộng, được tối ưu hóa cho công việc kho dữ liệu.
- Apache Spark - một hệ thống xử lý dữ liệu phân tán mã nguồn mở, hỗ trợ nhiều ngôn ngữ lập trình và API, bao gồm Java, Scala, Python và SQL.
- Azure Synapse Data Explorer - một giải pháp phân tích dữ liệu hiệu suất cao, được tối ưu hóa cho việc truy vấn thời gian thực dữ liệu nhật ký và telemetric bằng ngôn ngữ truy vấn Kusto (KQL).
Kỹ sư dữ liệu có thể sử dụng Azure Synapse Analytics để tạo các giải pháp phân tích dữ liệu thống nhất, kết hợp các đường ống trích xuất dữ liệu, lưu trữ kho dữ liệu và lưu trữ hồ dữ liệu qua một dịch vụ duy nhất.
Nhà phân tích dữ liệu có thể khám phá và phân tích dữ liệu bằng cách sử dụng Notebook tương tác với nhóm SQL và Spark, và tận dụng sự tích hợp với các dịch vụ như Azure Machine Learning và Microsoft Power BI để tạo mô hình dữ liệu và trích xuất thông tin từ dữ liệu.
Azure Databricks
Azure Databricks là phiên bản tích hợp Azure của nền tảng Databricks phổ biến, kết hợp nền tảng xử lý dữ liệu Apache Spark với ngữ nghĩa cơ sở dữ liệu SQL và giao diện quản lý tích hợp để thực hiện phân tích dữ liệu quy mô lớn.
Kỹ sư dữ liệu có thể sử dụng các kỹ năng Databricks và Spark hiện có để tạo kho lưu trữ phân tích dữ liệu trong Azure Databricks.
Nhà phân tích dữ liệu có thể sử dụng hỗ trợ Notebook gốc trong Azure Databricks để truy vấn và xem các chế độ xem dữ liệu trong giao diện web.
Azure HDInsight
Azure HDInsight cung cấp các cụm được quản lý trên Azure cho các công nghệ xử lý dữ liệu lớn mã nguồn mở phổ biến, bao gồm:
- Apache Spark - một hệ thống xử lý dữ liệu phân tán mã nguồn mở, hỗ trợ nhiều ngôn ngữ lập trình và API, bao gồm Java, Scala, Python và SQL.
- Apache Hadoop - một hệ thống phân tán sử dụng công việc MapReduce để xử lý hiệu quả khối lượng lớn dữ liệu trên nhiều nút cụm. Công việc MapReduce có thể được viết bằng Java hoặc trừu tượng hóa thông qua các giao diện như Apache Hive (một API dựa trên SQL chạy trên Hadoop).
- Apache HBase - một hệ thống mã nguồn mở để lưu trữ và truy vấn dữ liệu NoSQL quy mô lớn.
- Apache Kafka - thành phần tin nhắn cho xử lý luồng dữ liệu.
- Apache Storm - một hệ thống mã nguồn mở xử lý dữ liệu thời gian thực thông qua topologies spout và bolts.
Kỹ sư dữ liệu có thể sử dụng Azure HDInsight để hỗ trợ các công việc phân tích dữ liệu lớn phụ thuộc vào nhiều công nghệ mã nguồn mở khác nhau.
Azure Stream Analytics
Azure Stream Analytics là một động cơ xử lý luồng thời gian thực, bắt dữ liệu luồng từ đầu vào, áp dụng truy vấn lên luồng đầu vào để trích xuất và xử lý dữ liệu, và ghi kết quả vào đầu ra để phân tích hoặc xử lý thêm.
Kỹ sư dữ liệu có thể tích hợp Azure Stream Analytics vào kiến trúc phân tích dữ liệu để bắt luồng dữ liệu và dẫn nó vào kho lưu trữ phân tích hoặc trực quan hóa thời gian thực.
Azure Data Explorer
Azure Data Explorer là một dịch vụ độc lập cung cấp khả năng truy vấn hiệu suất cao dữ liệu nhật ký và telemetric giống như trong Azure Synapse Data Explorer runtime của Azure Synapse Analytics.
Nhà phân tích dữ liệu có thể sử dụng Azure Data Explorer để truy vấn và phân tích dữ liệu có thuộc tính thời gian, chẳng hạn như dữ liệu thường thấy trong các tệp nhật ký và dữ liệu telemetric IoT (Internet of Things).
Microsoft Purview
Microsoft Purview cung cấp giải pháp cho quản trị dữ liệu và khả năng khám phá phạm vi doanh nghiệp. Bạn có thể sử dụng Microsoft Purview để tạo bản đồ dữ liệu và theo dõi di sản dữ liệu qua nhiều nguồn dữ liệu và hệ thống, cho phép bạn tìm thấy dữ liệu đáng tin cậy để phân tích và báo cáo.
Kỹ sư dữ liệu có thể sử dụng Microsoft Purview để triển khai quản trị dữ liệu trên toàn doanh nghiệp và đảm bảo tính toàn vẹn của dữ liệu được sử dụng để hỗ trợ công việc phân tích.
Microsoft Power BI
Microsoft Power BI là một nền tảng cho việc xây dựng mô hình phân tích dữ liệu và trình bày báo cáo, nhà phân tích dữ liệu có thể sử dụng để tạo và chia sẻ các báo cáo trực quan tương tác. Báo cáo Power BI có thể được tạo bằng ứng dụng Power BI Desktop, sau đó được xuất bản qua web tới dịch vụ Power BI và ứng dụng di động Power BI.
[1] Thi DP-900: Cơ Bản Dữ Liệu Microsoft Azure - learn.microsoft.com