Backend

스트리밍 데이터(Data Stream)

지미닝 2024. 3. 18. 20:56

전송된 정보를 수집하거나 정보를 전송할 때 사용되는 디지털 방식으로 암호화 된 일관된 신호의 흐름

짧은 대기 시간 처리를 목표로 계속해서 증분하는 방식으로 내보내지는 대용량 데이터

특징

  1. 시간순 중요성: 데이터 스트림의 각 요소에는 타임 스탬프가 포함된다.
  2. 지속적 흐름: 데이터 스트림에는 시작도 끝도 없다. 요구되는 만큼 데이터를 끊임없이 지속적으로 수집한다.
  3. 고유성: 정확한 실시간 데이터 처리가 중요하다.
  4. 비균질성: 데이터 변형을 처리할 수 있는 기능이 있어야 한다.
  5. 불완전성: 소스의 일시적인 오류는 스트리밍된 데이터 내의 요소에 손상 또는 누락을 유발할 수 있다.

사용되는 이유(중요한 이유)

  • 무한한 데이터 볼륨:

스트림 소스로부터 생성된 데이터 볼륨은 굉장히 크기 마련이고, 이에 따라 스트리밍 데이터의 무결성, 구조, 속도를 규제하기 위한 실시간 분석이 까다로운 과제가 된다.

  • 고급 데이터 처리 시스템:

스트리밍 데이터 알키텍처는 클라우드 기술을 사용하여 스트리밍 데이터를 필요한 만큼 소비,강화,분석 및 영구저장 한다.

사용 사례

  • 데이터 분석
  • IoT 애플리케이션
  • 금융 분석
  • 실시간 추천
  • 서비스 보장
  • 미디어 및 게임
  • 위험 관리

스트리밍 처리 시스템은 새로운 동적 데이터가 지속적으로 생성되는 시나리오 대부분에서 유용하다. 대부분의 산업 부문과 빅 데이터 사용 사례가 이에 해당한다.

일반적으로 기업은 최소-최대 컴퓨팅 롤링 같은 기본적인 처리와 시스템 로그 수집 등 간단한 애플리케이션으로 시작한다. 그리고 이러한 애플리케이션이 좀 더 정교한 거의 실시간 처리로 진화하게 된다.

배치 데이터와 스트리밍 데이터의 차이점

배치 처리: 컴퓨터가 주기적으로 대량의 반복적인 데이터 작업을 완료하기 위해 사용하는 방식

  배치 처리 스트림 처리
데이터 범위 데이터 세트의 모든 또는 대부분 데이터를 쿼리하거나 처리. 롤링 타임 윈도우 내 데이터 또는 가장 최신 데이터 레코드의 데이터를 쿼리하거나 처리.
데이터 크기 대규모 데이터 배치. 일부 레코드로 구성된 마이크로 배치 또는 개별 레코드.
성능 지연 시간이 몇 분에서 몇 시간. 몇 초 또는 몇 밀리초의 지연 시간이 필요.
분석 복잡한 분석. 간단한 응답 기능, 수집 및 롤링 지표.

배치 처리 → 포함되는 모든 데이터로부터 컴퓨팅 가능한 결과를 도출하고 빅 데이터 세트를 심층적으로 분석할 수 있게 해준다.

스트림 처리 → 데이터 시퀀스를 수집하고, 수신되는 각 데이터 레코드에 대한 응답으로 지표, 보고서 및 요약 통계를 증분식으로 업데이트 한다. (실시간 분석 및 응답 기능)