Logo Zephyrnet

Quản trị dữ liệu tự động với Chất lượng dữ liệu AWS Glue, tính năng phát hiện dữ liệu nhạy cảm và AWS Lake Formation | Dịch vụ web của Amazon

Ngày:

Quản trị dữ liệu là quá trình đảm bảo tính toàn vẹn, tính sẵn có, khả năng sử dụng và bảo mật dữ liệu của tổ chức. Do khối lượng, tốc độ và sự đa dạng của dữ liệu được đưa vào hồ dữ liệu, việc phát triển và duy trì các chính sách cũng như quy trình nhằm đảm bảo quản trị dữ liệu trên quy mô lớn cho hồ dữ liệu của bạn có thể gặp khó khăn. Bảo mật dữ liệu và chất lượng dữ liệu là hai chủ đề thiết yếu cho quản trị dữ liệu. Bảo mật dữ liệu đề cập đến việc bảo vệ và kiểm soát thông tin nhạy cảm và riêng tư để ngăn chặn truy cập trái phép, đặc biệt khi xử lý thông tin nhận dạng cá nhân (PII). Chất lượng dữ liệu tập trung vào việc duy trì dữ liệu chính xác, đáng tin cậy và nhất quán trong toàn tổ chức. Chất lượng dữ liệu kém có thể dẫn đến những quyết định sai lầm, hoạt động kém hiệu quả và ảnh hưởng đến hiệu quả kinh doanh.

Các công ty cần đảm bảo tính bảo mật dữ liệu được duy trì trong suốt đường truyền dữ liệu và dữ liệu chất lượng cao được cung cấp kịp thời cho người tiêu dùng. Phần lớn nỗ lực này được thực hiện thủ công, trong đó chủ sở hữu dữ liệu và người quản lý dữ liệu xác định và áp dụng các chính sách tĩnh trước cho từng tập dữ liệu trong kho. Điều này trở nên tẻ nhạt và trì hoãn việc áp dụng dữ liệu trên toàn doanh nghiệp.

Trong bài đăng này, chúng tôi giới thiệu cách sử dụng Keo AWS với Chất lượng dữ liệu keo AWS, biến đổi phát hiện dữ liệu nhạy cảmSự hình thành hồ AWS kiểm soát truy cập dựa trên thẻ để tự động hóa quản trị dữ liệu.

Tổng quan về giải pháp

Hãy xem xét một công ty hư cấu, OkTank. OkTank có nhiều đường dẫn nhập chứa nhiều bảng trong hồ dữ liệu. OkTank muốn đảm bảo hồ dữ liệu luôn được quản lý bằng các quy tắc chất lượng dữ liệu và chính sách truy cập.

Nhiều cá nhân sử dụng dữ liệu từ hồ dữ liệu, chẳng hạn như lãnh đạo doanh nghiệp, nhà khoa học dữ liệu, nhà phân tích dữ liệu và kỹ sư dữ liệu. Đối với mỗi nhóm người dùng, cần có một mức độ quản trị khác nhau. Ví dụ: các nhà lãnh đạo doanh nghiệp cần dữ liệu có chất lượng hàng đầu và có độ chính xác cao, các nhà khoa học dữ liệu không thể xem dữ liệu PII và cần dữ liệu trong phạm vi chất lượng có thể chấp nhận được để đào tạo mô hình của họ và các kỹ sư dữ liệu có thể xem tất cả dữ liệu ngoại trừ PII.

