topics 데이터 파이프라인이란? 데이터 파이프라인이란?
데이터 파이프라인은 다양한 데이터 프로젝트의 이해 관계자가 데이터 흐름을 파악할 수 있도록 데이터를 수집, 변환 및 저장합니다.
태국의 야간 정유 공장의 조감도.
데이터 파이프라인이란?

데이터 파이프라인은 다양한 데이터 소스에서 원시 데이터를 수집한 다음 분석을 위해 데이터 레이크 또는 데이터 웨어하우스와 같은 데이터 저장소로 이전하는 방법입니다. 일반적으로 데이터는 데이터 저장소로 이동하기 전에 데이터 처리 과정을 거칩니다. 여기에는 적절한 데이터 통합과 표준화를 보장하는 필터링, 마스킹, 집계와 같은 데이터 변환이 포함됩니다. 이 과정은 데이터 세트의 대상이 관계형 데이터베이스인 경우 특히 중요합니다. 이 유형의 데이터 저장소에는 기존 데이터를 새 데이터로 업데이트하기 위해 정렬(즉, 데이터 열 및 유형 매칭)이 필요한 정의된 스키마가 있습니다. 

이름에서 알 수 있듯이 데이터 파이프라인은 데이터 사이언스 프로젝트 또는 비즈니스 인텔리전스 대시보드에 대한 "파이프(배관)" 역할을 합니다. 데이터는 API, SQL 및 NoSQL 데이터베이스, 파일 등 다양한 위치에서 가져올 수 있지만 안타깝게도 이러한 데이터는 즉시 사용할 수 없습니다. 일반적으로 데이터 준비 작업은 비즈니스 사용 사례의 요구사항에 따라 데이터를 구성하는 데이터 사이언티스트 또는 데이터 엔지니어가 책임집니다. 데이터 파이프라인에 필요한 데이터 처리 유형은 보통 탐색형 데이터 분석과 정의된 비즈니스 요구사항의 조합을 통해 결정됩니다. 데이터가 적절하게 필터링, 병합, 요약되면 저장하고 사용하도록 표시할 수 있습니다. 체계적으로 구성된 데이터 파이프라인은 다양한 데이터 프로젝트의 기반이 됩니다. 여기에는 탐색형 데이터 분석, 데이터 시각화, 머신 러닝 작업이 포함될 수 있습니다.

데이터 파이프라인 유형

데이터 파이프라인에는 일괄 처리(batch processing)와 스트리밍 데이터(streaming data)의 두 가지 주요 유형이 있습니다.

일괄 처리

일괄 처리의 개발은 안정적이고 확장 가능한 데이터 인프라를 구축하는 데 중요한 단계였습니다. 2004년 일괄 처리 알고리즘인 MapReduce는 특허 등록 후 Hadoop, CouchDB, MongoDB와 같은 오픈 소스 시스템에 통합되었습니다.

이름에서 알 수 있듯이 일괄 처리는 미리 설정된 시간 간격 동안 저장소에 데이터의 "묶음(batch)"을 로드하며, 일반적으로 사용량이 적은 업무 시간에 예약됩니다. 이렇게 하면 대용량 데이터에 대한 작업으로 전체 시스템에 부담을 줄 수 있는 일괄 처리 작업이 다른 워크로드에 미치는 영향을 최소화할 수 있습니다. 일괄 처리는 보통 특정 데이터 세트(예: 월별 회계)를 즉시 분석할 필요가 없을 때 최적의 데이터 파이프라인이며, "추출, 변환, 로드"를 의미하는 ETL 데이터 통합 프로세스와 더 관련이 있습니다.

일괄 처리 작업은 한 명령의 출력이 다른 명령의 입력이 되는 시퀀싱된 명령의 워크플로우를 형성합니다. 예를 들어 한 명령이 데이터 수집을 시작하면 다음 명령이 특정 열의 필터링을 트리거하고 그 다음 명령은 집계를 처리할 수 있습니다. 이 일련의 명령은 데이터가 완전히 변환되어 데이터 저장소에 기록될 때까지 계속됩니다.

스트리밍 데이터

