AWS Glue 스트리밍 유지 관리 기간 - AWS Glue

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS Glue 스트리밍 유지 관리 기간

AWS Glue 정기적으로 유지 관리 활동을 수행합니다. 이러한 유지 관리 기간 AWS Glue 동안에는 스트리밍 작업을 다시 시작해야 합니다. 유지 관리 기간을 지정하여 작업 재시작 시기를 제어할 수 있습니다. 이 섹션에서는 유지 관리 기간을 설정할 수 있는 위치와 고려해야 할 특정 동작에 대해 설명합니다.

유지 관리 기간 설정

AWS Glue Studio 또는 API를 사용하여 유지 관리 기간을 설정할 수 있습니다.

Studio에서 AWS Glue 유지 관리 기간 설정

AWS Glue 스트리밍 작업의 Job Details 페이지에서 유지 관리 기간을 지정할 수 있습니다. 날짜 및 시간을 GMT로 지정할 수 있습니다. AWS Glue 지정된 시간 내에 작업을 다시 시작합니다.

AWS Glue Studio에서 유지 관리 기간 지정

API에서 유지 관리 기간 설정

Create Job API에서 유지 관리 기간을 설정할 수도 있습니다. 다음은 API를 통해 유지 관리 기간을 구성하는 예시입니다.

aws glue create-job —name jobName —role roleArnForTheJob —command Name=gluestreaming,ScriptLocation=s3-path-to-the-script --maintenance-window="Sun:10"

예제 명령은 다음과 같습니다.

aws glue create-job —name testMaintenance —role arn:aws:iam::012345678901:role/Glue_DefaultRole —command Name=gluestreaming,ScriptLocation=s3://glue-example-test/example.py —maintenance-window="Sun:10

유지 관리 기간 동작

AWS Glue 일련의 단계를 거쳐 작업 재시작 시기를 결정합니다.

  1. 새 스트리밍 작업이 시작되면 AWS Glue 먼저 작업 실행과 관련된 제한 시간이 있는지 확인합니다. 타임아웃을 통해 작업 종료 시간을 구성할 수 있습니다. 제한 시간이 7일 미만이면 작업이 다시 시작되지 않습니다.

  2. 제한 시간이 7일을 초과하는 경우 해당 작업에 대해 유지 관리 기간이 구성되어 AWS Glue 있는지 확인합니다. 그럴 경우 해당 창이 선택되고 해당 창이 작업 실행에 할당됩니다. AWS Glue 지정된 유지 관리 기간으로부터 3시간 이내에 작업을 다시 시작합니다. 예를 들어, 유지 관리 기간을 월요일 오전 10시 (GMT) 로 설정하면 작업이 그리니치 표준시 오전 10시에서 오후 1시 (GMT) 사이에 다시 시작됩니다.

  3. 유지 관리 기간을 구성하지 않은 경우 재시작 시간을 작업 실행 시작 시간으로부터 7일 경과한 시간으로 AWS Glue 자동 설정합니다. 예를 들어, 2024년 7월 1일 오전 12:00 GMT에 작업을 시작하고 유지 관리 기간을 지정하지 않은 경우 작업은 2024년 7월 8일 오전 12:00 GMT에 다시 시작되도록 설정됩니다.

    참고

    이미 스트리밍 작업을 실행 중인 경우, 이 변경 사항은 2024년 7월 1일부터 시작되는 작업에 적용됩니다. 6월 30일까지 유지 관리 기간을 구성할 수 있습니다. 7월 1일 이후에는 시작한 모든 스트리밍 작업이 이 설명서에 따라 다시 시작됩니다. 추가 지원이 필요한 경우 Support에 문의할 AWS 수 있습니다.

  4. 경우에 AWS Glue 따라, 특히 진행 중인 마이크로 배치가 처리되지 않는 경우 작업을 다시 시작하지 못할 수 있습니다. 이러한 경우에는 작업이 중단되지 않습니다. 이러한 경우에는 14일 후에 작업이 다시 AWS Glue 시작되며, 이 경우 유지 관리 기간은 유효하지 않습니다.

Job 모니터링

AWS Glue Studio 모니터링 페이지에서 작업을 모니터링할 수 있습니다.

