본문으로 건너뛰기
버전: Next

코드

코드는 파이프라인에서 사용되는 재사용 가능한 코드 아티팩트입니다. D.Hub에서는 Python과 SQL 스크립트를 코드 리소스로 등록하여 파이프라인 단계(Step)에서 참조하고 실행할 수 있습니다.

코드 개요

코드 리소스는 다음과 같은 역할을 합니다.

  • 재사용성: 한 번 작성한 코드를 여러 파이프라인에서 반복 사용할 수 있습니다.
  • 버전 관리: 코드 변경 이력이 버전별로 관리됩니다.
  • 분류 체계: 카테고리와 태그를 통해 코드를 체계적으로 분류합니다.
  • 복제: 코드를 복제하여 같은 컬렉션 또는 다른 컬렉션에 사본을 만들 수 있습니다.
  • 컬렉션 연동: 컬렉션에 포함하여 관련 데이터셋, 파이프라인과 함께 그룹으로 관리합니다.

지원 언어

D.Hub 코드 아티팩트가 지원하는 프로그래밍 언어는 다음과 같습니다.

언어용도설명
Python데이터 처리, AI/MLPandas, Polars, PyArrow 등 데이터 처리 라이브러리 활용
SQL데이터 조회, 변환분석 데이터베이스 쿼리 및 데이터 변환 작업
정보

파이프라인 Step에서 코드를 실행할 때, language 필드에 따라 적절한 실행 환경이 자동으로 선택됩니다. Python 코드는 워크플로우 엔진에서, SQL 코드는 분석 데이터베이스에서 실행됩니다.

코드 상세 화면

컬렉션 트리에서 코드 아이템을 선택하면 오른쪽 패널에 상세 정보가 표시됩니다.

코드 에디터

Monaco Editor 기반의 완전한 코드 에디터를 제공하며, 읽기 모드와 편집 모드를 모두 지원합니다.

  • 구문 강조: Python과 SQL 각각에 맞는 구문 강조가 적용됩니다.
  • 줄 번호: 코드 왼쪽에 줄 번호가 표시되어 특정 위치를 참조하기 편리합니다.
  • 복사: 코드 전체를 클립보드에 복사할 수 있습니다.
  • 포맷팅: 툴바의 Format 버튼으로 코드를 자동 정렬합니다.
  • 에디터 내 검색: 에디터 내에서 텍스트를 검색할 수 있습니다.

AI 코드 어시스턴트

코드 에디터에는 AI 기반의 코드 생성 및 수정 기능이 내장되어 있습니다.

  • 인라인 AI 챗: Cmd+K (macOS) / Ctrl+K (Windows)로 인라인 AI 프롬프트를 열어 자연어로 코드를 생성하거나 수정할 수 있습니다.
  • 코드 선택 메뉴: 코드를 선택한 후 나타나는 AI 메뉴에서 선택 영역에 대한 AI 편집을 요청할 수 있습니다.
  • Accept/Reject: AI가 생성한 코드를 검토한 후 수락 또는 거부할 수 있습니다.

Python 패키지 관리

Python 코드의 경우, 에디터 하단에 패키지 입력 섹션이 표시됩니다. 코드 실행에 필요한 Python 패키지를 지정할 수 있습니다.

메타데이터

코드 리소스에는 다음과 같은 메타데이터가 포함됩니다.

필드설명
Name코드의 고유 식별자
Alias사용자에게 표시될 별칭
Category리소스 분류 (기본값: code)
Type코드 유형 (사용자 정의)
Tags검색 및 분류를 위한 태그 목록
Comment코드에 대한 설명

코드 이름은 파이프라인 Step의 script 필드에서 참조됩니다. 직관적이고 일관된 네이밍 규칙을 사용하면 파이프라인 구성 시 코드를 찾기 쉽습니다.

코드 생성 및 편집

템플릿 마법사로 생성

컬렉션의 Create New 기능 또는 템플릿 기반 생성을 통해 코드를 새로 생성할 수 있습니다.

  1. 코드 이름, 언어, 카테고리를 입력합니다.
  2. 코드 에디터에서 스크립트를 작성합니다.
  3. 필요한 메타데이터(태그, 설명)를 추가합니다.
  4. Create 버튼을 클릭하여 저장합니다.

코드 수정

등록된 코드를 수정하면 새로운 버전이 생성됩니다. 이전 버전은 유지되므로 필요 시 이전 상태로 되돌릴 수 있습니다.

코드 복제

코드의 Duplicate 기능으로 코드를 복제할 수 있습니다. 같은 컬렉션 또는 다른 컬렉션을 대상으로 지정하여 사본을 만들 수 있습니다.

버전 관리

코드 리소스는 오브젝트 스토리지에 버전별로 저장됩니다.

  • 버전 목록: 코드의 모든 버전을 시간순으로 확인할 수 있습니다.
  • 버전 간 비교: 두 버전을 선택하면 Monaco DiffEditor로 변경 내역을 비교할 수 있습니다. Side-by-side와 Unified 모드를 전환할 수 있습니다.
  • 버전 복원(Restore): 이전 버전을 현재 버전으로 복원할 수 있습니다.
  • 버전 다운로드: 특정 버전의 코드 파일을 다운로드할 수 있습니다.
경고

코드를 수정하면 해당 코드를 참조하는 파이프라인의 동작에 영향을 줄 수 있습니다. 수정 전에 관련 파이프라인을 확인하세요.

자세한 버전 관리 방법은 버전 관리 문서를 참고하세요.

파이프라인에서의 활용

코드 아티팩트는 파이프라인 Step의 script 필드를 통해 참조됩니다. 하나의 코드가 여러 파이프라인에서 재사용될 수 있으며, 파이프라인 실행 시 해당 코드가 자동으로 로드되어 실행됩니다.

파이프라인 구성에 대한 자세한 내용은 파이프라인 (컬렉션) 문서를 참고하세요.

다음 단계