스트리밍 데이터란 무엇인가요?

스트리밍 데이터란 무엇인가요?

스트리밍 데이터는 다양한 소스에서 지속적으로 흐르는 실시간 데이터입니다. 예약된 간격으로 데이터 세트를 처리하는 배치 처리와 달리 스트리밍 데이터는 데이터가 도착하는 즉시 처리되어 실시간 분석 정보를 제공합니다.

오늘날 조직은 사물인터넷(IoT) 장치부터 전자상거래 거래에 이르기까지 다양한 영역에서 대량의 데이터를 생성합니다. “데이터 스트리밍” 또는 “실시간 데이터 스트리밍”이라고도 하는 스트리밍 데이터는 조직이 이러한 지속적인 데이터 흐름을 실시간으로 처리할 수 있도록 지원합니다.

스트리밍 데이터의 예시는 다음과 같습니다.

  • 주가 및 거래 활동을 추적하는 금융 시장 데이터
  • 장비 성능을 모니터링하는 IoT 센서 데이터
  • 사용자 참여를 포착하는 소셜 미디어 활동 스트림
  • 방문자 행동 패턴을 보여주는 웹사이트 클릭스트림 데이터

조직은 일반적으로 빠른 데이터 기반 의사결정을 위해 실시간 데이터에 의존하는 비즈니스 이니셔티브를 지원하기 위해 스트리밍 데이터를 활용하며 여기에는 데이터 분석비즈니스 인텔리전스(BI)가 포함됩니다.

스트리밍 데이터는 종종 빅데이터 수집 및 처리 작업의 일부로 활용됩니다. 예를 들어 조직은 빅데이터 분석을 사용해 지속적인 데이터 스트림을 분석함으로써 운영 효율성, 소비자 트렌드 및 변화하는 시장 동향에 대한 분석 정보를 얻을 수 있습니다.

스트리밍 데이터는 지속적으로 흐르기 때문에 기존 배치 처리와는 다른 처리 방식이 필요합니다. 여기에는 일반적으로 최적의 성능을 유지하면서 데이터 수집, 처리 및 분석을 관리하는 확장 가능한 스트리밍 아키텍처와 스트림 프로세서가 포함됩니다.

최근 몇 년간 인공지능(AI)머신 러닝의 부상은 스트리밍 데이터 기능에 대한 관심을 더욱 높였습니다. 이러한 기술은 실시간 분석 정보와 예측을 생성하기 위해 스트리밍 데이터 처리에 의존하는 경우가 많습니다.

Gartner에 따르면, 조직의 61%가 AI 기술의 영향으로 인해 데이터 및 분석 운영 모델을 발전시키거나 재고해야 한다고 답했습니다.1

핀테크 기업 WealthAPI는 일관되지 않은 은행 및 거래 데이터의 지속적인 흐름을 실시간으로 처리하기 위해 이벤트 기반 스트리밍 아키텍처를 중심으로 금융 분석 플랫폼을 구축했습니다. 수집된 데이터는 Google Publish/Subscribe를 통해 버퍼링 및 분산됩니다. 이는 데이터 생산자를 다운스트림 시스템으로부터 분리하고 여러 서비스가 동일한 스트림을 동시에 사용할 수 있도록 지원하는 메시징 서비스입니다. 그런 다음 IBM® watsonx.data가 고성능 정형 데이터 검색을 처리하여 재무 분석 정보를 최대 80% 더 빠르게 제공하고 수만 명의 사용자를 지원하면서도 아키텍처 변경 없이 수백만 명 규모까지 확장할 수 있도록 지원합니다.

데이터 스트리밍과 일괄 처리 비교

조직은 일반적으로 두 가지 주요 방식으로 데이터를 처리할 수 있습니다. 배치 처리 또는 스트리밍 데이터입니다.

두 방식 모두 대규모 데이터를 처리하지만 서로 다른 활용 사례에 적합하며 필요한 아키텍처도 다릅니다.