Hiện tại, các yêu cầu này được mã hóa cứng và quản lý thủ công cho từng nhóm người dùng. OkTank muốn mở rộng quy mô này và đang tìm cách kiểm soát quản trị theo cách tự động. Chủ yếu, họ đang tìm kiếm các tính năng sau:

  • Khi dữ liệu và bảng mới được thêm vào hồ dữ liệu, các chính sách quản trị (kiểm tra chất lượng dữ liệu và kiểm soát quyền truy cập) sẽ tự động được áp dụng cho chúng. Trừ khi dữ liệu được chứng nhận để sử dụng, người dùng cuối sẽ không thể truy cập được dữ liệu đó. Ví dụ: họ muốn đảm bảo áp dụng các biện pháp kiểm tra chất lượng dữ liệu cơ bản trên tất cả các bảng mới và cung cấp quyền truy cập vào dữ liệu dựa trên điểm chất lượng dữ liệu.
  • Do những thay đổi trong dữ liệu nguồn, hồ sơ dữ liệu hiện có của các bảng hồ dữ liệu có thể bị trôi. Cần phải đảm bảo việc quản trị được đáp ứng như đã xác định. Ví dụ: hệ thống sẽ tự động đánh dấu các cột là nhạy cảm nếu phát hiện thấy dữ liệu nhạy cảm trong cột trước đó được đánh dấu là công khai và có sẵn công khai cho người dùng. Hệ thống sẽ ẩn cột khỏi người dùng trái phép.

Với mục đích của bài đăng này, các chính sách quản trị sau đây được xác định:

  • Không có dữ liệu PII nào tồn tại trong các bảng hoặc cột được gắn thẻ là public.
  • Nếu một cột có bất kỳ dữ liệu PII nào thì cột đó phải được đánh dấu là sensitive. Bảng sau đó cũng nên được đánh dấu sensitive.
  • Các quy tắc chất lượng dữ liệu sau đây phải được áp dụng trên tất cả các bảng:
    • Tất cả các bảng phải có một tập hợp cột tối thiểu: data_key, data_load_datedata_location.
    • data_key là cột chính và phải đáp ứng các yêu cầu chính là duy nhất và đầy đủ.
    • data_location phải khớp với các vị trí được xác định trong bảng tham chiếu (cơ sở) riêng biệt.
    • Sản phẩm data_load_date cột phải được hoàn thành.
  • Quyền truy cập của người dùng vào các bảng được kiểm soát theo bảng sau.
Mô tả người sử dụng Có thể truy cập các bảng nhạy cảm Có thể truy cập các cột nhạy cảm Ngưỡng chất lượng dữ liệu tối thiểu cần thiết để sử dụng dữ liệu
Loại 1 100%
Loại 2 Không 50%
Loại 3 Không Không 0%

Trong bài đăng này, chúng tôi sử dụng Chất lượng dữ liệu AWS Glue và các tính năng phát hiện dữ liệu nhạy cảm. Chúng tôi cũng sử dụng Lake Formation kiểm soát truy cập dựa trên thẻ để quản lý quyền truy cập ở quy mô lớn.

Sơ đồ sau minh họa kiến ​​trúc giải pháp.

Các yêu cầu quản trị được nêu bật trong bảng trước được dịch sang Thẻ LF của Lake Formation sau đây.

Người dùng IAM Thẻ LF: tbl_class Thẻ LF: col_class Thẻ LF: dq_tag
Loại 1 nhạy cảm, công khai nhạy cảm, công khai DQ100
Loại 2 nhạy cảm, công khai công khai DQ100,DQ90,DQ50_80,DQ80_90
Loại 3 công khai công khai DQ90, DQ100, DQ_LT_50, DQ50_80, DQ80_90

Bài đăng này sử dụng Chức năng bước AWS để điều phối các công việc quản trị, nhưng bạn có thể sử dụng bất kỳ công cụ điều phối nào khác mà bạn chọn. Để mô phỏng quá trình nhập dữ liệu, chúng tôi đặt các tệp theo cách thủ công vào một Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3). Trong bài đăng này, chúng tôi kích hoạt máy trạng thái Step Functions theo cách thủ công để dễ hiểu. Trong thực tế, bạn có thể tích hợp hoặc gọi các công việc như một phần của quy trình nhập dữ liệu, thông qua trình kích hoạt sự kiện như trình thu thập dữ liệu AWS Glue hoặc sự kiện Amazon S3 hoặc lên lịch cho chúng nếu cần.

