누구나 로고
オンライン講座企業・団体研修ライブラリトレンドインサイト無料コースお知らせお問い合わせ採用サイト
모든 강의를 무료로 볼 수 있어요. 회원가입 없이도 학습 가능합니다.
로그인무료 회원가입
강좌n8n + AI 워크플로우 설계법 20강8강

8강 / 전체 20강

Set·Merge 노드 — 데이터 변환과 결합

8분 읽기 조회 23

Set 노드로 필드를 변환·정제하고, Merge 노드의 세 가지 모드로 여러 데이터 소스를 하나로 결합하는 방법을 익힌다.

🎯 학습 목표

이 강을 마치면 다음을 할 수 있습니다.

  • Set 노드로 필드를 추가·수정·삭제하는 방법을 이해합니다.
  • Merge 노드의 세 가지 모드(Append, Keep Key Priority, Multiplex)를 구별해 적절히 선택합니다.
  • API 응답을 원하는 구조로 정제하는 실전 패턴을 익힙니다.
  • 두 개 이상의 데이터 소스를 하나로 합치는 워크플로우를 설계할 수 있습니다.

🔧 Set 노드 — 데이터 형태를 원하는 대로 바꾸기

이 섹션에서는 n8n에서 가장 자주 사용하는 변환 노드인 Set 노드를 살펴보겠습니다.

Set 노드는 아이템의 필드를 추가·수정·삭제하는 데이터 변환 도구입니다. 외부 API에서 응답을 받으면 그 형태가 항상 내가 원하는 구조와 일치하지는 않습니다. 불필요한 필드가 가득하거나, 필드명이 달라서 다음 노드와 호환이 안 되거나, 필드를 계산해 새로 추가해야 하는 경우가 많습니다. 이 모든 상황에서 Set 노드가 해결사 역할을 합니다.

Set 노드를 사용하는 방법은 매우 직관적입니다. 노드를 추가하고 "Add field"를 클릭하면 이름과 값을 입력하는 행이 생깁니다. 값에는 고정 문자열이나 숫자를 입력할 수도 있고, 표현식을 사용해 다른 필드 값을 참조할 수도 있습니다. 예를 들어 fullName이라는 새 필드를 추가하고 값으로 {{ $json.firstName + ' ' + $json.lastName }}을 입력하면, 두 필드를 합친 전체 이름이 자동으로 생성됩니다.

Set 노드에는 중요한 옵션이 하나 있습니다. 바로 "Keep Only Set" 토글입니다. 이 옵션을 켜면 입력 아이템의 모든 기존 필드가 제거되고, Set 노드에서 명시한 필드만 출력됩니다. 불필요한 필드를 정리하거나 특정 필드만 추출할 때 매우 유용합니다. 반대로 토글을 끄면 기존 필드는 유지된 채 새 필드가 추가·덮어쓰기됩니다.

Set 노드의 활용 패턴 세 가지를 정리해 두겠습니다. 첫 번째는 필드 추가입니다. API 응답에 없는 필드를 계산해 추가합니다. 두 번째는 필드명 변경입니다. user_name을 username으로 바꾸는 식으로, "Keep Only Set"을 켜고 새 이름으로 원하는 필드를 정의합니다. 세 번째는 데이터 정제입니다. 응답에서 필요한 필드만 선택해 깔끔한 구조로 만들 때 사용합니다.

🔗 Merge 노드 — 두 데이터 흐름을 하나로

이 섹션에서는 두 개의 데이터 경로를 합치는 Merge 노드를 살펴보겠습니다.

워크플로우를 설계하다 보면 두 갈래의 데이터 흐름을 다시 하나로 모아야 하는 상황이 생깁니다. 예를 들어, 사용자 정보를 A 노드에서 가져오고, 해당 사용자의 주문 내역을 B 노드에서 가져온 뒤 이를 합쳐 이메일을 발송하는 시나리오가 있습니다. 이런 상황에서 Merge 노드를 사용합니다. Merge 노드는 두 개의 입력 핀(Input 1, Input 2)을 가지며, 각 핀에 서로 다른 노드를 연결할 수 있습니다.

Merge 노드는 세 가지 모드를 제공합니다. 상황에 따라 적합한 모드를 선택해야 합니다.

모드동작적합한 상황
AppendInput 1 아이템 + Input 2 아이템을 순서대로 이어붙임두 목록을 단순히 합칠 때
Keep Key Priority같은 인덱스의 아이템을 필드 단위로 병합. Input 1 우선같은 객체를 두 소스에서 가져와 필드를 합칠 때
MultiplexInput 1 × Input 2 모든 조합 생성 (카르테시안 곱)모든 조합을 만들어야 할 때

