본문으로 건너뛰기

노드 추가 및 연결

워크플로우를 구성하는 노드를 추가하고 데이터 흐름을 연결하는 방법을 설명합니다.

노드 추가 방법

1. 퀵 추가 (Quick Add)

[Screenshot] 노드 추가 (Quick Add 패널)

노드 추가

왼쪽 패널의 Quick Add 섹션에서 원하는 유형의 노드를 캔버스로 드래그 앤 드롭합니다.

2. 컬렉션에서 가져오기

왼쪽 패널의 Collections 트리에서 이미 만들어둔 데이터셋이나 코드를 찾아 드래그 앤 드롭합니다. 재사용성을 높이는 가장 좋은 방법입니다.

3. 컨텍스트 메뉴

캔버스 빈 공간을 우클릭하여 메뉴를 열고, Add Dataset 또는 Add Code를 선택합니다.

4. 키보드 단축키

빠른 작업을 위해 다음 단축키를 사용할 수 있습니다.

  • 데이터셋 노드 추가: Ctrl(Cmd) + Shift + D
  • 코드 노드 추가: Ctrl(Cmd) + Shift + C

노드 유형

데이터셋 노드 (Dataset Node)

데이터의 소스(Source) 또는 싱크(Sink) 역할을 합니다.

타입설명용도
Delta LakeDelta Lake 테이블배치 데이터 처리, 버전 관리
KafkaKafka 토픽실시간 스트리밍 데이터
DDSDDS 인터페이스실시간 분산 시스템 연동
REST APIHTTP 엔드포인트외부 API 호출

Delta Lake 노드 설정

  • 테이블 이름: Delta Lake 테이블 경로
  • 스키마: 컬럼 정의 (자동 추론 가능)
  • 파티션 키: 데이터 분할 기준 컬럼
  • 쓰기 모드: Append, Overwrite, Merge

Kafka 노드 설정

  • 토픽: Kafka 토픽 이름
  • 브로커: Kafka 브로커 주소
  • 직렬화 포맷: JSON, Avro, Protobuf
  • Consumer Group: (소스 노드인 경우)

코드 노드 (Code Node)

데이터를 변환하거나 처리하는 로직을 수행합니다.

타입언어용도
PythonPython 3.x범용 데이터 처리, ML 모델 적용
SQLSQL데이터 변환, 집계, 조인

Python 노드 설정

  • 스크립트: Python 코드 작성
  • 패키지 의존성: 필요한 pip 패키지 목록
  • 입력 변수: 입력 데이터셋 매핑
  • 출력 변수: 출력 데이터셋 매핑
  • 환경 변수: 런타임 환경 변수 설정
# Python 노드 예시
import pandas as pd

# 입력 데이터 로드
df = input_dataset.read()

# 데이터 변환
df['total'] = df['price'] * df['quantity']
df = df[df['total'] > 1000]

# 출력
output_dataset.write(df)

SQL 노드 설정

  • 쿼리: SQL 쿼리 작성
  • 입력 테이블 별칭: 입력 데이터셋을 테이블로 참조
  • 출력 스키마: 결과 스키마 정의
-- SQL 노드 예시
SELECT
category,
SUM(amount) as total_amount,
COUNT(*) as order_count
FROM orders
WHERE order_date >= '2024-01-01'
GROUP BY category
ORDER BY total_amount DESC

노드 연결

데이터의 흐름을 정의하기 위해 노드들을 연결합니다.

  1. 선행 노드(Upstream)의 오른쪽 핸들(Output)에 마우스를 가져갑니다.
  2. 클릭 후 드래그하여 후행 노드(Downstream)의 왼쪽 핸들(Input)에 놓습니다.
  3. 연결선(Edge)이 생성되며 데이터 의존성이 설정됩니다.

연결 규칙

  • 데이터셋 노드 → 코드 노드: 데이터 읽기 (소스)
  • 코드 노드 → 데이터셋 노드: 데이터 쓰기 (싱크)
  • 코드 노드 → 코드 노드: 중간 결과 전달
자동 매핑

코드 노드와 데이터셋 노드를 연결하면, 코드 내의 입출력 변수가 데이터셋 ID와 자동으로 매핑될 수 있습니다. (설정 패널에서 확인 가능)

노드 관리

  • 이동: 노드를 드래그하여 위치를 변경합니다.
  • 복제: 노드를 선택하고 우클릭 메뉴의 Duplicate를 선택하거나 Ctrl+C, Ctrl+V를 사용합니다.
  • 삭제: 노드를 선택하고 Delete 키를 누르거나 우클릭 메뉴의 Delete를 선택합니다.
  • 정렬: 여러 노드를 선택하고 툴바의 Auto Layout 버튼을 사용하여 깔끔하게 정리합니다.
  • 그룹 선택: Shift + 드래그로 여러 노드를 한 번에 선택합니다.