Trong bài đăng này, chúng tôi sử dụng cơ sở dữ liệu AWS Glue có tên oktank_autogov_temp và một bảng mục tiêu có tên customer trên đó chúng tôi áp dụng các quy tắc quản trị. Chúng tôi sử dụng Hình thành đám mây AWS để cung cấp các nguồn lực. AWS CloudFormation cho phép bạn lập mô hình, cung cấp và quản lý tài nguyên của AWS và bên thứ ba bằng cách xử lý cơ sở hạ tầng dưới dạng mã.

Điều kiện tiên quyết

Hoàn thành các bước điều kiện tiên quyết sau:

  1. Xác định Khu vực AWS mà bạn muốn tạo tài nguyên trong đó và đảm bảo bạn sử dụng cùng Khu vực đó trong suốt quá trình thiết lập và xác minh.
  2. Có sự hình thành hồ quản trị viên vai trò chạy mẫu CloudFormation và cấp quyền.

Đăng nhập vào bảng điều khiển Lake Formation và thêm chính bạn làm quản trị viên hồ dữ liệu Lake Formation nếu bạn chưa phải là quản trị viên. Nếu bạn đang thiết lập Lake Formation lần đầu tiên trong Khu vực của mình thì bạn có thể thực hiện việc này trong cửa sổ bật lên sau xuất hiện khi bạn kết nối với bảng điều khiển Lake Formation và chọn Khu vực mong muốn.

Nếu không, bạn có thể thêm quản trị viên hồ dữ liệu bằng cách chọn Vai trò và nhiệm vụ quản trị trong ngăn điều hướng trên bảng điều khiển Lake Formation và chọn Thêm quản trị viên. Sau đó chọn Quản trị viên hồ dữ liệu, xác định người dùng và vai trò của bạn rồi chọn Xác nhận.

Triển khai ngăn xếp CloudFormation

Chạy được cung cấp Ngăn xếp CloudFormation để tạo ra các nguồn lực giải pháp.

Bạn cần cung cấp một tên nhóm duy nhất và chỉ định mật khẩu cho ba người dùng phản ánh ba tính cách người dùng khác nhau (Danh mục 1, Danh mục 2 và Danh mục 3) mà chúng tôi sử dụng cho bài đăng này.

Ngăn xếp cung cấp một bộ chứa S3 để lưu trữ dữ liệu giả, tập lệnh AWS Glue, kết quả phát hiện dữ liệu nhạy cảm và amazon Athena kết quả truy vấn trong các thư mục tương ứng của họ.

Ngăn xếp sao chép tập lệnh AWS Glue vào scripts thư mục và tạo hai công việc AWS Glue Data-Quality-PII-Checker_JobLF-Tag-Handler_Job trỏ đến các tập lệnh tương ứng.

Công việc keo AWS Data-Quality-PII-Checker_Job áp dụng các quy tắc chất lượng dữ liệu và công bố kết quả. Nó cũng kiểm tra dữ liệu nhạy cảm trong các cột. Trong bài đăng này, chúng tôi kiểm tra PERSON_NAMEEMAIL loai du lieu. Nếu phát hiện thấy bất kỳ cột nào có dữ liệu nhạy cảm, kết quả phát hiện dữ liệu nhạy cảm sẽ được lưu vào bộ chứa S3.

Sử dụng chất lượng dữ liệu keo AWS Ngôn ngữ định nghĩa chất lượng dữ liệu (DQDL) để soạn thảo các quy tắc chất lượng dữ liệu.

Các yêu cầu về chất lượng dữ liệu như được xác định trước đó trong bài đăng này được viết dưới dạng DQDL sau trong tập lệnh:

Rules = [
ReferentialIntegrity "data_location" "reference.data_location" = 1.0,
IsPrimaryKey "data_key",
ColumnExists "data_load_date",
IsComplete "data_load_date
]

