Athena에서 쿼리를 수행하기 위해, S3에 저장한 데이터의 스키마를 파악해야합니다. Glue Crawler를 사용해 테이블을 정의하고 데이터에 대한 스키마를 생성합니다. Glue Crawler는 데이터를 스캔하고 테이블 스키마를 자동으로 유추합니다. 테이블 및 열 이름과 같은 메타데이터는 Glue Data Catalog에 저장됩니다. 이 과정이 끝나면 데이터베이스 및 테이블이 Athena 쿼리 편집기에 나타납니다.
AWS Management Console에서 Glue 서비스를 선택합니다.
왼쪽 메뉴에서 Crawlers를 선택합니다.
[Add crawler] 버튼을 클릭합니다.
Crawler name에 lookout-for-vision-result-crawler
를 입력하고 [Next] 버튼을 클릭합니다.
Crawler의 Source Type을 지정합니다. 모든 옵션을 변경하지 않고 [Next] 버튼을 클릭합니다. 여기서는 Data Source로 데이터 스토어에 직접 액세스합니다. S3 버킷에 저장된 폴더 전체를 크롤링 합니다.
s3://lookout-for-vision-workshop-xxxxxxxx/result/
를 입력합니다. xxxxxxxx를 복사한 S3 버킷 이름의 숫자로 변경합니다. 그리고 [Next] 버튼을 클릭합니다.Add another data store 단계에서 옵션을 변경하지 않고 No를 유지합니다. 그리고 [Next] 버튼을 클릭합니다.
Glue용 IAM 역할을 생성합니다. IAM role에 lookout-for-vision-result-crawler
를 입력합니다. 그리고 [Next] 버튼을 클릭합니다.
Glue Crawler를 정기적으로 실행할 수 있습니다. 언제 크롤러를 실행할지 Freqeuncy를 지정합니다. 여기서는 Run on demand를 선택합니다. 그리고 [Next] 버튼을 클릭합니다.
데이터베이스를 지정하고, 데이터베이스에 크롤러가 생성하는 메타데이터를 포함하도록 합니다. Database에 [Add database] 버튼을 클릭합니다.
Database name에 lookout-for-vision-result-db
를 입력합니다. [Create] 버튼을 클릭합니다.
[Next] 버튼을 클릭합니다.
구성한 Crawler 정보를 확인하고 [Finish] 버튼을 클릭합니다.
크롤러 목록에서 생성한 lookout-for-vision-result-crawler 크롤러를 선택하고 [Run crawler] 버튼을 클릭합니다. 크롤링은 약 1-2분 내로 수행됩니다.