View a markdown version of this page

배포 - AWS Glue

배포

Distribution 분석기를 사용하여 열에 있는 값의 빈도 분포를 계산합니다. 분석기는 열 데이터 유형에 따라 다양한 출력을 생성합니다.

  • 숫자 열 – 빈 히스토그램을 생성합니다. 히스토그램은 열의 값 범위를 동일한 너비의 간격(빈)으로 나누고 각 빈의 값 수를 계산합니다.

  • 문자열, 날짜 및 기타 숫자가 아닌 열 – 각 고유 값의 빈도를 집계하고 빈도별로 내림차순으로 정렬된 값 분포를 생성합니다. 분석기는 가장 빈도가 높은 상위 20개 값만 반환합니다.

참고

Distribution 분석기는 DQDL 규칙 세트의 Analyzers 블록에서만 사용할 수 있습니다. 이를 규칙으로 사용할 수는 없습니다.

구문:

Distribution <COL_NAME> Distribution <COL_NAME> with bins = <BIN_COUNT> Distribution <COL_NAME> with bins = <BIN_COUNT>, rebin = <true|false>
  • COL_NAME – 분석할 열의 이름입니다. 데이터세트의 모든 열에 대한 분포를 계산하려면 AllColumns를 사용합니다.

    지원되는 열 유형: 모든 열 유형

  • bins(선택 사항) – 숫자 열 히스토그램에 사용할 빈(간격) 수입니다. 기본값은 20입니다. 최대값은 20입니다. 이 파라미터는 숫자가 아닌 열에는 영향을 주지 않습니다.

  • rebin(선택 사항) - 자동 리비닝 동작을 제어합니다. 연속 실행 시 오버플로가 임계값을 초과하면 분석기가 자동으로 리비닝합니다. 기본값은 true입니다. 오버플로 빈도에 관계없이 빈 엣지를 무기한 고정하려면 false로 설정합니다. 자세한 내용은 자동 리비닝 섹션을 참조하세요.

예제 - 단일 열의 기본 분포

다음 예제에서는 기본값인 20개의 빈을 사용하여 Salary 열의 빈도 분포를 계산합니다.

Analyzers = [ Distribution "Salary" ]

예제 - 사용자 지정 빈 수

다음 예제에서는 10개의 빈을 사용하여 Age 열의 히스토그램을 계산합니다.

Analyzers = [ Distribution "Age" with bins = 10 ]

예제 - 모든 열의 분포

다음 예제에서는 데이터세트의 모든 열의 분포를 계산합니다. 숫자 열은 20개의 빈이 있는 히스토그램을 생성하고 숫자가 아닌 열은 값 분포를 생성합니다.

Analyzers = [ Distribution AllColumns ]

예제 - 규칙 및 기타 분석기와 결합

다음 예제에서는 규칙, 표준 분석기, Distribution 분석기를 결합하는 규칙 세트를 보여줍니다.

Rules = [ RowCount > 100, Completeness "Salary" > 0.9 ] Analyzers = [ Mean "Salary", StandardDeviation "Salary", Distribution "Salary" with bins = 15, Distribution "Department" ]

출력 형식:

Distribution 분석기를 실행하면 Distribution라는 통계가 생성됩니다. 스칼라 통계(예: Mean 또는 Sum)는 단일 숫자 값을 반환합니다. 반면 Distribution 통계는 구조화된 결과를 반환합니다.

  • BinEdges - 빈 경계(숫자 열의 경우) 또는 고유 값(숫자가 아닌 열의 경우)을 정의하는 배열입니다.

  • Count - 각 빈 또는 값의 빈도 배열입니다.

ListDataQualityStatistics API 또는 GetDataQualityResult API를 사용하여 분포 결과를 검색할 수 있습니다. Data Quality API에 대한 자세한 내용은 AWS Glue API 참조Data Quality API를 참조하세요.

Null 동작

분석기는 대상 열에서 NULL 값이 있는 행을 빈 계산에서 제외합니다.

고정된 빈 엣지, 오버플로 관측 항목 및 자동 리비닝에 대한 자세한 내용은 분포 분석기 섹션을 참조하세요.