Logo Zephyrnet

Định cấu hình quyền truy cập bảng trên nhiều Khu vực với AWS Glue Catalog và AWS Lake Formation | Dịch vụ web của Amazon

Ngày:

Các hồ dữ liệu hiện đại ngày nay trải rộng trên nhiều tài khoản, Khu vực AWS và ngành nghề kinh doanh trong các tổ chức. Các công ty cũng có nhân viên và kinh doanh trên nhiều khu vực địa lý và thậm chí trên toàn thế giới. Điều quan trọng là giải pháp dữ liệu của họ mang lại cho họ khả năng chia sẻ và truy cập dữ liệu một cách an toàn và bảo mật trên khắp các Khu vực.

Sản phẩm Danh mục dữ liệu keo AWSSự hình thành hồ AWS vừa công bố hỗ trợ cho truy cập bảng xuyên khu vực. Tính năng này cho phép người dùng truy vấn Keo AWS cơ sở dữ liệu và bảng trong một Khu vực từ một Khu vực khác bằng cách sử dụng các liên kết tài nguyên mà không cần sao chép siêu dữ liệu trong Danh mục dữ liệu hoặc dữ liệu trong Dịch vụ lưu trữ đơn giản của Amazon (Amazon S3). MỘT liên kết tài nguyên là một đối tượng Danh mục dữ liệu là một liên kết đến cơ sở dữ liệu hoặc bảng.

Danh mục dữ liệu AWS Glue là kho lưu trữ siêu dữ liệu kỹ thuật tập trung chứa thông tin về tập dữ liệu của bạn trong AWS và có thể được truy vấn bằng các dịch vụ phân tích AWS như amazon Athena, Amazon EMRvà AWS Glue cho Apache Spark. Danh mục dữ liệu được bản địa hóa cho mọi Khu vực trong tài khoản AWS, yêu cầu người dùng sao chép siêu dữ liệu và dữ liệu nguồn trong bộ chứa S3 cho các truy vấn giữa các Khu vực. Với tính năng mới ra mắt để truy cập bảng giữa các Khu vực, bạn có thể tạo liên kết tài nguyên ở bất kỳ Khu vực nào trỏ tới cơ sở dữ liệu hoặc bảng của Khu vực nguồn. Với liên kết tài nguyên trong Khu vực địa phương, bạn có thể truy vấn các bảng của Khu vực nguồn từ Athena, Amazon EMR và AWS Glue ETL trong Khu vực địa phương.

Bạn có thể sử dụng tính năng truy cập bảng giữa các khu vực của Danh mục dữ liệu kết hợp với khả năng quản lý quyền và chia sẻ nhiều tài khoản của Lake Formation. Lake Formation là một dịch vụ được quản lý hoàn toàn giúp bạn dễ dàng xây dựng, bảo mật và quản lý các hồ dữ liệu. Bằng cách sử dụng hỗ trợ truy cập giữa các khu vực cho Danh mục dữ liệu, cùng với khả năng quản trị do Lake Formation cung cấp, các tổ chức có thể khám phá và truy cập dữ liệu trên khắp các Khu vực mà không cần mất thời gian tạo bản sao. Một số doanh nghiệp có thể có những hạn chế trong việc chạy điện toán của họ ở một số Khu vực nhất định. Các tổ chức cần chia sẻ Danh mục dữ liệu của họ với các doanh nghiệp có những hạn chế như vậy giờ đây có thể tạo và chia sẻ các liên kết tài nguyên giữa các khu vực.

Trong bài đăng này, chúng tôi sẽ hướng dẫn bạn cách định cấu hình quyền truy cập vào bảng và cơ sở dữ liệu giữa các khu vực trong hai trường hợp. Trong kịch bản đầu tiên, chúng ta xem xét một ví dụ trong đó khách hàng muốn truy cập cơ sở dữ liệu AWS Glue ở Khu vực A từ Khu vực B trong cùng một tài khoản. Trong kịch bản hai, chúng tôi chứng minh quyền truy cập nhiều tài khoản và nhiều khu vực trong đó khách hàng muốn chia sẻ cơ sở dữ liệu ở Khu vực A giữa các tài khoản và truy cập cơ sở dữ liệu đó từ Khu vực B của tài khoản người nhận.