주요 차이점은 다음과 같습니다.

  • 처리 모델: 배치 처리는 고정된 간격으로 데이터 세트를 배치 단위로 집계 및 분석하는 반면 스트리밍 데이터는 실시간 데이터 처리 툴을 사용해 데이터가 도착하는 즉시 처리합니다. 즉 스트리밍 시스템은 즉각적으로 분석 정보를 도출하고 조치를 취할 수 있지만 배치 시스템은 주기적인 일정에 따라 작동합니다.

  • 인프라 요구 사항: 배치 시스템은 일반적으로 데이터 웨어하우스와 같은 기존 데이터 스토리지 및 분석 툴을 사용하는 반면 스트리밍은 실시간 데이터 흐름 처리를 위해 설계된 전문 프레임워크와 데이터 스트리밍 플랫폼이 필요합니다.

  • 성능 요구 사항: 배치 시스템은 예약된 실행 중 리소스 사용을 최적화할 수 있지만 스트림 처리는 낮은 지연 시간과 장애 허용 기능을 갖춘 시스템이 필요합니다. 즉 스트리밍 시스템은 데이터 양이 많거나 문제가 발생하더라도 지연 없이 실시간으로 데이터를 처리해야 합니다.

조직은 일반적으로 데이터 양, 지연 시간 요구 사항 및 비즈니스 목표에 따라 배치 처리와 스트림 처리 중 하나를 선택합니다. 많은 조직은 서로 다른 유형의 데이터 작업을 처리하기 위해 통합된 데이터 패브릭 내에서 두 방식을 함께 사용합니다.

예를 들어 전자상거래 조직은 일일 판매 보고서를 생성하기 위해 배치 처리를 사용하는 동시에 스트리밍 데이터 및 실시간 분석 시스템을 활용해 주요 웹사이트 지표를 모니터링할 수 있습니다.  

AI 아카데미

데이터 관리가 생성형 AI 구현의 비결일까요?

생성형 AI를 성공적으로 사용하기 위해 고품질 데이터가 필수적인 이유를 알아보세요.

스트리밍 데이터 작동 방식

높은 수준에서 보면 스트리밍 데이터는 다양한 소스의 실시간 데이터 흐름을 지속적으로 수집, 처리 및 분석하는 방식으로 작동합니다. 이 프로세스는 네 가지 주요 단계로 구성됩니다.

  • 데이터 수집
  • 스트림 처리
  • 데이터 분석
  • 데이터 스토리지

데이터 수집

첫 번째 단계에서는 다양한 소스에서 들어오는 데이터 스트림을 수집합니다. Apache Kafka와 같은 최신 데이터 수집 툴은 이러한 스트림이 도착하는 즉시 버퍼링 및 표준화하여 확장성과 데이터 일관성을 모두 확보할 수 있도록 지원합니다.

조직은 일반적으로 통합된 워크플로를 구축하기 위해 데이터 수집 툴을 다른 구성 요소와 통합합니다. 데이터 통합 툴은 서로 다른 데이터 유형을 처리 가능한 표준 형식으로 추가 정렬하여 여러 소스의 데이터를 효과적으로 결합하고 분석할 수 있도록 지원합니다.

스트림 처리

처리 단계에서는 Apache Flink와 같은 스트림 처리 프레임워크가 이동 중인 데이터를 분석하고 변환합니다. 이러한 프레임워크를 통해 조직은 다음을 수행할 수 있습니다.

  • 복잡한 이벤트를 실시간으로 처리

  • 평균 계산, 이벤트 수 집계 또는 거래 금액 합산과 같은 대규모 데이터 집계 수행

  • 데이터가 데이터 파이프라인을 흐르는 동안 필터링, 보강 또는 형식 지정과 같은 변환 적용

데이터 분석 및 시각화

이 단계에서 조직은 데이터 시각화 및 기타 분석 툴을 통해 스트리밍 데이터 흐름으로부터 실행 가능한 비즈니스 분석 정보를 도출합니다.

주요 활용 사례는 다음과 같습니다.

  • 중요 지표 및 KPI를 제공하는 실시간 대시보드

  • 워크플로를 자동화하고 프로세스를 최적화하는 운영 애플리케이션

  • 패턴을 분석해 결과를 예측하는 머신 러닝 모델

데이터 스토리지

