JAR 파일 및 사용자 지정 Spark 구성 추가 - Amazon Athena

JAR 파일 및 사용자 지정 Spark 구성 추가

Amazon Athena for Apache Spark에서 세션을 생성하거나 편집할 때 Spark 속성을 사용하여 세션에 대한 .jar 파일, 패키지 또는 다른 사용자 지정 구성을 지정할 수 있습니다. Spark 속성을 지정하려면 Athena 콘솔, AWS CLI 또는 Athena API를 사용할 수 있습니다.

Athena 콘솔을 사용하여 Spark 속성 지정

Athena 콘솔에서 노트북을 생성하거나 현재 세션을 편집할 때 Spark 속성을 지정할 수 있습니다.

노트북 생성 또는 세션 세부 정보 편집 대화 상자에서 속성을 추가하려면
  1. Spark 속성을 확장합니다.

  2. 속성을 추가하려면 테이블에서 편집 또는 JSON으로 편집 옵션을 사용합니다.

    • 테이블에서 편집 옵션의 경우 속성 추가를 선택하여 속성을 추가하거나 제거를 선택하여 속성을 제거합니다. 상자를 사용하여 속성 이름과 값을 입력합니다.

      • 사용자 지정 .jar 파일을 추가하려면 spark.jars 속성을 사용합니다.

      • 패키지 파일을 지정하려면 spark.jars.packages 속성을 사용합니다.

    • 구성을 직접 입력하고 편집하려면 JSON으로 편집 옵션을 선택합니다. JSON 텍스트 편집기에서 다음 작업을 수행할 수 있습니다.

      • 복사를 선택하여 JSON 텍스트를 클립보드에 복사합니다.

      • 지우기를 선택하여 JSON 편집기에서 모든 텍스트를 제거합니다.

      • 설정(톱니) 아이콘을 선택하여 줄 바꿈을 구성하거나 JSON 편집기의 색상 테마를 선택합니다.

참고

  • Athena for Spark에서 속성을 설정할 수 있습니다. 이 방법은 SparkConf 객체에서 Spark 속성을 직접 설정하는 것과 같습니다.

  • 모든 Spark 속성을 spark. 접두사로 시작합니다. 다른 접두사의 속성은 무시됩니다.

  • Athena에서 사용자 지정 구성에 대해 일부 Spark 속성은 사용할 수 없습니다. 구성이 제한된 StartSession 요청을 제출하면 세션이 시작되지 않습니다.

    • spark.athena. 접두사는 예약되어 있으므로 사용할 수 없습니다.

AWS CLI 또는 Athena API를 사용하여 사용자 지정 구성 제공

AWS CLI 또는 Athena API를 사용하여 세션 구성을 제공하려면 StartSession API 작업 또는 start-session CLI 명령을 사용합니다. StartSession 요청에서 EngineConfiguration 객체의 SparkProperties 필드를 사용하여 구성 정보를 JSON 형식으로 전달합니다. 그러면 지정된 구성으로 세션이 시작됩니다. 요청 구문은 Amazon Athena API 참조StartSession을 참조하세요.

세션 시작 오류 문제 해결

세션 시작 중에 사용자 지정 구성 오류가 발생하면 Athena for Spark 콘솔에 오류 메시지 배너가 표시됩니다. 세션 시작 오류를 해결하기 위해 세션 상태 변경 또는 로깅 정보를 확인할 수 있습니다.

세션 상태 변경 정보 보기

Athena 노트북 편집기 또는 Athena API에서 세션 상태 변경에 대한 세부 정보를 얻을 수 있습니다.

Athena 콘솔에서 세션 상태 정보를 보려면
  1. Athena 노트북 편집기의 오른쪽 상단에 있는 세션 메뉴에서 세부 정보 보기를 선택합니다.

  2. 현재 세션 탭을 확인합니다. 세션 정보 섹션에는 세션 ID, 작업 그룹, 상태 및 상태 변경 이유와 같은 정보가 표시됩니다.

    다음 화면 캡처 예제에서는 Athena의 Spark 세션 오류에 대한 세션 정보 대화 상자의 상태 변경 이유 섹션에 있는 정보를 보여줍니다.

    Athena for Spark 콘솔에서 세션 상태 변경 정보를 확인합니다.
Athena API를 사용하여 세션 상태 정보를 보려면
  • Athena API에서는 SessionStatus 객체의 StateChangeReason 필드에서 세션 상태 변경 정보를 찾을 수 있습니다.

참고

세션을 수동으로 중지한 후 또는 유휴 제한 시간(기본값은 20분) 이후 세션이 중지된 경우 StateChangeReason 값이 Session was terminated per request로 변경되었습니다.

로깅을 사용하여 세션 시작 오류 문제 해결

세션 시작 중에 발생하는 사용자 지정 구성 오류는 Amazon CloudWatch에서 기록합니다. CloudWatch Logs는 AthenaSparkSessionErrorLogger에서 오류 메시지를 검색하여 실패한 세션 시작 문제를 해결합니다.

Spark 로깅에 대한 자세한 내용은 Athena에서 Spark 애플리케이션 이벤트 로깅을 참조하세요.

Athena for Spark에서 세션 문제 해결에 대한 자세한 내용은 세션 문제 해결 섹션을 참조하세요.