Tình huống 1: Trường hợp sử dụng cùng một tài khoản

Trong trường hợp này, chúng tôi sẽ hướng dẫn bạn các bước cần thiết để chia sẻ cơ sở dữ liệu Danh mục dữ liệu từ Vùng này sang Vùng khác trong cùng một tài khoản AWS. Để minh họa, chúng tôi có tập dữ liệu mẫu trong nhóm S3 ở us-east-2 Khu vực và đã sử dụng trình thu thập thông tin AWS Glue để thu thập dữ liệu và lập danh mục tập dữ liệu vào cơ sở dữ liệu trong Danh mục dữ liệu của us-east-2 Vùng đất. Chúng tôi chia sẻ tập dữ liệu này với us-west-2 Vùng đất. Bạn có thể sử dụng bất kỳ bộ dữ liệu nào của mình để theo dõi. Sơ đồ sau đây minh họa kiến ​​trúc chia sẻ giữa các khu vực trong cùng một tài khoản AWS.

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

Để thiết lập chia sẻ giữa các khu vực của cơ sở dữ liệu Danh mục dữ liệu cho kịch bản 1, chúng tôi khuyên bạn nên thực hiện các điều kiện tiên quyết sau:

  • Tài khoản AWS không được sử dụng cho các trường hợp sử dụng sản xuất.
  • Lake Formation đã được thiết lập sẵn trong tài khoản và có vai trò quản trị viên Lake Formation hoặc vai trò tương tự để làm theo hướng dẫn trong bài đăng này. Ví dụ: chúng tôi đang sử dụng vai trò quản trị viên hồ dữ liệu có tên là LF-Admin. Các LF-Admin vai trò cũng có Quản lý truy cập và nhận dạng AWS (IAM) quyền iam:PassRole về vai trò trình thu thập thông tin của AWS Glue. Để tìm hiểu thêm về cách thiết lập quyền cho quản trị viên hồ dữ liệu, hãy xem Tạo quản trị viên hồ dữ liệu.
  • Cơ sở dữ liệu mẫu trong Danh mục dữ liệu có một vài bảng. Ví dụ: cơ sở dữ liệu mẫu của chúng tôi được gọi salesdb_useast2 và có một bộ tám bảng, như minh họa trong ảnh chụp màn hình sau.

Thiết lập quyền cho us-east-2

Hoàn thành các bước sau để định cấu hình quyền trong us-east-2 Khu vực:

  1. Đăng nhập vào bảng điều khiển Lake Formation và chọn Khu vực chứa cơ sở dữ liệu của bạn. Trong ví dụ của chúng tôi, đó là us-east-2 Khu vực.
  2. Cấp quyền CHỌN và MÔ TẢ cho LF-Admin vai trò trên tất cả các bảng của cơ sở dữ liệu salesdb_useast2.
  3. Bạn có thể xác nhận xem các quyền có hoạt động hay không bằng cách truy vấn cơ sở dữ liệu và bảng với vai trò quản trị viên hồ dữ liệu từ Athena.

Thiết lập quyền cho us-west-2

Hoàn thành các bước sau để định cấu hình quyền trong us-west-2 Khu vực:

  1. Chọn us-west-2 Khu vực trên bảng điều khiển Lake Formation.
  2. Thêm LF-Admin làm quản trị viên hồ dữ liệu và cấp Tạo cơ sở dữ liệu cho phép LF-Admin.
  3. Trong ngăn dẫn hướng, dưới Danh mục dữ liệu, lựa chọn Cơ sở dữ liệu.
  4. Chọn Tạo cơ sở dữ liệu và chọn Liên kết tài nguyên.
  5. đăng ký hạng mục thi rl_salesdb_from_useast2 làm tên cho liên kết tài nguyên.
  6. Trong Vùng cơ sở dữ liệu dùng chung, chọn Đông Mỹ (Ohio).
  7. Trong Cơ sở dữ liệu được chia sẻ, chọn salesdb_useast2.
  8. Chọn Tạo.