스트리밍 데이터를 저장할 때 조직은 실시간 활용을 위한 빠른 데이터 액세스 필요성과 장기 데이터 스토리지, 비용 효율성 및 데이터 규정 준수 요구 사항 간의 균형을 맞춰야 합니다.

많은 조직은 데이터 레이크데이터 레이크하우스를 사용해 스트리밍 데이터를 저장하는데 이러한 솔루션이 대규모 데이터를 위한 저비용의 유연한 스토리지 환경을 제공하기 때문입니다. 스트리밍 데이터가 수집된 후에는 데이터 웨어하우스로 전송되어 정제 및 활용 준비 과정을 거칠 수 있습니다. 

조직은 종종 통합된 데이터 패브릭 내에서 여러 데이터 스토리지 솔루션을 함께 구현합니다. 예를 들어 금융 기관은 원시 거래 스트림을 저장하기 위해 데이터 레이크를 사용하고 분석 및 보고를 위해 웨어하우스를 사용할 수 있습니다.

스트리밍 데이터의 유형

조직은 실시간 분석 및 의사결정을 지원하기 위해 다양한 유형의 스트리밍 데이터를 활용할 수 있습니다. 가장 일반적인 스트리밍 데이터 흐름에는 다음이 포함됩니다.

이벤트 스트리밍

이벤트 스트림은 애플리케이션 프로그래밍 인터페이스(API) 호출, 웹사이트 클릭 또는 앱 로그 항목과 같은 시스템 동작이나 변경 사항이 발생하는 즉시 이를 수집합니다. 이벤트 스트림은 일반적으로 시스템 전반의 실시간 활동을 추적하는 데 사용되며 사용자 상호작용이나 시스템 이벤트에 즉각적으로 대응할 수 있도록 지원합니다.

실시간 트랜잭션 데이터

실시간 거래 데이터는 디지털 결제 또는 전자상거래 구매와 같은 비즈니스 거래의 지속적인 흐름을 수집합니다. 실시간 거래 데이터는 사기 탐지 및 즉각적인 의사결정과 같은 활용 사례를 지원합니다.

IoT 및 센서 데이터

IoT 및 센서 데이터에는 환경 상태, 장비 성능 및 물리적 프로세스에 대한 정보가 포함됩니다. 이러한 데이터 스트림은 실시간 장비 모니터링 및 프로세스 자동화를 지원하는 경우가 많습니다.

스트리밍 데이터 사용 사례

스트리밍 데이터는 조직이 대량의 실시간 정보를 처리해 즉각적인 분석 정보와 조치를 수행할 수 있도록 지원합니다.

일반적으로 다음 분야에 응용됩니다.

금융 서비스

금융 기관은 시장 데이터, 거래 및 고객 상호작용을 처리하기 위해 스트리밍 분석을 자주 활용합니다.

예를 들어 신용카드 회사는 사기 탐지를 위해 스트리밍 데이터에 의존합니다. 스트리밍 데이터 플랫폼을 통해 이러한 기업은 초당 수천 건의 거래를 분석해 비정상 활동을 탐지하고 의심스러운 거래를 표시하거나 차단할 수 있습니다.

제조

현대 제조 시설은 운영 효율성을 개선하기 위해 IoT 장치 센서와 실시간 데이터 처리를 자주 활용합니다. 

예를 들어 자동차 공장은 수천 개의 조립 라인 센서를 모니터링하며 온도, 진동 및 성능과 같은 지표를 추적할 수 있습니다. 이러한 데이터는 운영자가 비효율을 조기에 감지하고 가동 중단을 방지하기 위해 예방 유지보수 일정을 수립하는 데 도움이 됩니다.

의료

의료 서비스 제공자는 의료 장치 및 환자 모니터링 시스템의 데이터를 처리하기 위해 스트리밍 애플리케이션에 의존합니다.

예를 들어 중환자실에서는 병상 모니터가 데이터 파이프라인을 통해 활력 징후를 중앙 프로세서로 스트리밍합니다. 이후 이러한 프로세서는 위험 패턴을 식별하고 개입이 필요할 경우 의료진에게 자동으로 경고를 보낼 수 있습니다.

