크롤러에 여러 데이터 원본 사용
AWS Glue 크롤러가 Amazon S3를 스캔하고 여러 디렉터리를 발견하면 휴리스틱을 사용하여 테이블의 루트가 디렉터리 구조에서 어디에 있는지, 어떤 디렉터리가 테이블의 파티션인지 파악합니다. 간혹 둘 이상의 디렉터리에서 발견된 스키마가 유사한 경우, 크롤러가 이를 별도의 테이블 대신 파티션으로 처리할 수 있습니다. 크롤러가 개별 테이블을 찾도록 돕는 한 가지 방법은, 각 테이블의 루트 디렉터리를 크롤러의 데이터 저장소로 추가하는 것입니다.
Amazon S3에 있는 다음 파티션이 한 예입니다.
s3://amzn-s3-demo-bucket/folder1/table1/partition1/file.txt
s3://amzn-s3-demo-bucket/folder1/table1/partition2/file.txt
s3://amzn-s3-demo-bucket/folder1/table1/partition3/file.txt
s3://amzn-s3-demo-bucket/folder1/table2/partition4/file.txt
s3://amzn-s3-demo-bucket/folder1/table2/partition5/file.txt
table1
과 table2
의 스키마가 비슷하고 AWS Glue에서 하나의 데이터 원본이 s3://amzn-s3-demo-bucket/folder1/
으로 설정된 경우, 크롤러는 두 개의 파티션 열(table1
과 table2
가 포함된 파티션 열과 partition1
부터 partition5
까지 포함하는 두 번째 파티션 열)로 구성된 하나의 테이블을 만들 수 있습니다.
AWS Glue 크롤러가 의도대로 두 개의 개별 테이블을 생성하게 하려면 크롤러가 다음 절차처럼 두 개의 데이터 원본(s3://amzn-s3-demo-bucket/folder1/table1/
, s3://amzn-s3-demo-bucket/folder1/table2
)으로 구성되도록 설정합니다.
AWS Glue에서 기존 크롤러에 S3 데이터 스토어를 추가하려면
AWS Management Console에 로그인하여 https://console.aws.amazon.com/glue/
에서 AWS Glue 콘솔을 엽니다. -
탐색 창에서 크롤러(Crawlers)를 선택합니다.
-
크롤러 링크를 선택한 다음 편집(Edit)을 선택합니다.
-
2단계: 데이터 소스 및 분류자 선택(Step 2: Choose data sources and classifiers)에서 편집(Edit)을 선택합니다.
-
데이터 소스 및 카탈로그에서 데이터 소스 추가를 선택합니다.
-
데이터 소스 추가(Add a data source) 대화 상자의 S3 경로(S3 path)에서 찾아보기(Browse)를 선택합니다.
-
사용할 버킷을 선택한 다음 선택(Choose)을 선택합니다.
추가한 데이터 소스가 데이터 소스(Data sources) 목록에 표시됩니다.
-
Next(다음)를 선택합니다.
-
보안 설정 구성 페이지에서 크롤러에 대한 IAM 역할을 생성 또는 선택한 다음 다음(Next)을 선택합니다.
-
S3 경로가 후행 슬래시로 끝나는지 확인한 다음 S3 데이터 소스 추가(Add an S3 data source)를 선택합니다.
-
출력 및 예약 설정 페이지의 출력 구성(Output configuration)에서 대상 데이터베이스를 선택합니다.
-
Next(다음)를 선택합니다.
-
검토 및 업데이트 페이지에서 선택한 항목을 검토합니다. 단계를 편집하려면 편집(Edit)을 선택합니다.
-
업데이트를 선택합니다.