Điều này tạo ra một liên kết tài nguyên cơ sở dữ liệu trong us-west-2 trỏ đến cơ sở dữ liệu trong us-east-2.

Bạn sẽ nhận thấy Vùng chủ sở hữu tài nguyên được chia sẻ cột điền là us-east-2 để biết chi tiết liên kết tài nguyên trên Cơ sở dữ liệu .

Bởi vì LF-Admin vai trò đã tạo liên kết tài nguyên rl_salesdb_from_useast2, vai trò này có quyền ngầm định trên liên kết tài nguyên. LF-Admin đã có quyền truy vấn bảng trong us-east-2 Vùng đất. Không cần phải thêm một Cấp đúng mục tiêu cho phép LF-Admin. Nếu bạn đang cấp quyền cho người dùng hoặc vai trò khác, bạn cần cấp Mô tả quyền trên liên kết tài nguyên rl_salesdb_from_useast2.

  1. Truy vấn cơ sở dữ liệu bằng liên kết tài nguyên trong Athena dưới dạng LF-Admin.

Trong các bước trước, chúng ta đã biết cách tạo liên kết tài nguyên trong us-west-2 cho cơ sở dữ liệu Danh mục dữ liệu trong us-east-2. Bạn cũng có thể tạo liên kết tài nguyên tới cơ sở dữ liệu nguồn ở bất kỳ Khu vực bổ sung nào có Danh mục dữ liệu. Bạn có thể chạy các tập lệnh trích xuất, chuyển đổi và tải (ETL) trong Amazon EMR và AWS Glue bằng cách cung cấp tham số Vùng bổ sung khi tham chiếu đến cơ sở dữ liệu và bảng. Xem tài liệu API để biết GetTable ()GetDatabase() để biết thêm chi tiết.

Ngoài ra, các quyền Danh mục dữ liệu đối với cơ sở dữ liệu, bảng và liên kết tài nguyên cũng như các quyền dữ liệu cơ bản của Amazon S3 có thể được quản lý bằng chính sách IAM và chính sách bộ chứa S3 thay vì quyền Lake Formation. Để biết thêm thông tin, xem Quản lý danh tính và quyền truy cập cho AWS Glue.

Tình huống 2: Trường hợp sử dụng nhiều tài khoản

Trong trường hợp này, chúng tôi sẽ hướng dẫn bạn các bước cần thiết để chia sẻ cơ sở dữ liệu Danh mục dữ liệu từ Vùng này sang Vùng khác giữa hai tài khoản: tài khoản nhà sản xuất và tài khoản người tiêu dùng. Để hiển thị trường hợp sử dụng nâng cao, chúng tôi lưu trữ tập dữ liệu nguồn ở us-east-2 của tài khoản A và thu thập dữ liệu bằng trình thu thập thông tin AWS Glue trong Danh mục dữ liệu trong us-east-1. Sau đó, quản trị viên hồ dữ liệu trong tài khoản A sẽ chia sẻ cơ sở dữ liệu và các bảng với tài khoản B bằng quyền của Lake Formation. Quản trị viên hồ dữ liệu trong tài khoản B chấp nhận chia sẻ trong us-east-1 và tạo các liên kết tài nguyên để truy vấn các bảng từ eu-west-1. Sơ đồ sau minh họa kiến ​​trúc chia sẻ giữa các khu vực giữa tài khoản nhà sản xuất A và tài khoản người tiêu dùng B.

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