Ảnh chụp màn hình sau đây hiển thị kết quả mẫu từ công việc sau khi nó chạy. Bạn có thể thấy điều này sau khi kích hoạt quy trình làm việc Step Functions trong các bước tiếp theo. Để kiểm tra kết quả, trên bảng điều khiển AWS Glue, hãy chọn công việc ETL và chọn công việc mang tên Data-Quality-PII-Checker_Job. Sau đó, điều hướng đến Chất lượng dữ liệu tab để xem kết quả.

Công việc keo AWSLF-Tag-Handler_Job tìm nạp số liệu chất lượng dữ liệu được xuất bản bởi Data-Quality-PII-Checker_Job. Nó kiểm tra trạng thái của DataQuality_PIIColumns kết quả. Nó lấy danh sách các tên cột nhạy cảm từ tệp phát hiện dữ liệu nhạy cảm được tạo trong Data-Quality-PII-Checker_Job và gắn thẻ các cột là sensitive. Các cột còn lại được gắn thẻ là public. Nó cũng gắn thẻ bảng làsensitive nếu các cột nhạy cảm được phát hiện. Bảng được đánh dấu là public nếu không phát hiện thấy cột nhạy cảm.

Công việc cũng kiểm tra điểm chất lượng dữ liệu cho DataQuality_BasicChecks tập kết quả. Nó ánh xạ điểm chất lượng dữ liệu vào các thẻ như được hiển thị trong bảng sau và áp dụng thẻ tương ứng trên bảng.

Điểm chất lượng dữ liệu Thẻ chất lượng dữ liệu
100% DQ100
Từ 90-100% DQ90
Từ 80-90% DQ80_90
Từ 50-80% DQ50_80
Ít hơn 50% DQ_LT_50

Ngăn xếp CloudFormation sao chép một số dữ liệu mô phỏng vào data thư mục và đăng ký vị trí này trong AWS Lake Formation Vị trí hồ dữ liệu vì vậy Lake Formation có thể quản lý quyền truy cập vào vị trí đó bằng cách sử dụng vai trò liên kết dịch vụ đối với Hồ hình thành.

Sản phẩm customer thư mục con chứa tập dữ liệu khách hàng ban đầu cho bảng customer. Các base thư mục con chứa tập dữ liệu cơ sở mà chúng tôi sử dụng để kiểm tra tính toàn vẹn tham chiếu như một phần của kiểm tra chất lượng dữ liệu. cột data_location trong customer bảng phải khớp với các vị trí được xác định trong này base bảng.

Ngăn xếp cũng sao chép một số dữ liệu mô phỏng bổ sung vào nhóm bên dưới data-v1 thư mục. Chúng tôi sử dụng dữ liệu này để mô phỏng các vấn đề về chất lượng dữ liệu.

