AWS Glue 크롤러가 테이블에 새 파티션을 추가하지 않는 이유는 무엇입니까?

2분 분량
0

AWS Glue 크롤러가 테이블에 새 파티션을 추가하지 않습니다.

간략한 설명

크롤러가 새 파티션 아래의 소스 데이터 파일을 검색할 때 크롤러는 소스 파일의 다음 속성을 기존 테이블의 속성과 비교합니다.

  • 파일 형식
  • 압축 유형
  • 스키마
  • Amazon Simple Storage Service(Amazon S3) 파티션의 구조

파티션의 이러한 속성이 테이블의 속성과 다른 경우 파티션을 건너뛰고 메타데이터에 추가하지 않습니다. Amazon S3 경로의 파티션 이름, 시퀀스 또는 수의 차이는 파티션 스키마 또는 구조의 변경으로 간주됩니다.

해결 방법

문제 해결

크롤러 로그를 확인하여 문제를 식별합니다.

  1. AWS Glue 콘솔을 엽니다.
  2. 탐색 창에서 크롤러를 선택합니다.
  3. 크롤러를 선택한 다음 로그 링크를 선택하여 CloudWatch 콘솔에서 로그를 봅니다.
  4. 로그를 검토하여 크롤러가 새 파티션을 건너뛰었는지 확인합니다.

예를 들어 로그에 다음과 유사한 항목이 포함되어 있다고 가정합니다.

Folder partition keys do not match table partition keys, skipped folder: doc-example-bucket/doc-example-path/doc-example-table/year=2021/month=01/sday=05/

이 항목은 Amazon S3 위치의 파티션 구조가 테이블에 대해 정의된 파티션 키와 일치하지 않음을 나타냅니다. 이 문제는 파티션 구조가 테이블 소스 위치에서 일관되지 않을 때 발생할 수 있습니다.

AWS Glue 크롤러가 여러 테이블을 생성하는 경우 로그 항목은 다음과 유사합니다.

INFO : Created table doc-example-table in database doxtest_db

유사한 로그가 표시되면 이러한 테이블 위치의 스키마 및 파티션 구조를 원래 테이블의 스키마 및 파티션 구조와 비교합니다.

문제 해결

CloudWatch Logs의 정보를 기반으로 다음 솔루션 옵션 중 하나 이상을 고려하세요.

  • 파티션 구조 불일치로 인해 문제가 발생하는 경우 S3 경로의 이름을 수동 또는 프로그래밍 방식으로 변경하여 구조를 일관되게 만듭니다.
  • 파일 형식, 압축 형식 또는 스키마의 불일치로 인해 파티션을 건너뛰고 데이터를 의도한 테이블에 포함할 필요가 없는 경우 다음을 고려하세요.
  • 제외 패턴을 사용하여 원치 않는 파일을 건너뜁니다.
  • 원치 않는 파일을 다른 위치로 이동합니다.

AWS 공식
AWS 공식업데이트됨 3년 전