소매 및 전자상거래

소매업체와 전자상거래 기업은 운영 최적화를 위해 POS 시스템, 재고 센서 및 온라인 플랫폼의 스트리밍 데이터를 활용합니다.

예를 들어 대규모 전자상거래 플랫폼은 Apache Kafka를 사용해 수백만 쇼핑객의 클릭스트림을 처리하여 수요를 파악하고 고객 경험을 개인화할 수 있습니다.

운송 및 물류

운송 회사는 차량 운영 최적화를 위해 GPS 데이터 및 IoT 센서 데이터를 처리하는 데 스트리밍 분석을 자주 활용합니다.

예를 들어 물류 공급자는 수천 대 차량의 실시간 데이터를 날씨 및 교통 데이터 세트와 통합할 수 있습니다. 이후 스트림 프로세서는 최소한의 지연 시간으로 자동 경로 최적화를 수행하여 운전자가 지연을 피할 수 있도록 지원합니다. 

사이버 보안

스트리밍 데이터는 자동 이상 탐지와 같은 사이버 보안 조치를 지원하는 데 도움이 됩니다. AI 및 머신 러닝 시스템은 시스템 전반의 모니터링 툴에서 생성되는 데이터 흐름을 분석하여 비정상적인 패턴이나 의심스러운 행동을 식별하고 잠재적인 문제에 즉각 대응할 수 있도록 지원합니다. 

AI와 머신 러닝

스트리밍 데이터는 AI 및 머신 러닝에서도 중요한 역할을 합니다. 예를 들어 스트림 처리 프레임워크는 지속적인 AI 모델 학습을 지원하여 머신 러닝 알고리즘이 거의 실시간으로 변화하는 패턴에 적응할 수 있도록 합니다.

머신 러닝 시스템은 온라인 학습이라고 하는 과정을 통해 스트리밍 데이터 소스로부터 점진적으로 학습할 수도 있으며 이를 위해 전체 모델 재학습 없이 정확도를 향상시키는 특수 알고리즘을 사용합니다.

스트리밍 데이터 도구 및 기술

오픈 소스 및 상용 스트리밍 데이터 솔루션의 도움을 통해 조직은 장애 허용 기능을 갖춘 확장 가능한 데이터 파이프라인을 구축할 수 있으며 이는 데이터 손실이나 다운타임 없이 장애로부터 복구할 수 있음을 의미합니다.

대부분의 스트리밍 데이터 구현은 두 가지 핵심 기술 유형에 기반합니다. 바로 스트림 처리 프레임워크와 스트리밍 데이터 플랫폼입니다.

스트림 처리 프레임워크

스트림 처리 프레임워크는 지속적인 데이터 흐름을 처리하기 위한 기반을 제공합니다. 이러한 프레임워크는 조직이 대량의 데이터를 빠르고 안정적으로 지속 처리할 수 있는 고성능 데이터 파이프라인을 구축하도록 지원합니다.

세 가지 주요 오픈 소스 프레임워크가 스트리밍 시장을 주도하고 있습니다.

  • Apache Kafka
  • Apache Flink
  • Apache Spark

Apache Kafka

대표적인 스트리밍 플랫폼인 Kafka는 밀리초 수준의 지연 시간으로 방대한 데이터 양을 처리할 수 있습니다. 조직은 일반적으로 활동 추적, 운영 모니터링 및 로그 집계를 위한 파이프라인 구축에 Kafka를 활용합니다. 

Apache Flink

Apache Flink는 복잡한 이벤트 처리 및 상태 기반 연산에 특화되어 있습니다. 시간에 따른 이벤트 컨텍스트 이해가 중요한 실시간 분석, 사기 탐지 및 예방 유지보수 분야에서 특히 유용합니다.

Apache Spark

통합 분석 기능으로 잘 알려진 Spark는 배치 데이터와 스트리밍 데이터를 동시에 처리할 수 있습니다. 이러한 기능은 조직이 실시간 데이터와 함께 과거 데이터를 분석해야 하는 상황에서 특히 유용합니다.

스트리밍 데이터 플랫폼 및 서비스