Append 모드는 가장 간단합니다. Input 1에 3개 아이템, Input 2에 2개 아이템이 들어오면 합계 5개 아이템이 출력됩니다. 서로 다른 데이터 소스에서 같은 종류의 데이터를 가져와 하나의 리스트로 만들 때 사용합니다.

Keep Key Priority 모드는 같은 인덱스의 아이템을 합칩니다. Input 1의 0번 아이템과 Input 2의 0번 아이템이 병합되어 하나의 아이템이 됩니다. 두 아이템에 같은 키가 있으면 Input 1의 값이 우선됩니다. 사용자 기본 정보와 추가 프로필 정보를 두 번의 API 호출로 나눠 가져와서 합칠 때 유용합니다.

Multiplex 모드는 모든 조합을 생성합니다. Input 1에 색상 3개, Input 2에 사이즈 2개가 있으면 6개의 조합이 만들어집니다. 제품 변형 조합이나 반복 처리에서 사용합니다. 데이터 수가 많으면 아이템 수가 기하급수적으로 늘어나므로 주의해야 합니다.

💻 실전: API 응답 구조 변환 예제

이 섹션에서는 실제 워크플로우에서 Set·Merge 노드를 어떻게 조합하는지 살펴보겠습니다.

시나리오: GitHub API에서 저장소 목록을 받아, 원하는 형태(이름·주소·스타 수)만 남기고 슬랙으로 보내야 합니다. GitHub API의 응답은 각 저장소마다 수십 개의 필드를 포함합니다. 이 중 name, html_url, stargazers_count만 필요합니다. 슬랙 메시지 형식에 맞게 stargazers_count를 stars로 이름도 바꾸겠습니다.

Set 노드 설정은 다음과 같습니다. "Keep Only Set"을 켠 상태에서 세 개의 필드를 정의합니다.

  • name → {{ $json.name }}
  • url → {{ $json.html_url }}
  • stars → {{ $json.stargazers_count }}

이렇게 하면 각 저장소 아이템이 정확히 세 개의 필드만 가진 깔끔한 객체로 변환됩니다. 이후 Code 노드나 Slack 노드에서 이 데이터를 훨씬 다루기 쉬워집니다.

이번에는 Merge를 추가하겠습니다. GitHub API 호출과 병렬로 팀 내부 DB에서 즐겨찾기 저장소 목록을 가져온다고 가정합니다. Merge 노드의 Append 모드를 사용해 두 목록을 합치고, 이후 Set 노드로 중복 필드를 정리합니다. 이 패턴은 여러 소스의 데이터를 수집해 통합 처리할 때 표준적으로 사용됩니다.

⚠️ 자주 하는 실수

이 섹션에서는 Set·Merge 노드 사용 시 흔히 겪는 오류와 주의점을 살펴보겠습니다.

첫 번째 실수는 Merge 노드의 타이밍 문제입니다. Merge 노드는 두 입력이 모두 도착해야 실행됩니다. 한쪽 경로가 0개 아이템을 반환하면 Merge가 영원히 기다릴 수 있습니다. 이 경우 "Always Output Data" 옵션이나 빈 아이템을 생성하는 Set 노드를 앞에 배치해 해결합니다.

두 번째 실수는 "Keep Only Set" 잊기입니다. Set 노드에서 기존 필드를 제거하려 했는데 토글을 켜지 않아 기존 필드가 그대로 남는 경우입니다. 반드시 설정 패널에서 토글 상태를 확인하십시오.

세 번째 실수는 Multiplex 모드 남발입니다. Input 1에 100개, Input 2에 50개 아이템이 있으면 5,000개가 생성됩니다. 다음 노드가 5,000번 실행되면서 요금이 폭증하거나 속도 제한에 걸릴 수 있습니다. Multiplex는 정말 모든 조합이 필요한 경우에만 신중하게 사용하십시오.

🔄 심화: Merge와 동기화 타이밍

이 섹션에서는 Merge 노드를 올바르게 사용하기 위한 내부 동작 원리를 살펴보겠습니다.

Merge 노드는 두 입력이 모두 준비될 때까지 대기하는 동기화 포인트입니다. n8n 내부적으로는 각 입력에서 실행이 완료될 때마다 완료 신호를 받고, 두 신호가 모두 도달하면 병합을 시작합니다. 이 특성 때문에 병렬 처리와 순차 처리의 결합이 가능합니다.