Để thiết lập chia sẻ giữa các khu vực của cơ sở dữ liệu Danh mục dữ liệu cho kịch bản 2, chúng tôi khuyên bạn nên thực hiện các điều kiện tiên quyết sau:

  • Hai tài khoản AWS không được sử dụng cho các trường hợp sử dụng sản xuất
  • Vai trò quản trị viên Lake Formation trong cả hai tài khoản
  • Lake Formation được thiết lập ở cả hai tài khoản với phiên bản chia sẻ nhiều tài khoản 3. Để biết thêm chi tiết, hãy tham khảo tài liệu hướng dẫn.
  • Cơ sở dữ liệu mẫu trong Danh mục dữ liệu có một vài bảng

Trong ví dụ của chúng tôi, chúng tôi tiếp tục sử dụng cùng một tập dữ liệu và vai trò quản trị viên hồ dữ liệu LF-Admin cho kịch bản 2.

Thiết lập tài khoản A để chia sẻ giữa các khu vực

Để thiết lập tài khoản A, hãy hoàn thành các bước sau:

  1. Đăng nhập vào Bảng điều khiển quản lý AWS với vai trò quản trị viên hồ dữ liệu.
  2. Đăng ký nhóm S3 trong Lake Formation trong us-east-1 với vai trò IAM có quyền truy cập vào nhóm S3. Nhìn thấy đăng ký vị trí S3 của bạn để được hướng dẫn.
  3. Thiết lập và chạy trình thu thập thông tin AWS Glue để lập danh mục dữ liệu trong us-east-2 Nhóm S3 vào cơ sở dữ liệu Danh mục dữ liệu useast2data_salesdb in us-east-1. Tham khảo Trình thu thập dữ liệu AWS Glue hỗ trợ thu thập dữ liệu trên nhiều tài khoản để hỗ trợ kiến ​​trúc lưới dữ liệu để được hướng dẫn.

Cơ sở dữ liệu, như minh họa trong ảnh chụp màn hình sau, có một bộ tám bảng.

  1. Cấp CHỌN và MÔ TẢ cùng với các quyền có thể cấp trên tất cả các bảng của cơ sở dữ liệu cho tài khoản B.

  2. Cấp MÔ TẢ với các quyền có thể cấp trên cơ sở dữ liệu.
  3. Xác minh các quyền được cấp trên Quyền dữ liệu .
  4. Đăng xuất khỏi tài khoản A.

Thiết lập tài khoản B để chia sẻ giữa các khu vực

Để thiết lập tài khoản B, hãy hoàn thành các bước sau:

  1. Đăng nhập với tư cách quản trị viên hồ dữ liệu trên bảng điều khiển Lake Formation trong us-east-1.

Trong ví dụ của chúng tôi, chúng tôi đã tạo vai trò quản trị viên hồ dữ liệu LF-Admin, tương tự như vai trò quản trị viên trước đây trong tài khoản A và kịch bản 1.

  1. trên Trình quản lý truy cập tài nguyên AWS (AWS RAM), xem xét và chấp nhận lời mời RAM AWS tương ứng với cơ sở dữ liệu và bảng dùng chung từ tài khoản A.

Sản phẩm LF-Admin vai trò có thể xem cơ sở dữ liệu được chia sẻ useast2data_salesdb từ tài khoản nhà sản xuất. LF-Admin có quyền truy cập vào cơ sở dữ liệu và bảng và do đó không cần quyền bổ sung trên cơ sở dữ liệu dùng chung.

  1. Bạn có thể cấp DESCRIBE trên cơ sở dữ liệu và CHỌN trên All_Tables quyền đối với bất kỳ nguyên tắc IAM bổ sung nào từ us-east-1 Vùng trên cơ sở dữ liệu dùng chung này.
  2. Mở bảng điều khiển Lake Formation trong eu-west-1 (hoặc bất kỳ Khu vực nào mà bạn đã thiết lập Lake Formation và Athena).
  3. Chọn Tạo cơ sở dữ liệu và tạo một liên kết tài nguyên có tên rl_useast1db_crossaccount, chỉ vào us-east-1 cơ sở dữ liệu useast2data_salesdb.

