Amazon SageMaker Lakehouse
Amazon SageMaker Lakehouse (AWS Glue)
iceberg 확장은 Amazon SageMaker Lakehouse(일명 AWS Glue) 카탈로그를 통해 Iceberg 테이블 읽기를 지원해요. 아직 실험적인 지원이므로 최신 버전에서 동작을 확인해보는 걸 권장해요.
출처: 문서
본문
Amazon SageMaker Lakehouse (AWS Glue) 지원은 현재 실험적이에요.
iceberg 확장은 Amazon SageMaker Lakehouse (a.k.a. AWS Glue) 카탈로그를 통해 Iceberg 테이블 읽기를 지원해요.
요구 사항
사용하려면 다음 확장을 설치해요.
INSTALL aws;
INSTALL httpfs;
INSTALL iceberg;
core저장소의 확장으로 다시 전환하려면 확장 문서를 따라가요.
Amazon SageMaker Lakehouse (AWS Glue)에 연결하기
Secrets Manager로 S3 secret을 생성해요.
CREATE SECRET (
TYPE s3,
PROVIDER credential_chain,
CHAIN sts,
ASSUME_ROLE_ARN 'arn:aws:iam::⟨account_id⟩:role/⟨role⟩',
REGION 'us-east-2'
);
이 예제에서는 STS 토큰을 사용하지만, 다른 인증 방법도 지원돼요.
그런 다음 카탈로그에 연결해요.
ATTACH '⟨account_id⟩' AS glue_catalog (
TYPE iceberg,
ENDPOINT 'glue.⟨REGION⟩.amazonaws.com/iceberg',
AUTHORIZATION_TYPE 'sigv4'
);
또는 이렇게도 가능해요.
ATTACH '⟨account_id⟩' AS glue_catalog (
TYPE iceberg,
ENDPOINT_TYPE 'glue'
);
경고 Amazon S3 Tables와 마찬가지로
ENDPOINT_TYPE glue는 항상glue.⟨region⟩.amazonaws.com/iceberg형태의 엔드포인트를 생성해요. 이는 일반적인amazonaws.com접미사를 사용하지 않는 리전(특히amazonaws.com.cn을 사용하는 AWS 중국 리전cn-north-1,cn-northwest-1)에서는 올바르지 않아요. 이런 리전에서는ENDPOINT_TYPE대신 명시적ENDPOINT(올바른 호스트)와AUTHORIZATION_TYPE 'sigv4'를 함께 사용해 부착해요.
웨어하우스 식별자(ATTACH의 첫 번째 인자)는 다음 형태를 받아들여요.
| 웨어하우스 | 의미 |
|---|---|
: |
호출자 계정의 기본 카탈로그. |
⟨account_id⟩ |
12자리 AWS 계정 ID. |
⟨account_id⟩:⟨catalog⟩ |
주어진 계정의 명명된 카탈로그. |
⟨catalog⟩/⟨sub_catalog⟩ |
중첩(페더레이션) 카탈로그. |
⟨account_id⟩:⟨catalog⟩/⟨sub_catalog⟩ |
주어진 계정의 중첩 카탈로그. |
부착이 잘 됐는지 확인하려면 모든 테이블을 나열해요.
SHOW ALL TABLES;
테이블은 다음과 같이 쿼리할 수 있어요.
SELECT count(*)
FROM glue_catalog.⟨namespace_name⟩.⟨table_name⟩;
S3 Tables 페더레이션 카탈로그가 있다면 표준 CREATE TABLE 문법으로 테이블을 만들 수 있어요.
CREATE TABLE glue_catalog.⟨namespace_name⟩.⟨table_name⟩ (a INTEGER, b VARCHAR);
카탈로그가 S3 Tables로 페더레이션되지 않았다면 location 테이블 속성을 전달해야 할 수 있어요. WITH 절로 이렇게 할 수 있어요.
CREATE TABLE glue_catalog.⟨namespace_name⟩.⟨table_name⟩ (a INTEGER, b VARCHAR)
WITH (
'location' = 's3://path/to/location'
);
WITH 절에 대한 자세한 내용은 테이블 속성에서 확인할 수 있어요.
더 알아보기 (Learn more)
aws확장에서 인증 방법을 더 자세히 살펴볼 수 있어요.- Amazon S3 Tables 문서에서 S3 Tables 연결 방법을 확인해요.