실전에서 자주 사용하는 패턴은 팬아웃 / 팬인(Fan-out / Fan-in)입니다. 하나의 트리거 이벤트를 받아 두 개의 API를 병렬로 호출한 뒤, 두 결과를 Merge 노드로 합치는 구조입니다. 이렇게 하면 두 API를 순차적으로 호출하는 것보다 전체 실행 시간이 단축됩니다. 예를 들어 각 API가 2초씩 걸린다면, 순차 처리는 4초가 필요하지만 병렬+Merge는 약 2초만 걸립니다.

Merge 노드 사용 시 한 가지 더 알아두어야 할 점은 아이템 수 불일치 문제입니다. Keep Key Priority 모드에서 Input 1에 5개, Input 2에 3개 아이템이 있으면, 인덱스 0~2는 병합되고 인덱스 3~4는 Input 1의 값만 출력됩니다. 이 동작이 예상과 다를 수 있으므로, 두 입력의 아이템 수가 같을 때만 Keep Key Priority를 사용하는 것이 안전합니다.

📝 핵심 요약

노드역할핵심 옵션
Set필드 추가·수정·삭제, 필드명 변경Keep Only Set 토글
Merge (Append)두 목록을 순서대로 이어붙임단순 합치기
Merge (Keep Key Priority)같은 인덱스 아이템을 필드 단위로 병합Input 1 우선, 아이템 수 맞춰야 함
Merge (Multiplex)모든 조합 생성아이템 수 폭증 주의

다음 강에서는 IF·Switch 노드를 통한 조건 분기 설계를 살펴봅니다. 같은 데이터라도 조건에 따라 서로 다른 처리를 해야 할 때 워크플로우를 어떻게 갈라치는지 배우게 됩니다.

관련 주제

  • Set 노드 필드 변환
  • Merge 노드
  • Append 모드
  • Keep Key Priority
  • Multiplex
  • 데이터 정제 패턴
  • AI 기술
  • AI 기술 강의
  • n8n + AI 워크플로우 설계법 20강
  • 무료강의
  • 무료 온라인 강의
  • NUGUNA
  • 누구나
이전 7강데이터 다루기 — JSON 구조와 표현식다음 9강 IF·Switch 노드 — 조건 분기 설계

댓글

0/1000

불러오는 중...

목차

  1. 1.n8n이란? — 노코드 자동화 플랫폼 개요
  2. 2.n8n 설치와 환경 설정 — 셀프호스팅 vs 클라우드
  3. 3.UI 살펴보기 — 캔버스·노드·연결선
  4. 4.첫 워크플로우 만들기 — 매뉴얼 트리거 실습
  5. 5.노드 유형 이해 — 트리거·액션·로직
  6. 6.HTTP Request 노드 — 외부 API 호출하기
  7. 7.데이터 다루기 — JSON 구조와 표현식
  8. 8.Set·Merge 노드 — 데이터 변환과 결합
  9. 9.IF·Switch 노드 — 조건 분기 설계
  10. 10.루프 처리 — SplitInBatches와 반복 실행
  11. 11.에러 핸들링 — Try/Catch와 오류 알림
  12. 12.Webhook 트리거 — 외부 이벤트 수신
  13. 13.스케줄 트리거 — 정기 자동화 설계
  14. 14.AI 노드 입문 — OpenAI Chat 모델 연결
  15. 15.프롬프트 설계 — LLM 출력 제어 전략
  16. 16.텍스트 자동화 — 요약·분류·번역 워크플로우
  17. 17.이미지 생성 자동화 — DALL-E·Stable Diffusion 연동
  18. 18.Google Sheets·이메일 연동 실전
  19. 19.서브워크플로우 — 재사용 가능한 모듈 설계
  20. 20.실전 프로젝트 — AI 뉴스레터 자동화 완성

カスタマーサポート

  • お知らせ
  • よくある質問
  • お問い合わせ
  • コミュニティ

ご利用案内

  • 利用規約
  • プライバシーポリシー
  • 返金ポリシー

サービス

  • 会社紹介
  • 新規登録
  • 新着コース
  • 無料コース
누구나 로고
利用規約プライバシーポリシー返金ポリシー

상호명: NUGUNA  |  대표자: 정우진  |  사업자등록번호: 392-32-01817  |  통신판매업신고: 제 2026-서울양천-0564 호

주소: 서울특별시 양천구 목동서로 100  |  이메일: nugunapass@gmail.com  |  전화: 010-6395-3043

© 2026 NUGUNA. All rights reserved.

KB예금주인증관리자
ホームコースライブラリお問い合わせMY