Bạn có thể chọn bất kỳ Vùng nào trên Vùng cơ sở dữ liệu dùng chung menu thả xuống và chọn cơ sở dữ liệu từ các Khu vực đó.

Bởi vì chúng tôi đang sử dụng vai trò quản trị viên hồ dữ liệu LF-Admin, chúng tôi có thể xem tất cả cơ sở dữ liệu từ tất cả các Khu vực trong Danh mục dữ liệu của tài khoản người tiêu dùng. Người dùng hồ dữ liệu có quyền hạn chế sẽ chỉ có thể xem những cơ sở dữ liệu mà họ có quyền.

  1. Vì LF-Admin đã tạo liên kết tài nguyên nên vai trò này có quyền sử dụng liên kết tài nguyên rl_useast1db_crossaccount. Để có thêm các nguyên tắc IAM, hãy cấp quyền MÔ TẢ trên liên kết tài nguyên cơ sở dữ liệu rl_useast1db_crossaccount.
  2. Bây giờ bạn có thể truy vấn cơ sở dữ liệu và bảng từ Athena.

Những cân nhắc

Truy vấn liên khu vực liên quan đến việc truyền dữ liệu Amazon S3 bằng các dịch vụ phân tích, chẳng hạn như Athena, Amazon EMR và AWS Glue ETL. Do đó, các truy vấn giữa các Khu vực có thể chậm hơn và sẽ phải chịu chi phí truyền cao hơn so với các truy vấn trong cùng một Khu vực. Một số dịch vụ phân tích như công việc AWS Glue và Amazon EMR có thể yêu cầu quyền truy cập Internet khi truy cập dữ liệu liên khu vực từ Amazon S3, tùy thuộc vào thiết lập VPC của bạn. tham khảo Cân nhắc và hạn chế để biết thêm cân nhắc.

Kết luận

Trong bài đăng này, bạn đã thấy các ví dụ về cách thiết lập liên kết tài nguyên giữa các khu vực cho cơ sở dữ liệu trong cùng một tài khoản và trên hai tài khoản. Bạn cũng đã biết cách sử dụng các liên kết tài nguyên giữa các khu vực để truy vấn trong Athena. Bạn có thể chia sẻ các bảng đã chọn từ cơ sở dữ liệu thay vì chia sẻ toàn bộ cơ sở dữ liệu. Với tính năng chia sẻ giữa các khu vực, bạn có thể tạo liên kết tài nguyên cho bảng bằng cách sử dụng Tạo bảng tùy chọn.

Có hai điều quan trọng cần nhớ khi sử dụng tính năng truy cập bảng liên vùng:

  • Cấp quyền trên cơ sở dữ liệu nguồn hoặc bảng từ Vùng nguồn của nó.
  • Cấp quyền cho liên kết tài nguyên từ Khu vực mà nó được tạo trong đó.

Nghĩa là, cơ sở dữ liệu hoặc bảng dùng chung ban đầu luôn có sẵn trong Vùng nguồn và các liên kết tài nguyên được tạo và chia sẻ trong Vùng cục bộ của chúng.

Để bắt đầu, hãy xem Truy cập các bảng trên khắp các khu vực. Chia sẻ nhận xét của bạn về bài đăng hoặc liên hệ với nhóm tài khoản AWS của bạn để biết thêm chi tiết.


Giới thiệu về tác giả

Aarthi Srinivasan là Kiến trúc sư dữ liệu lớn cấp cao của AWS Lake Formation. Cô ấy thích xây dựng các giải pháp hồ dữ liệu cho khách hàng và đối tác của AWS. Khi không ngồi trên bàn phím, cô khám phá những xu hướng khoa học và công nghệ mới nhất và dành thời gian cho gia đình.

tại chỗ_img

Tin tức mới nhất

tại chỗ_img