Nó cũng tạo ra các tài nguyên sau:

  • Cơ sở dữ liệu AWS Glue có tên oktank_autogov_temp và hai bảng trong cơ sở dữ liệu:
    • khách hàng – Đây là bảng mục tiêu mà chúng tôi sẽ quản lý quyền truy cập dựa trên các quy tắc chất lượng dữ liệu và kiểm tra PII.
    • cơ sở – Đây là bảng cơ sở chứa dữ liệu tham chiếu. Một trong những quy tắc chất lượng dữ liệu sẽ kiểm tra xem dữ liệu khách hàng có luôn tuân thủ các vị trí có trong bảng cơ sở hay không.
  • Quản lý truy cập và nhận dạng AWS (IAM) người dùng và vai trò:
    • DataLakeUser_Category1 – Người dùng hồ dữ liệu tương ứng với người dùng Loại 1. Người dùng này có thể truy cập dữ liệu nhạy cảm nhưng cần dữ liệu chính xác 100%.
    • DataLakeUser_Category2 – Người dùng hồ dữ liệu tương ứng với người dùng Loại 2. Người dùng này sẽ không thể truy cập các cột nhạy cảm trong bảng. Nó cần dữ liệu chính xác hơn 50%.
    • DataLakeUser_Category3 – Người dùng hồ dữ liệu tương ứng với người dùng Loại 3. Người dùng này sẽ không thể truy cập các bảng chứa dữ liệu nhạy cảm. Chất lượng dữ liệu có thể là 0%.
    • KeoDịch vụDQVai trò – Vai trò của công việc phát hiện dữ liệu nhạy cảm và chất lượng dữ liệu.
    • KeoDịch vụLFTaggerVai trò – Vai trò của công việc xử lý Thẻ LF để áp dụng các thẻ vào bảng.
    • BướcChức năngVai trò – Vai trò Step Functions để kích hoạt công việc AWS Glue.
  • Các khóa và giá trị của Thẻ LF của Lake Formation:
    • tbl_classsensitive, public
    • dq_classDQ100, DQ90, DQ80_90, DQ50_80, DQ_LT_50
    • lớp col_sensitive, public
  • Máy trạng thái Step Functions có tên AutoGovMachine mà bạn sử dụng để kích hoạt các lần chạy tác vụ AWS Glue nhằm kiểm tra chất lượng dữ liệu và cập nhật Thẻ LF.
  • Nhóm làm việc của Athena được đặt tên auto_gov_blog_workgroup_temporary_user1, auto_gov_blog_workgroup_temporary_user2auto_gov_blog_workgroup_temporary_user3. Các nhóm làm việc này hướng tới các Athena khác nhau vị trí kết quả truy vấn cho mỗi người dùng. Mỗi người dùng chỉ được cấp quyền truy cập vào vị trí kết quả truy vấn tương ứng. Điều này đảm bảo một người dùng cụ thể không truy cập vào kết quả truy vấn của người dùng khác. Bạn nên chuyển sang một nhóm làm việc cụ thể để chạy truy vấn trong Athena như một phần của quá trình kiểm tra đối với người dùng cụ thể.

Ngăn xếp CloudFormation tạo ra các kết quả đầu ra sau. Lưu ý các giá trị của người dùng IAM để sử dụng trong các bước tiếp theo.

Cấp quyền

Sau khi bạn khởi chạy ngăn xếp CloudFormation, hãy hoàn thành các bước sau:

  1. Trên bảng điều khiển Lake Formation, dưới Quyền chọn Quyền của hồ dữ liệu trong khung điều hướng.
  2. Tìm kiếm cơ sở dữ liệu oktank_autogov_temp và bảng customer.
  3. If IAMAllowedPrincipals truy cập nếu có, chọn nó chọn Thu hồi.

  1. Chọn Thu hồi một lần nữa để thu hồi quyền.

Người dùng loại 1 có thể truy cập tất cả dữ liệu trừ khi điểm chất lượng dữ liệu của bảng dưới 100%. Vì vậy, chúng tôi cấp cho người dùng những quyền cần thiết.

  1. Theo Quyền trong ngăn điều hướng, chọn Quyền của hồ dữ liệu.
  2. Tìm kiếm cơ sở dữ liệu oktank_autogov_temp và bảng customer.
  3. Chọn Cấp
  4. Chọn Người dùng IAM và vai trò và chọn giá trị cho UserCategory1 từ đầu ra ngăn xếp CloudFormation của bạn.
  5. Theo Thẻ LF hoặc tài nguyên danh mục, chọn Thêm cặp khóa-giá trị thẻ LF-Tag.
  6. Thêm các cặp khóa-giá trị sau:
    1. Đối với col_class khóa, thêm các giá trị publicsensitive.
    2. Đối với tbl_class khóa, thêm các giá trị publicsensitive.
    3. Đối với dq_tag khóa, thêm giá trị DQ100.

  1. Trong Quyền bảng, lựa chọn Chọn.
  2. Chọn Cấp.