일괄 처리와 달리, 스트리밍 데이터는 데이터를 지속적으로 업데이트해야 할 때 활용됩니다. 예를 들어 앱이나 POS(Point of Sale) 시스템은 제품의 재고와 판매 내역을 업데이트하기 위해 실시간 데이터가 필요합니다. 그래야 판매자가 제품의 재고 여부를 소비자에게 알릴 수 있습니다. 제품 판매와 같은 단일 작업은 "이벤트"로 간주되고 결제에 항목 추가와 같은 관련 이벤트는 일반적으로 "토픽" 또는 "스트림"으로 함께 그룹화됩니다. 그런 다음 이러한 이벤트는 오픈 소스 오퍼링인 Apache Kafka와 같은 메시징 시스템 또는 메시지 브로커를 통해 전송됩니다. 

데이터 이벤트는 발생한 직후에 처리되기 때문에 스트리밍 처리 시스템의 지연 시간이 배치 시스템보다 짧지만, 메시지가 의도치 않게 삭제되거나 대기열에서 오래 대기할 수 있으므로 일괄 처리만큼 안정적인 것으로 간주되지 않습니다. 메시지 브로커는 수신 확인을 통해 이 문제를 해결하도록 도움을 주는데, 여기서 이용자는 메시지 처리를 브로커에 확인시켜 대기열에서 메시지를 제거합니다. 

IBM Streams로 Kafka 스트리밍 앱을 빌드하는 방법 자세히 보기

데이터 파이프라인 아키텍처

데이터 파이프라인의 아키텍처는 세 가지 핵심 단계로 구성됩니다. 

1. 데이터 수집: 데이터는 다양한 데이터 구조(예: 정형 및 비정형 데이터)를 포함하는 다양한 데이터 소스에서 수집됩니다. 스트리밍 데이터 내에서 이러한 원시 데이터 소스는 일반적으로 생성자, 발행자 또는 발신자로 알려져 있습니다. 기업은 데이터 처리 준비가 된 경우에만 데이터를 추출하도록 선택할 수 있지만 먼저 원시 데이터를 클라우드 데이터 웨어하우스 제공자 내에 배치하는 것이 좋습니다. 이러한 방식으로 기업은 데이터 처리 작업을 조정해야 하는 경우 모든 과거 데이터를 업데이트할 수 있습니다. 

2. 데이터 변환: 이 단계에서는 일련의 작업이 실행되어 대상 데이터 저장소에서 요구하는 형식으로 데이터를 처리합니다. 이러한 작업에는 비즈니스 보고와 같이 반복적인 작업 스트림에 대한 자동화 및 거버넌스가 포함되어 있어 데이터가 일관되게 정리되고 변환됩니다.  예를 들어 데이터 스트림은 중첩된 JSON 형식으로 제공될 수 있으며, 데이터 변환 단계의 목표는 분석을 위한 핵심 필드를 추출하기 위해 해당 JSON을 언롤(unroll)하는 것입니다.

3. 데이터 저장: 그런 다음 변환된 데이터는 다양한 이해 관계자들에게 노출될 수 있는 데이터 저장소에 저장됩니다. 스트리밍 데이터에서 이 변환된 데이터는 일반적으로 이용자, 구독자 또는 수신자로 알려져 있습니다.  

데이터 파이프라인과 ETL 파이프라인 비교

데이터 파이프라인과 ETL 파이프라인이라는 용어는 종종 대화에서 같은 의미로 사용되기도 하지만 ETL 파이프라인을 데이터 파이프라인의 하위 범주로 생각해야 합니다. 이 두 유형의 파이프라인은 다음의 세 가지 주요 기능으로 구분됩니다.

• ETL 파이프라인은 특정 순서를 따릅니다. 약어에서 알 수 있듯이 이 파이프라인은 데이터를 추출하고 변환한 다음 데이터 저장소에 로드하여 저장합니다. 모든 데이터 파이프라인이 이 순서를 따를 필요는 없습니다. 실제로 ETL 파이프라인은 클라우드 네이티브 도구의 출현으로 더욱 대중화되었습니다. 이 유형의 파이프라인에서는 여전히 데이터 수집이 먼저 발생하지만, 변환은 데이터가 클라우드 데이터 웨어하우스에 로드된 후에 적용됩니다.  

