🥞 BE
home

RDD

Date
2023/06/25
Category
Data Engineering
Tag
Apache Spark
Detail
RDD(Resilient Distributed Dataset) - 탄력적인 분산 데이터셋..?

RDD의 5가지 특징

1.
데이터 추상화
데이터는 클러스터에 흩어져있지만 하나의 파일인것 처럼 사용이 가능하다.
2.
Resilient & Immutable
탄력적이고 불변하는 성질이 있다. 데이터의 연산을 실행하는 여러 노드 중 하나가 망가진다면? 네트워크 장애, 하드웨어/메모리 문제 등이 발생. Immutable하면 문제의 복원이 가능해진다.
탄력적이다
3.
Type-safe
Integer RDD
String RDD
Double RDD
컴파일시 Type을 판별할 수 있어 문제를 일찍 발견할 수 있다.
4.
Unstructured/Structured Data
5.
Lazy
게으르다 - 결과가 필요할 때까지 연산을 하지 않는다.
Spark Operation은 두가지로 나뉠 수 있다.
Spark Operation = Transform + Action

왜 RDD를 쓸까

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