Người dùng loại 2 không thể truy cập các cột nhạy cảm. Họ có thể truy cập các bảng có điểm chất lượng dữ liệu trên 50%.

  1. Lặp lại các bước trước để cấp các quyền thích hợp trong Lake Formation cho UserCategory2:
    1. Đối với col_class khóa, thêm giá trị public.
    2. Đối với tbl_class khóa, thêm các giá trị publicsensitive.
    3. Đối với dq_tag khóa, thêm các giá trị DQ50_80, DQ80_90, DQ90DQ100.

  1. Trong Quyền bảng, lựa chọn Chọn.
  2. Chọn Cấp.

Người dùng loại 3 không thể truy cập các bảng có chứa bất kỳ cột nhạy cảm nào. Các bảng như vậy được đánh dấu là sensitive bởi hệ thống. Họ có thể truy cập các bảng với bất kỳ điểm chất lượng dữ liệu nào.

  1. Lặp lại các bước trước để cấp các quyền thích hợp trong Lake Formation cho UserCategory3:
    1. Đối với col_class khóa, thêm giá trị public.
    2. Đối với tbl_class khóa, thêm giá trị public.
    3. Đối với dq_tag khóa, thêm các giá trị DQ_LT_50, DQ50_80, DQ80_90, DQ90DQ100.

  1. Trong Quyền bảng, lựa chọn Chọn.
  2. Chọn Cấp.

Bạn có thể xác minh các quyền của Thẻ LF được chỉ định trong Lake Formation bằng cách điều hướng đến Quyền của hồ dữ liệu trang và tìm kiếm loại Tài nguyên LF-Tag expression.

Kiểm tra giải pháp

Bây giờ chúng ta có thể kiểm tra quy trình làm việc. Chúng tôi kiểm tra ba trường hợp sử dụng khác nhau trong bài đăng này. Bạn sẽ nhận thấy các quyền đối với các bảng thay đổi như thế nào dựa trên các giá trị của Thẻ LF được áp dụng cho customer bảng và các cột của bảng. Chúng tôi sử dụng Athena để truy vấn các bảng.

Trường hợp sử dụng 1

Trong trường hợp sử dụng đầu tiên này, một bảng mới đã được tạo trên hồ và dữ liệu mới được nhập vào bảng. Tệp dữ liệu cust_feedback_v0.csv đã được sao chép vào data/customer vị trí trong nhóm S3. Điều này mô phỏng việc nhập dữ liệu mới trên một bảng mới gọi là customer.

Lake Formation hiện không cho phép bất kỳ người dùng nào truy cập vào bảng này. Để kiểm tra kịch bản này, hãy hoàn thành các bước sau:

  1. Đăng nhập tới bảng điều khiển Athena bằng UserCategory1 người sử dụng.
  2. Chuyển nhóm làm việc sang auto_gov_blog_workgroup_temporary_user1 trong trình soạn thảo truy vấn Athena.
  3. Chọn Công nhận để chấp nhận cài đặt nhóm làm việc.

  1. Chạy truy vấn sau trong trình soạn thảo truy vấn:
select * from "oktank_autogov_temp"."customer" limit 10

  1. Trên các chức năng bước giao diện điều khiển, chạy AutoGovMachine máy trạng thái.
  2. Trong tạp chí Đầu vào - tùy chọn phần này, hãy sử dụng JSON sau đây và thay thế phần BucketName giá trị bằng tên nhóm bạn đã sử dụng cho ngăn xếp CloudFormation trước đó (đối với bài đăng này, chúng tôi sử dụng auto-gov-blog):
{ "Comment": "Auto Governance with AWS Glue and AWS LakeFormation", "BucketName": "<Replace with your bucket name>"
}

