실시간 빅데이터 처리를 위한 Spark & Flink Online 2) Spark 와 RDD

Bradley·2022년 3월 7일
0

RDD

Resilient Distributed Dataset
탄력적인 분산 데이터셋?

RDD의 특징 5가지

  1. 데이터 추상화
    클러스터에 흩어진 파일들을 하나의 파일인것 처럼 사용이 가능하다
  2. Resilient & Immutable(탄력적이며 불변하는 성질)
    Immutable이란
    RDD1이 변환을 거치면 RDD1이 바뀌는게 아닌 새로운 RDD2가 만들어지는 것으로 변환을 거칠 때 마다 기록을 남김
    RDD의 변환 과정은 하나의 비순환 그래프로 그릴 수 있으며 문제가 생길 경우 전 RDD로 쉽게 돌아갈 수 있음
  3. Type-safe
    컴파일 시 Type을 판별할 수 있어 문제를 일찍 발견할 수 있다 (개발자 친화적)
  4. 정형/비정형 데이터
    정형/비정형 데이터 둘 다 담을 수 있다
  5. Lazy Evaluation
    T = Transformation (변환)
    A = Action (액션)
    액션을 할 때 까지 변환은 실행되지 않는다.

Spark Operation

Spark Operation = Transformation + Action

왜 RDD를 쓰는가

  • 유연하다
  • 짧은 코드로 할 수 있는게 많다
  • 개발할 때 무엇보다는 어떻게에 대해 더 생각하게 된다.(how-to)
    -게으른 연산 덕분에 데이터가 어떻게 변환될지 생각하게 된다
    - 데이터가 지나갈 길을 닦는 느낌
profile
2022년부턴 후회없이

0개의 댓글

관련 채용 정보