스트리밍 작업의 다음 예상 재시작 시간을 보려면 모니터링 페이지의 Job run 테이블에 열을 표시하십시오.

  1. 테이블 오른쪽 상단에 있는 기어 아이콘을 클릭합니다.

    AWS Glue Studio에서 유지 관리 기간 지정하기
  2. 아래로 스크롤하여 예상 재시작 시간 열을 켜십시오. UTC 및 현지 시간 옵션을 모두 사용할 수 있습니다.

    Studio에서 AWS Glue 유지 관리 기간 지정
  3. 그러면 테이블의 열을 볼 수 있습니다.

    AWS Glue Studio에서 유지 관리 기간 지정

원래 작업은 “EXPIRED” 상태이고 새 작업 인스턴스는 “RUNNING” 상태가 됩니다. 다시 시작된 새 작업 실행에는 초기 작업 실행 ID와 재시작 횟수를 나타내는 접두사 “restart_”가 결합된 작업 실행 ID가 있습니다. 예를 들어, 초기 작업 실행 ID가 인 경우 재시작된 작업 실행은 jr_1234 첫 번째 재시작의 ID를 갖게 됩니다. jr1234_restart_1 두 번째 재시작은 jr1234_restart_2 두 번째 재시작이고, 이런 식으로 계속됩니다.

재시동으로 인해 재시도는 영향을 받지 않습니다. 실행이 실패하고 자동 재시도로 인해 새 실행이 시작되는 경우 재시작 카운터가 1부터 다시 시작됩니다. 예를 들어, 실행이 실패하면 자동 재시도는 ID:를 사용하여 새 실행을 시작하고 7일 후에 이 시도를 다시 시작하면 새 실행 ID는 다음과 같습니다jr_id1_attempt_4. jr_1234_attempt_3_restart_5 jr_id1_attempt_4_restart_1

데이터 손실 처리

유지 관리 재시작 시 AWS Glue 스트리밍은 이전 작업 실행과 재시작된 작업 실행 간의 데이터 무결성 및 일관성을 보장하는 프로세스를 따릅니다. 단, 작업 재시작 간에 데이터 무결성과 일관성이 보장되는 AWS Glue 것은 아니므로 스트리밍 작업 내에서 중복된 데이터를 처리할 때는 아키텍처를 고려하는 것이 좋습니다.

  1. 유지 관리 재시작 조건 감지: AWS Glue 스트리밍은 유지 관리 재시작을 트리거해야 하는 시점 (예: 7일 후 유지 관리 기간에 도달하거나 14일 후에 강제 재시작이 필요한 경우) 을 나타내는 조건을 모니터링합니다.

  2. 정상 종료 호출: 유지 관리 재시작 조건이 충족되면 AWS Glue 스트리밍은 현재 실행 중인 작업에 대한 정상 종료 프로세스를 시작합니다. 이 프로세스에는 다음 단계가 포함됩니다.

    1. 새 데이터 수집 중지: 스트리밍 작업은 입력 소스 (예: Kafka 주제, Kinesis 스트림 또는 파일) 의 새 데이터 사용을 중지합니다.

    2. 보류 중인 데이터 처리: 작업은 내부 버퍼 또는 대기열에 이미 있는 모든 데이터를 계속 처리합니다.

    3. 오프셋 및 체크포인트 커밋: 작업은 최신 오프셋 또는 체크포인트를 외부 시스템 (예: Kafka, Kinesis 또는 Amazon S3) 에 커밋하여 재시작된 작업이 이전 작업이 중단된 지점부터 다시 시작할 수 있도록 합니다.

  3. 작업 재시작: 정상 종료 프로세스가 완료되면 Streaming은 보존된 상태 및 체크포인트를 사용하여 작업을 다시 시작합니다. AWS Glue 다시 시작된 작업은 마지막으로 커밋된 오프셋 또는 체크포인트에서 처리를 선택하여 데이터가 손실되거나 중복되지 않도록 합니다.

  4. 데이터 처리 재개: 다시 시작된 작업은 이전 작업이 중단된 시점부터 데이터 처리를 재개합니다. 마지막으로 커밋된 오프셋 또는 체크포인트에서 시작하여 입력 소스에서 새 데이터를 계속 수집하고 정의된 ETL 로직에 따라 데이터를 처리합니다.