Máy trạng thái kích hoạt các tác vụ AWS Glue để kiểm tra chất lượng dữ liệu trên bảng và áp dụng Thẻ LF tương ứng.

  1. Bạn có thể kiểm tra các Thẻ LF được áp dụng trên bảng và các cột. Để làm như vậy, khi máy trạng thái hoàn tất, hãy đăng nhập vào Lake Formation bằng vai trò quản trị viên được sử dụng trước đó để cấp quyền.
  2. Điều hướng đến bảng customer theo oktank_autogov_temp cơ sở dữ liệu và chọn Chỉnh sửa thẻ LF để xác nhận các thẻ được áp dụng trên bảng.

Bạn cũng có thể xác thực các cột đó customer_emailcustomer_name được gắn thẻ là nhạy cảm đối với col_class Thẻ LF.

  1. Để kiểm tra điều này, hãy chọn Chỉnh sửa lược đồ cho customer bảng.
  2. Chọn hai cột và chọn Chỉnh sửa thẻ LF.

Bạn có thể kiểm tra các thẻ trên các cột này.

Các cột còn lại được gắn thẻ là public.

  1. Đăng nhập vào bảng điều khiển Athena bằng UserCategory1 và chạy lại cùng một truy vấn:
select * from "oktank_autogov_temp"."customer" limit 10

Lần này, người dùng có thể xem dữ liệu. Điều này là do các quyền của Thẻ LF mà chúng tôi đã áp dụng trước đó đang có hiệu lực.

  1. Đăng nhập với tư cách UserCategory2 người dùng để xác minh quyền.
  2. Chuyển sang nhóm làm việc auto_gov_blog_workgroup_temporary_user2 trong Athena.

Người dùng này có thể truy cập vào bảng nhưng chỉ có thể xem các cột công khai. Vì vậy, người dùng sẽ không thể nhìn thấy customer_emailcustomer_phone cột vì những cột này chứa dữ liệu nhạy cảm được hệ thống xác định.

  1. Chạy lại cùng một truy vấn:
select * from "oktank_autogov_temp"."customer" limit 10

  1. Đăng nhập vào Athena và xác minh quyền cho DataLakeUser_Category3.
  2. Chuyển sang nhóm làm việc auto_gov_blog_workgroup_temporary_user3 trong Athena.

Người dùng này không thể truy cập vào bảng vì bảng được đánh dấu là sensitive do sự hiện diện của các cột dữ liệu nhạy cảm trong bảng.

  1. Chạy lại cùng một truy vấn:
select * from "oktank_autogov_temp"."customer" limit 10

Trường hợp sử dụng 2

Hãy nhập một số dữ liệu mới trên bảng.

  1. Đăng nhập vào bảng điều khiển Amazon S3 bằng vai trò quản trị viên được sử dụng trước đó để cấp quyền.
  2. Sao chép tệp cust_feedback_v1.csv từ data-v1 thư mục trong nhóm S3 vào data/customer thư mục trong nhóm S3 bằng các tùy chọn mặc định.

Tệp dữ liệu mới này có vấn đề về chất lượng dữ liệu vì cột data_location phá vỡ tính toàn vẹn tham chiếu với base bàn. Dữ liệu này cũng giới thiệu một số dữ liệu nhạy cảm trong cột comment1. Cột này trước đó được đánh dấu là public vì nó không có bất kỳ dữ liệu nhạy cảm nào.

Ảnh chụp màn hình sau đây cho thấy những gì customer thư mục sẽ trông giống như bây giờ.

  1. Chạy lại máy trạng thái AutoGovMachine và sử dụng JSON giống như đầu vào StartExecution mà bạn đã sử dụng trước đó:
{ "Comment": "Auto Governance with AWS Glue and AWS LakeFormation", "BucketName": "<Replace with your bucket name>"
}

Cột phân loại công việc comment1 as sensitive trên customer bàn. Nó cũng cập nhật các dq_tag giá trị trên bảng vì chất lượng dữ liệu đã thay đổi do vi phạm việc kiểm tra tính toàn vẹn tham chiếu.

