Xây dựng Data Lake Apache Iceberg được quản lý bằng Starburst và Amazon S3 Tables.

Tác giả: Yuya Ebihara, Aritra Gupta, và Antony Prasad Thevaraj | Ngày đăng: 13 tháng 3, 2025

Chuyên mục: Amazon S3 Tables, Amazon Simple Storage Service (S3), AWS Identity and Access Management (IAM), AWS Lake Formation, Mạng lưới Đối tác AWS, AWS Secrets Manager

Trình độ: Trung cấp (200)

Quản lý phân tích dữ liệu quy mô lớn trên nhiều nguồn dữ liệu khác nhau từ lâu đã là một thách thức đối với các doanh nghiệp. Các nhóm dữ liệu thường gặp khó khăn với cấu hình data lake phức tạp, tình trạng tắc nghẽn hiệu suất và nhu cầu duy trì quản trị dữ liệu nhất quán trong khi vẫn cho phép truy cập rộng rãi vào các khả năng phân tích.

Hôm nay, Starburst công bố một giải pháp mạnh mẽ cho những thách thức này bằng cách mở rộng tích hợp trình kết nối Apache Iceberg của họ để hỗ trợ Amazon S3 Tables . Trình kết nối Iceberg của Starburst hiện tích hợp liền mạch với S3 Tables. Điều này giúp khách hàng có nhiều tùy chọn hơn cho kiến ​​trúc data lake theo lựa chọn của họ.

Trong bài đăng này, chúng tôi sẽ khám phá cách tích hợp này giải quyết các thách thức quan trọng về dữ liệu doanh nghiệp, ý nghĩa của nó đối với các triển khai Iceberg hiện tại của bạn và cung cấp hướng dẫn từng bước để sử dụng các khả năng mới này trong Starburst Enterprise .

Về Starburst và Iceberg

Apache Iceberg là nền tảng của kiến ​​trúc Starburst Icehouse . Trong quá trình triển khai ở môi trường thực tế cho người dùng sử dụng, các cụm Starburst sử dụng trình kết nối Iceberg để truy cập dữ liệu trong Iceberg. Điều này bao gồm lưu trữ siêu dữ liệu Iceberg và các tệp dữ liệu trên Amazon S3 và tích hợp với nhiều kho siêu dữ liệu khác nhau để bao gồm Iceberg REST Catalogs .

Về tích hợp của Starburst với S3 Tables

Starburst tích hợp với S3 Tables bằng cách sử dụng điểm cuối Iceberg REST do SageMaker Lakehouse cung cấp. Tích hợp này cho phép bạn truy vấn và sửa đổi các bảng Iceberg này và liên kết nội dung của chúng với bất kỳ nguồn dữ liệu nào khác bằng cách sử dụng các kết nối . Ngoài ra, S3 Tables cung cấp các hoạt động bảo trì bảng có sẵn như nén, hết hạn ảnh chụp nhanh và xóa tệp không có tham chiếu.

Bây giờ, chúng ta hãy cùng tìm hiểu cách thiết lập đơn giản để bắt đầu sử dụng S3 Tables bằng Starburst Enterprise.

Bắt đầu với S3 Tables trên Starburst Enterprise

Trong bài đăng này, chúng tôi kết nối cụm Starburst Enterprise của mình với một thùng bảng, sử dụng điểm cuối AWS Glue Iceberg REST. Sau khi cụm được kết nối, chúng tôi sẽ sử dụng trình soạn thảo truy vấn Starburst Enterprise để tạo lược đồ, ánh xạ tới không gian tên trong S3 Tables. Chúng tôi sử dụng trình soạn thảo này để tạo bảng, tải dữ liệu vùng TPC Benchmark H (TPC-H) mẫu và truy vấn dữ liệu đó.

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

Để theo dõi bài đăng này, bạn cần thiết lập như sau:

  1. Một cụm Starburst Enterprise.
  2. Một thùng bảng S3 có tích hợp dịch vụ phân tích AWS.

Bước 1: Thiết lập thùng bảng và các quyền liên quan trên AWS

Lưu ý ARN thùng bảng cho thùng mà bạn đã tạo trước đó từ bảng điều khiển S3 . ARN trông như sau:

arn:aws:s3tables:{REGION}:{ACCOUNT_ID}:bucket/{S3_BUCKET_NAME}

Bây giờ, bạn tạo vai trò IAM cho Starburst để truy cập Bảng S3 và cấp cho vai trò này các quyền cần thiết trong AWS Lake Formation để truy cập các bảng. Để biết hướng dẫn từng bước chi tiết về quy trình này, vui lòng tham khảo tài liệu .

