practical-data-pipeline
  • Practical Data Pipeline
  • 시작 전에 드리는 당부의 말
  • 01 - 데이터 인프라
    • 1.1 데이터 파이프라인
    • 1.2 데이터 입수 (Ingestion)
    • 1.2 데이터 가공 (Processing)
    • 1.3 데이터 저장 (Storage)
    • 1.4 데이터 분석 (Analysis)
  • 02 - 데이터 처리
    • 2.1 데이터 처리
    • 2.2 배치 (Batch) 처리
      • 2.1.1 Spark Intro
      • 2.1.2 Spark Tutorial
      • 2.1.3 Spark Concept
      • 2.1.4 Spark Architecture
      • 2.1.5 Spark DataFrame
      • 2.1.6 Spark Persistence
      • 2.1.7 Spark Cache
      • 2.1.8 Spark SQL & Table
      • 2.1.9 Spark Join
      • 2.2.1 Spark Memory
      • 2.2.2 Spark Versions
    • 2.3 워크플로우 (Workflow) 관리
    • 2.4 스트림 (Stream) 처리
      • 2.4.1 Kafka Intro
      • 2.4.2 Kafka Advanced
      • 2.4.3 Spark Streaming
      • 2.4.4 Streaming Window
      • 2.4.5 Streaming State
      • 2.4.6 Streaming Sink
  • 04 - 데이터 스토리지
    • 4.1 Kafka
      • 4.1 Kafka Concept
      • 4.2 Kafka Advanced
      • 4.3 Kafka Versions
    • 4.2 Redis
    • 4.3 RDB (MySQL)
    • 4.4 ElasticSearch
    • 4.5 KV Storage (DynamoDB)
    • 4.6 Druid
  • 05 - 데이터 애플리케이션
    • 5.1 데이터 서비스
    • 5.2 통계 서비스
    • 5.3 추천 서비스
    • 5.4 A/B 테스팅
  • 08 - Case Study
    • Week 1 - Data Pipeline
    • Week 2 - EMR & Kubernetes
    • Week 3 - Metastore
    • Week 4 - KV & Delta Storage
    • Week 5 - Kafka Rebalancing
    • Week 6 - ML Pipeline
  • 09 - 설치 및 환경 구성
    • Spark 설치 및 환경 구성
      • Spark - Local Shell 환경
      • Spark - Local Jupyter 환경
      • Spark - Kubernetes 환경
      • Spark - EMR 환경
      • Spark - Databricks 환경 (SaaS)
    • Flink 설치 및 환경 구성
    • Kafka 설치 및 환경 구성
    • MySQL 설치 및 환경 구성
    • DynamoDB 사용을 위한 환경 구성
    • ElasticSearch 설치 및 환경 구성
    • Presto 설치 및 환경 구성
    • Druid 설치 및 환경 구성
Powered by GitBook
On this page

Was this helpful?

  1. 02 - 데이터 처리

2.2 배치 (Batch) 처리

Previous2.1 데이터 처리Next2.1.1 Spark Intro

Last updated 3 years ago

Was this helpful?

배치 (Batch) 처리는 비교적 긴 주기로, 데이터를 처리하는 것을 말합니다.

개념을 설명하는 특정 문서에서는 배치 처리는 데이터를 특정 기간동안 모아서 처리하는 것을 말하고, 스트림 처리는 매 건마다 개별로 처리한다고 구별하는 경우도 있습니다. [1] 그러나 프레임워크에 따라 스트림 처리라 하더라도 Native Processing / Micro Batch 등 구현 방법이 다른 경우도 있어

이 글에서는 프레임워크가 어떻게 구현되었는지 보다는 Application 이 실행되는 패턴에 따라 분류하여 파이프라인 관점에서 그 용도에 따라 구분합니다. 예를 들어

  • Application 이 실행되고 데이터를 처리한 후 종료되며 비교적 긴 주기 (1시간, 1일 등) 마다 실행될 경우를 배치 처리로 설명합니다

  • 반면 Application 이 실행되어 있는 상태로 계속 유지되며, 비교적 짧은 주기 (수백 milils, 수초 등) 마다 데이터를 반복적으로 읽어 처리하는 경우를 스트림 처리로 설명합니다.

배치 처리를 위해 사용되는 Framework 는 다양하나, 이 글에서는 Spark 를 위주로 설명합니다.

[1]

https://www.precisely.com/blog/big-data/big-data-101-batch-stream-processing