Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

데이터셋 프로젝션 활성화와 빌드

프로젝션을 사용하려면 데이터셋에서 Noho 기능을 활성화하고, 조회 패턴에 맞는 프로젝션을 만든 뒤 데이터를 채우는 빌드를 구성해야 합니다. 프로젝션 정의를 만드는 것만으로 조회용 데이터가 준비되는 것은 아닙니다.

Noho 활성화

변환에서 출력할 때 options={"noho": "true"}를 지정할 수 있습니다. 다음 예제는 입력 데이터를 새 출력에 쓰면서 해당 옵션을 설정합니다. 경로는 실제 데이터셋으로 지정합니다.

from transforms.api import Input, Output, transform


@transform(
    output_dataset=Output("/examples/projections/enabled"),
    input_dataset=Input("/examples/projections/source"),
)
def enable_projection_support(output_dataset, input_dataset):
    dataframe = input_dataset.dataframe()
    output_dataset.write_dataframe(dataframe, options={"noho": "true"})

데이터셋 Details의 스키마 편집에서도 구성할 수 있습니다. 화면의 설정 위치는 customMetadata.options.noho이며 값은 문자열 "true"입니다. 기존 열 스키마, 형식과 다른 옵션은 유지하고 필요한 옵션을 추가합니다.

{
  "customMetadata": {
    "options": {
      "noho": "true"
    }
  }
}

이 JSON은 옵션의 위치를 보여 주는 부분 구성입니다. 데이터셋의 전체 스키마를 이 조각으로 대체하지 않습니다.

Projections 탭과 열 선택

Noho가 활성화되어 있고 데이터셋 편집 권한이 있으면 Projections 탭이 표시됩니다. Add new projection을 선택합니다.

일반적으로 All columns를 선택합니다. 질의가 일부 열만 사용한다면 Only Columns로 필요한 열만 포함하거나 Excluding Columns로 특정 열을 제외할 수 있습니다. 프로젝션은 자신이 포함한 열이나 그 부분집합을 읽는 요청에만 사용할 수 있습니다.

최적화 유형

유형구성
Filtering필터 열을 순서대로 지정합니다. 그 목록의 선두 연속 부분에 대한 조건을 최적화합니다. 범위 조회가 필요하면 Range Scans Required를 사용하며 비기본형 열 제약도 확인합니다.
Joining조인 열 집합과 버킷 수를 지정합니다. 조인 열은 정확히 일치해야 하며 다른 버킷 데이터와 결합하려면 버킷 수까지 같아야 합니다.

필터와 조인의 적용 조건은 프로젝션 조회 패턴에서 설명합니다. 설정을 마치면 Create projection을 선택합니다.

생성 직후에는 데이터가 없어 빨간 경고 아이콘이 표시됩니다. 조회에 활용하려면 프로젝션을 빌드해야 합니다.

현재 브랜치의 빌드 활성화

프로젝션 유지보수 빌드는 자동으로 예약되지 않습니다. 자원과 비용을 제어할 수 있도록 직접 구성합니다.

  1. Enable projection builds on the current branch를 켭니다.
  2. Add build schedule에서 갱신 조건을 정합니다.
  3. 다른 브랜치에서도 빌드하려면 그 브랜치로 이동하여 별도로 활성화하고 예약합니다.

예시 화면은 America/New_York 시간대의 매일 00:31입니다. 시간대와 원본 갱신량에 맞춰 주기를 정하고 Save로 저장합니다.

수동 빌드와 준비 상태

예약 시각을 기다리지 않으려면 망치 모양의 Build 버튼을 선택합니다.

최신 상태에 도달하기까지 여러 빌드가 필요할 수 있습니다. Projection Build Status 옆의 초록색 체크가 최신 상태를 나타냅니다. 이후 지원되는 조회가 프로젝션을 사용합니다.

원본 갱신과 프로젝션 빌드의 관계 및 보존 정책은 내부 동작에서 설명합니다.