[데이터 파이프라인] 1. 데이터 파이프라인 소개 및 설명

2025. 6. 16. 23:24·Data Engineering

데이터 파이프라인 기본 개요

  • 데이터 파이프라인의 정의

다양한 소스의 데이터를 가치를 뽑아내는 특수한 대상으로 옮기고 변환하는 일련의 과정

 

데이터 파이프라인의 결과물이 빙산의 일각이고, 데이터 파이프라인은 빙산의 가려진 부분이다. 잘 정리되고 통찰력을 주는 분석 결과물은 견고하게 지어진 데이터 기계를 통해 등장한다. 데이터 파이프라인은 이 기계를 구축하는 일 전반을 다룬다.

 

  • 데이터 엔지니어에게 요구되는 기술

데이터 엔지니어에게 요구되는 기술은 다음과 같다. 숙련된 SQL 실력과 기초 웨어하우스 지식을 갖춰야 한다. 파이썬과 자바와 같은 데이터를 다루는데 사용하는 프로그래밍 언어를 알아야 한다. Hadoop, Spark와 같은 빅데이터를 위한 분산 컴퓨팅 기술을 알아야 하며 클라우드도 알아야 한다. 그리고 로그 분석, 방화벽 제어, 배포를 위한 기본 리눅스 명령줄도 알고 있어야 한다,

 

 

데이터 인프라

각 데이터 인프라를 알아보고 특징을 알아본다. 데이터 인프라는 데이터를 다루는 전 과정에서 필요한 인프라들이다.

  • 데이터 소스

데이터 소스는 데이터가 구해지는 곳이다. 데이터 소스의 소유가 누구인지를 알아야 한다. 소유가 누구인지는 어떤 방식으로 저장된 데이터를 다루는 지를 결정한다. 예를 들어 API 형식으로만 데이터를 제공하는 곳이라면 데이터베이스를 직접 다루는 것만큼 세심한 데이터 가공을 하지 못한다. 

 

다양한 소스에서 얻어진 데이터들이 어떤 형태인지를 알아야 한다. 데이터베이스에 깔끔하게 저장되어 있을 수 있고, JSON 형태일 수 있으며 Hadoop, Spark 등 분산 시스템에 나누어 저장될 수도 있고 CSV 파일일 수도 있다. 어떤 데이터 형태인지에 따라 가공 방식이 달라진다.

 

데이터 사이즈도 중요하다. 사이즈에 맞는 파이프라인 단계를 구축하기 때문이다. 그리고 파이프라인을 구축한다음 유효성 검증을 해야한다. 파이프라인 각 과정에 있는 데이터들이 올바른 형태로 다뤄지고 있는지 확인해야한다.

 

 

  • 클라우드 데이터 웨어하우스 및 데이터 레이크 (차이가 뭔지 몰랐는데 이참에 정리하자)

AWS와 같은 클라우드는 기업들로 하여금 자체 인프라에 대한 고민을 없애주었다. 클라우드에서 많이 쓰이는 데이터 저장소는 웨어하우스와 레이크가 있다. 웨어하우스는 서로 다른 시스템의 데이터들을 분석하기 좋게 정형화하여 저장하는 데이터베이스다. 반면에 레이크는 서로 다른 시스템들의 데이터가 정형화되지 않고 막 저장되어 있는 곳이다 (.hwp, .pdf, .csv등이 섞여서 저장 가능). 파이프라인을 통해 데이터들은 둘 사이를 이동한다.

 

 

  • 데이터 수집 도구

기업의 상황에 맞게 오픈 소스와 제품을 활용하기도 하고 직접 개발하기도 한다. 중요한 건 많은 데이터 소스 별로 데이터 수집 도구를 차별화할 수가 있다. 그리고 직접 프레임워크를 개발할 수도 있다는 것을 알아야 한다.

 

 

  • 데이터 변환과 데이터 모델링 도구

데이터 변환은 파이프라인의 대표적인 구성 요소 ETL, ELT 중 T, Transform을 말한다. 모델 혹은 분석에 맞게 데이터를 변환하는 것 자체를 의미한다. 데이터 모델링은 데이터 변환의 한 가지이다. 데이터를 구성하는 최적의 구조가 데이터 모델이고 여기에 데이터를 맞추는게 모델링이다. 데이터를 가공하는데에는 많은 방법이 있고 필요에 따라 직접 개발할 수 있다.

 

 

  •   워크플로 오케스트레이션 (Docker, Kubernetes, Airflow)

데이터를 가공하는 작업은 데이터의 양에 따라, 결과의 복잡성에 따라 시간이 오래걸릴 수 있다. 모든 순간을 개발자가 직접 다루기에는 무리가 있기에 이것을 도와주는 오케스트레이션 툴이 존재한다. 대표적으로 Airflow가 있다. 이런 툴들은 DAG라고 하는 비순환적 그래프의 형식으로 일의 순서를 정의하고, 순서에 맞게 데이터 관련 일들을 실행한다.

 

 

  • 데이터 인프라 커스터마이징

변화무쌍한 데이터 생태계에 맞게 데이터를 다루는 일련의 과정을 직접 개발해야할 필요가 있다. 단순히 데이터 관련 지식을 아는 것을 넘어 직접 도구를 만들어 낼 수 있는 능력이 데이터 엔지니어에겐 필요하다.

'Data Engineering' 카테고리의 다른 글

[Airflow] Slack을 이용한 Airflow 실습 - 3 (Slack Webhook)  (0) 2025.07.01
[Airflow] Slack을 이용한 Airflow 실습 - 2 (Airflow와 DAG)  (0) 2025.06.25
[Airflow] Slack을 이용한 Airflow 실습 - 1 (Docker와 Airflow 연동)  (0) 2025.06.24
[데이터 파이프라인] 2. 일반적인 데이터 파이프라인  (0) 2025.06.17
[Spark] RDD는 무엇인가?  (0) 2025.03.17
'Data Engineering' 카테고리의 다른 글
  • [Airflow] Slack을 이용한 Airflow 실습 - 2 (Airflow와 DAG)
  • [Airflow] Slack을 이용한 Airflow 실습 - 1 (Docker와 Airflow 연동)
  • [데이터 파이프라인] 2. 일반적인 데이터 파이프라인
  • [Spark] RDD는 무엇인가?
BestTomaTo
BestTomaTo
  • BestTomaTo
    기록보관소
    BestTomaTo
  • 전체
    오늘
    어제
    • 분류 전체보기 (36) N
      • Algorithm (8)
      • Computer Science (3)
      • Backend (3)
      • DevOps (4)
        • Kubernetes (3)
        • Docker (0)
      • Data Engineering (8)
      • Cloud (2)
      • AI (1)
      • Security (3) N
        • SK Shieldus Rookies (3) N
      • Reference (2)
      • Project (1)
      • Experience (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    AWS
    sql 개발자
    홈 서버
    3단계 모델링
    airlfow
    langchain memory
    langsmith
    동기 프로그래밍
    SQLD
    해커톤 후기
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
BestTomaTo
[데이터 파이프라인] 1. 데이터 파이프라인 소개 및 설명
상단으로

티스토리툴바