본문 바로가기
개인 공부 일지/데이터 엔지니어링

Workflow Orchestration (2) - n8n

by 대체로 무해함 2026. 1. 3.

n8n이란?

 노드 기반 워크플로 자동화 플랫폼으로, GUI를 통해 노코드 기반으로 다양한 서비스와 어플리케이션을 연결하여 워크플로를 구축할 수 있다. (1)에서 살펴본 Airflow는 데이터 처리 워크플로가 메인이라면, n8n은 서비스 간 연동 및 자동화가 주요한 관심사로 볼 수 있다.

n8n의 장점

 n8n은 오픈소스 기반으로 동작하며, JavaScript 코드를 직접 작성하여 개인이 필요한 노드를 필요하에 구현하여 사용할 수 있는 자유도를 제공한다. 뿐만 아니라 셀프 호스팅 기능을 통해 직접 설치하여 사용할 수 있다.


데이터 흐름

 n8n 워크플로에서 데이터는 노드 간을 이동하며 처리된다. 트리거 노드에서 시작되어 연이어 전달되고, 자동화 작업을 수행할 수 있다.

Splitting (데이터 분기)

  • if 노드 : 가장 기본적인 분기 방법으로 True/False 두 가지 경로로 데이터를 나누는 노드
  • switch 노드 : 다중 조건에 따른 분기로 여러 개의 경로로 데이터를 분리하는 노드
  • Split Out 노드 : 하나의 배열을 개별의 아이템으로 분리하는 노드

Merging (데이터 병합)

 두 개 이상의 데이터 소스를 병합하는 노드로 여러 병합 모드를 지원한다.

  • Append : 단순히 데이터를 이어 붙이는 방법
  • Merge By Fields : 특정 필드(키)를 기준으로 데이터를 결합하는 방법
  • Merge By Position : 같은 위치(인덱스)에 있는 아이템끼리 결합하는 방법

Looping (반복 처리)

 동일한 작업을 반복하거나 리스트의 각 아이템을 처리하는 노드

  • Loop Over Items 노드 : 배열의 각 아이템을 하나씩 처리하고, 모든 아이템이 처리될 때까지 반복하는 노드
  • 조건부 반복 노드 : 특정 조건이 만족될 때까지 반복하는 노드

Waiting (대기 및 일시 정지)

 워크플로의 실행을 일시적으로 멈추는 노드로 다음의 모드를 지원한다

  • 시간 기반 대기 : 일정 시간 동안 대기
  • 특정 시각까지 대기 : 특정 날짜/시간까지 대기
  • Webhook 대기 : 외부에서 호출이 올 때까지 대기

Sub-workflows (하위 워크플로)

 워크플로를 작은 단위로 나누어 재사용 가능한 모듈로 만드는 방법으로 Input은 메인 워크플로에서 서브 워크플로로 데이터를 전달하고, Output은 서브 워크플로 실행 결과를 메인 워크플로로 반환한다.

Error Handling (에러 처리)

 에러 처리하는 기법으로 다음과 같은 방식을 사용할 수 있다.

  • Error Workflow : 오류 발생 시 자동으로 실행되는 별도의 워크플로를 설정하는 방법
  • Continue On Fail : 특정 노드에서 오류가 발생하더라도 워크플로를 중단하지 않고 계속 진행하는 방법
  • Retry On Fail : 노드 실패 시 자동으로 재시도하는 방법
  • Stop And Error : 의도적으로 워크플로를 중단하고 에러를 발생 시킴 (비정상적 상황 감지 시 강제 종료)

실행 순서

 다중 분기 워크플로에서 노드의 실행은 다음의 것들을 따른다.

기본 실행 원칙

  1. 순차 실행 : 연결된 노드는 순서대로 실행된다
  2. 병렬 실행 : 분기된 경로는 동시에 실행된다
  3. 모든 입력 대기 : 여러 입력이 있는 노드는 모든 입력이 준비될 때까지 대기한다

실행 순서 제어

  1. 명시적 제어 : 노드 간 연결을 통해 순서 지정
  2. Wait 노드 활용 : 의도적으로 대기 시간 부여
  3. Merge 노드 활용 : 특정 노드들이 완료되어야 Merge가 진행되므로 이를 통해 순서 제

 

 


참고

https://wikidocs.net/book/18092

https://docs.n8n.io/

 

Explore n8n Docs: Your Resource for Workflow Automation and Integrations | n8n Docs

Welcome to n8n Docs This is the documentation for n8n, a fair-code licensed workflow automation tool that combines AI capabilities with business process automation. It covers everything from setup to usage and development. It's a work in progress and all c

docs.n8n.io