스트리밍 데이터 플랫폼은 수집 및 처리부터 스토리지와 통합에 이르기까지 스트리밍 데이터의 전체 라이프사이클을 지원하기 위한 다양한 툴과 기능을 제공합니다.

많은 주요 클라우드 공급자는 조직이 대규모 데이터 스트리밍 애플리케이션을 보다 쉽게 구축할 수 있도록 관리형 스트리밍 데이터 솔루션을 제공합니다. Amazon Web Services(AWS)의 Amazon Kinesis, Microsoft Azure Stream Analytics, Google Cloud의 Dataflow 및 IBM® Event Streams와 같은 서비스는 즉시 사용할 수 있는 툴을 제공합니다. 기업은 복잡한 인프라를 처음부터 직접 구축할 필요가 없습니다.

이러한 서비스는 온프레미스 스트리밍 툴과도 통합되어 성능 요구 사항과 데이터 개인정보 보호 요구 사항 간의 균형을 지원하는 하이브리드 아키텍처를 구축할 수 있습니다. 

조직은 IBM® StreamSets 및 Confluent와 같은 툴을 사용해 자체 IT 에코시스템에 맞춘 스트리밍 데이터 파이프라인을 구축할 수도 있습니다.

스트리밍 데이터 문제

스트리밍 데이터는 많은 이점을 제공할 수 있지만 조직은 스트리밍 애플리케이션을 지원하기 위한 데이터 아키텍처를 구축할 때 여러 과제에 직면할 수 있습니다.

일반적인 과제는 다음과 같습니다.

  • 데이터 아키텍처 확장: 스트리밍 데이터 처리는 종종 다양한 소스에서 생성되는 방대한 양의 데이터를 처리해야 합니다. 스트리밍 아키텍처가 대량 데이터를 효율적으로 처리할 수 있도록 확장되지 않으면 조직은 어려움을 겪을 수 있습니다.

  • 장애 허용 기능 유지: 스트리밍 시스템은 초당 수백만 건에 이를 수 있는 이벤트를 처리하는 동안에도 장애 허용 기능을 유지해야 합니다. 그렇지 않으면 시스템 오류 및 오작동으로 인해 데이터가 손실될 위험이 있습니다.

  • 성능 모니터링: 실시간 애플리케이션은 최적의 성능을 유지하기 위해 지연 시간, 처리량 및 리소스 활용률과 같은 지표를 지속적으로 모니터링해야 하며 이러한 요구 사항은 이미 과부하 상태인 처리 시스템에 부담을 줄 수 있습니다.

  • 데이터 거버넌스 구현: 조직은 개인 식별 정보(PII) 또는 일반 데이터 보호 규정(GDPR), California Consumer Privacy Act(CCPA) 및 기타 데이터 거버넌스 요구 사항의 적용을 받는 민감한 정보를 포함하는 스트리밍 데이터를 어떻게 저장하고 처리할지 고려해야 합니다.

작성자

Annie Badman

Staff Writer

IBM Think

Matthew Kosinski

Staff Editor

IBM Think

관련 솔루션
DataOps 플랫폼 솔루션

IBM DataOps 플랫폼 솔루션으로 데이터를 구성하여 신뢰할 수 있고 비즈니스에 바로 사용할 수 있는 AI를 확보하세요.

DataOps 솔루션 살펴보기
IBM StreamSets

직관적인 그래픽 인터페이스를 통해 스트리밍 데이터 파이프라인을 생성하여 하이브리드 및 멀티클라우드 환경 전반에서 완벽한 데이터 통합을 촉진합니다.

StreamSets 살펴보기
데이터 및 분석 컨설팅 서비스

IBM Consulting을 통해 엔터프라이즈 데이터의 가치를 실현하여 비즈니스 이점을 제공하는 인사이트 중심의 조직을 구축하세요.

분석 서비스 알아보기
다음 단계 안내

탁월한 고객 및 직원 경험을 제공하기 위해 데이터 사일로를 제거하고, 복잡성을 줄이며, 데이터 품질을 개선하는 데이터 전략을 구축하세요.

  1. 데이터 관리 솔루션 살펴보기
  2. watsonx.data 알아보기