Keyboard shortcuts

Press ← or → to navigate between chapters

Press ? to show this help

Press Esc to hide this help

숨겨진 저장소에서 코드 이력 복구하기

모든 Code Workbook에는 코드의 안전한 백업과 변경 이력을 보관하는 숨겨진 Code Repository가 있습니다. Workbook 브랜치의 코드가 바뀔 때마다 대응하는 저장소 브랜치에 자동 commit이 생성됩니다.

오른쪽 위 톱니바퀴의 Open hidden Code Repository로 엽니다.

저장소의 특성

  • 읽기 전용입니다. 저장소에서 직접 수정할 수 없으며 Workbook에서 코드를 바꾸어야 갱신됩니다.
  • 기본적으로 숨겨져 있고 Workbook UI에서만 발견할 수 있습니다.
  • Python, R과 SQL 코드를 각각 pipeline.py, pipeline.R, pipeline.sql에 모읍니다. 같은 언어의 여러 노드와 Global Code도 해당 파일에 함께 들어갑니다.
  • Branches에서 브랜치별 전체 코드 변경 이력을 볼 수 있습니다.
  • 숨김 파일 workbook.yml에 Workbook의 기본 메타데이터를 저장합니다.

코드의 저장소 표현

Workbook 코드는 저장소 문법으로 변환되어 기록됩니다. 예를 들어 Spark DataFrame 입력의 열 이름을 바꾸는 Workbook 함수는 다음과 같습니다.

def rename_column(dataset):
    return dataset.withColumnRenamed("old_name", "new_name")

같은 Spark 변환을 저장소 코드로 표현할 때는 입출력 바인딩과 transform_df를 사용합니다. 다음 경로는 형식을 보여 주는 가상 프로젝트 값입니다.

from transforms.api import Input, Output, transform_df


@transform_df(
    Output("/Example Project/Outputs/renamed"),
    dataset=Input("/Example Project/Inputs/source"),
)
def rename_column(dataset):
    return dataset.withColumnRenamed("old_name", "new_name")

숨겨진 저장소의 코드를 직접 편집하여 Workbook에 반영할 수는 없습니다. 운영 저장소로 옮기는 작업은 일회성 내보내기와 구분합니다.

삭제하거나 잃은 코드 복원

숨겨진 저장소의 Branches에서 원래 Workbook 브랜치, 예를 들어 master를 선택합니다. 복구할 시점의 commit을 열어 필요한 코드를 확인하고 Workbook의 해당 노드 또는 Global Code에 복사합니다.

이 경로는 코드 이력을 복구하는 방법입니다. 당시 계산 모듈의 콘솔 변수나 실행 중 메모리를 되살리는 기능은 아닙니다.