• ETL 파이프라인은 또한 일괄 처리의 사용을 의미하는 경향이 있지만, 위에 언급했듯이 데이터 파이프라인의 범위는 더 넓습니다. 따라서 스트림 처리를 포함할 수도 있습니다. 

• 마지막으로 가능성은 매우 낮지만 데이터 파이프라인 전체가 ETL 파이프라인과 같은 데이터 변환 과정을 거칠 필요는 없습니다. 하지만 데이터 분석을 용이하게 하기 위해 변환을 활용하지 않는 데이터 파이프라인을 보는 것은 매우 드뭅니다. 

데이터 파이프라인의 사용 사례

빅데이터가 계속 증가함에 따라 데이터 관리가 그 어느 때보다 중요해지고 있습니다. 데이터 파이프라인은 다양한 기능을 제공하며 비즈니스에는 다음과 같이 크게 세 가지 범위로 적용됩니다. 

• 탐색형 데이터 분석: 탐색형 데이터 분석(EDA)은 데이터 사이언티스트가 종종 데이터 시각화 방법을 사용하여 데이터 세트를 분석 및 조사하고 주요 특징을 요약하는 데 사용됩니다. 이는 데이터 소스를 조작하여 필요한 응답을 얻을 수 있는 최상의 방법을 결정할 수 있도록 지원함으로써, 데이터 사이언티스트가 보다 손쉽게 패턴을 발견하고 이상 항목을 감지하며 가설을 검증하거나 가정을 확인할 수 있도록 도와줍니다.

• 데이터 시각화: 데이터 시각화는 차트, 플롯, 인포그래픽, 애니메이션과 같은 일반적인 그래픽을 통해 데이터를 나타냅니다. 이렇게 정보를 시각적으로 표시함으로써 복잡한 데이터 관계와 데이터 기반 인사이트를 이해하기 쉬운 방식으로 전달할 수 있습니다.

• 머신 러닝: 머신 러닝은 데이터와 알고리즘을 사용하여 인간이 학습하는 방식을 모방하고 점진적으로 그 정확도를 향상시키는 데 중점을 두는 인공지능(AI) 및 컴퓨터 사이언스의 한 분야입니다. 알고리즘은 통계적 방법을 사용하여 분류 또는 예측을 수행하고 데이터 마이닝 프로젝트에서 중요한 인사이트를 도출하도록 훈련됩니다.

IBM 솔루션
리소스 IBM Cloud Pak® for Data 및 Datameer로 완벽한 데이터 파이프라인 구축

이 블로그에서 IBM Cloud Pak for Data 및 Datameer 간의 파트너십이 견고한 데이터 파이프라인을 구축하는 데 어떻게 도움이 되는지 알아보세요.

AI를 위한 강력한 데이터 기반 구축

이 스마트 페이퍼에서 액세스, 거버넌스, 개인정보 보호 및 규정 준수의 세 가지 주요 관리 영역에 초점을 맞춰 AI를 위한 강력한 데이터 기반을 구축하는 방법을 알아보세요.

SBI(State Bank of India)

State Bank of India가 IBM Garage™ 방법론과 함께 여러 IBM 솔루션을 사용하여 포괄적인 온라인 뱅킹 플랫폼을 개발한 방법을 알아보세요.

데이터 파이프라인과 IBM

IBM Cloud Pak for Data는 마이크로서비스와 주요 데이터 및 AI 기능을 활용하여 분산 시스템에서 데이터를 지능적으로 통합하여 기업에 비즈니스 성과에 대한 전체적인 시각을 제공합니다. 이를 기반으로 기업은 엔터프라이즈 데이터를 더 빠르게 수집하고 구성한 후 인사이트를 도출하여 대규모로 의사결정을 내릴 수 있습니다. 또한 데이터 관리 팀은 IBM의 경쟁력 있는 보안 프레임워크 덕분에 데이터의 안전성을 신뢰할 수 있으므로 규제 정책을 준수하고 규정 준수 위험을 줄일 수 있습니다. IBM Cloud Pak® for Data 및 IBM Streams가 여러 환경에서 비즈니스 데이터의 파이프라인 아키텍처를 어떻게 개선하는지 알아보세요.

IBM Cloud Pak® for Data