Với bước này, chúng ta đã sẵn sàng kết nối thùng bảng với Starburst.

Bước 2: Tạo kết nối Iceberg REST Catalog mới trong Starburst Enterprise

Tiếp theo, hãy mở trình soạn thảo truy vấn Starburst Enterprise và chuẩn bị tạo danh mục mới.

Danh mục này sẽ sử dụng Iceberg REST Catalog để truy cập bảng AWS. Để thực hiện việc này, chúng tôi đặt loại danh mục thành rest iceberg.catalog.type=rest. Thiết lập này cấu hình danh mục để sử dụng Iceberg REST Catalog , cung cấp giao thức chuẩn để quản lý siêu dữ liệu. Điều này cho phép các công cụ truy vấn mới hỗ trợ bất kỳ danh mục nào với một triển khai duy nhất.

Trình kết nối Iceberg truy xuất vị trí siêu dữ liệu từ điểm cuối SageMaker Lakehouse Iceberg REST , sau đó truy cập bộ nhớ bảng để đọc hoặc ghi tệp.

Ví dụ bên dưới sử dụng thông tin xác thực AWS tĩnh với khóa truy cập và khóa bí mật. Ngoài ra, Starburst đang nỗ lực thêm hỗ trợ cho cung cấp thông tin xác thực tự động và xác thực dựa trên vai trò IAM để cải thiện bảo mật.

Cú ${asm:path}pháp sử dụng AWS Secret Manager . Bạn có thể tìm thấy danh sách tất cả các trình quản lý bí mật được hỗ trợ trong tài liệu Starburst Enterprise .

  • Trong Starburst Enterprise, hãy mở trình soạn thảo truy vấn.
  • Chèn khối mã sau.

CREATE CATALOG s3_tables_demo USING iceberg

WITH (

  “iceberg.catalog.type” = ‘rest’,

  “iceberg.rest-catalog.uri” = ‘https://glue.${asm:region}.amazonaws.com/iceberg’,

  “iceberg.rest-catalog.warehouse” = ‘${asm:account_id}:s3tablescatalog/${asm:s3_bucket_name}’,

  “iceberg.rest-catalog.view-endpoints-enabled” = ‘false’,

  “iceberg.rest-catalog.sigv4-enabled” = ‘true’,

  “iceberg.rest-catalog.signing-name” = ‘glue’,

  “fs.hadoop.enabled” = ‘false’,

  “fs.native-s3.enabled” = ‘true’,

  “s3.region” = ‘${asm:region}’,

  “s3.aws-access-key” = ‘${asm:access_key}’,

  “s3.aws-secret-key” = ‘${asm:secret_key}’

);

SQL

1_tạo danh mục

Bước 3: Xác định sơ đồ

Trong Starburst, một lược đồ tương đương với một không gian tên trong các thùng bảng. Đối với bài đăng này, chúng tôi tạo một lược đồ có tên là ‘example’ từ trình soạn thảo truy vấn.

2_tạo lược đồ

Bước 4: Tạo một bảng mới sử dụng dữ liệu vùng TPC-H

Bây giờ, chúng ta tạo một bảng bằng cách sử dụng dữ liệu vùng TPC-H mẫu.

3_dữ liệu vùng TPCH mẫu

Bước 5: Đọc dữ liệu từ Bảng S3

Sau khi dữ liệu được tải, bạn có thể truy vấn dữ liệu trong trình soạn thảo.

4_truy vấn dữ liệu trong trình soạn thảo

Lưu ý: Tích hợp của Starburst với S3 Tables hỗ trợ các tính năng của Iceberg Connector như du hành thời gian, tiến hóa lược đồ, v.v. Tuy nhiên, các hoạt động bảo trì do S3 Tables cung cấp ngay khi xuất bản không được hỗ trợ thông qua tích hợp này tại thời điểm xuất bản bài đăng này. Bạn có thể định cấu hình các hoạt động này trực tiếp trên các thùng bảng.

Phần kết luận

Trong bài đăng này, chúng tôi đã giới thiệu cách xây dựng một data lake trên Starburst và Amazon S3. Việc tích hợp này dựa trên trọng tâm lâu dài của Starburst về Apache Iceberg và lợi ích của các tác vụ bảo trì bảng tự động của Amazon S3 Tables. Starburst là Đối tác năng lực về dữ liệu và phân tích và dịch vụ tài chính của AWS và có sẵn thông qua AWS Marketplace.