Bạn có thể xác minh giá trị thẻ mới thông qua bảng điều khiển Lake Formation như được mô tả trước đó. Các dq_tag giá trị là DQ100. Giá trị được thay đổi thành DQ50_80, phản ánh điểm chất lượng dữ liệu cho bảng.

Ngoài ra, trước đó giá trị của col_class thẻ cho comment1 cột đã public. Giá trị bây giờ được thay đổi thành sensitive vì dữ liệu nhạy cảm được phát hiện trong cột này.

Người dùng loại 2 sẽ không thể truy cập các cột nhạy cảm trong bảng.

  1. Đăng nhập với UserCategory2 tới Athena và chạy lại truy vấn trước đó:
select * from "oktank_autogov_temp"."customer" limit 10

Cột comment1 bây giờ không có sẵn cho UserCategory2 như mong đợi. Quyền truy cập được xử lý tự động.

Ngoài ra, do điểm chất lượng dữ liệu giảm xuống dưới 100% nên tập dữ liệu mới này hiện không có sẵn cho Category1 người dùng. Người dùng này chỉ có quyền truy cập vào dữ liệu khi điểm đạt 100% theo quy tắc đã xác định của chúng tôi.

  1. Đăng nhập với UserCategory1 tới Athena và chạy lại truy vấn trước đó:
select * from "oktank_autogov_temp"."customer" limit 10

Bạn sẽ thấy người dùng hiện không thể truy cập vào bảng. Quyền truy cập được xử lý tự động.

Trường hợp sử dụng 3

Hãy sửa dữ liệu không hợp lệ và loại bỏ vấn đề về chất lượng dữ liệu.

  1. Xóa cust_feedback_v1.csv tập tin từ data/customer Vị trí của Amazon S3.
  2. Sao chép tệp cust_feedback_v1_fixed.csv từ data-v1 thư mục trong nhóm S3 vào data/customer Vị trí S3. Tệp dữ liệu này khắc phục các vấn đề về chất lượng dữ liệu.
  3. Chạy lại AutoGovMachine máy trạng thái.

Khi máy trạng thái hoàn tất, điểm chất lượng dữ liệu lại tăng lên 100% và thẻ trên bảng sẽ được cập nhật tương ứng. Bạn có thể xác minh thẻ mới như được hiển thị trước đó thông qua bảng điều khiển Lake Formation.

Sản phẩm Category1 người dùng có thể truy cập lại vào bảng.

Làm sạch

Để tránh phát sinh thêm phí, hãy xóa ngăn xếp CloudFormation để xóa các tài nguyên được cung cấp như một phần của bài đăng này.

Kết luận

Bài đăng này đề cập đến Chất lượng dữ liệu AWS Glue và các tính năng phát hiện nhạy cảm cũng như kiểm soát truy cập dựa trên Lake Formation LF-Tag. Chúng tôi đã khám phá cách bạn có thể kết hợp các tính năng này và sử dụng chúng để xây dựng khả năng quản trị dữ liệu tự động có thể mở rộng trên hồ dữ liệu của bạn. Chúng tôi đã khám phá cách các quyền của người dùng thay đổi khi dữ liệu được nhập vào bảng lần đầu tiên và khi quan sát thấy sự trôi dạt dữ liệu như một phần của các lần nhập tiếp theo.

Để đọc thêm, hãy tham khảo các tài nguyên sau:


Lưu ý

Nhà ma Shoukat là Kiến trúc sư giải pháp chuyên gia dữ liệu lớn cấp cao tại AWS. Anh giúp khách hàng trên toàn thế giới xây dựng nền tảng dữ liệu mạnh mẽ, hiệu quả và có thể mở rộng trên AWS bằng cách tận dụng các dịch vụ phân tích AWS như AWS Glue, AWS Lake Formation, Amazon Athena và Amazon EMR.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img