Hadoop
Spark(스파크)
집못가는프로그래머
2021. 9. 14. 16:57
Spark
- Hadoop Eco-system
- 하둡의 hdfs(저장), MapReduce(분석/ 처리) 중에 MapReduce의 상위호환이라고 생각하면 된다.
- MapReduce는 파일기반의 처리방식으로 인해 속도가 매우 느리다.
- Spark는 MapReduce 대비 속도가 대략 100배 빠른 시스템이다
- Spark는 In-Memory 처리방식을 가지고 있다.
- 데이터의 분산/저장은 그대로 hdfs가 맡아서 하고 MapReduce의 역할을 Spark가 대채한다.
- Hive가 SQL을 사용해서 MapReduce를 대체하는 것처럼 Spark또한 SQL을 지원한다.
- Spark는 파일만 가지고 처리하는 것이 아닌 Streaming도 지원을 한다.(즉 전달되는 데이터의 흐름또한 처리할 수 있다)
- Spark의 큰 특징중 하나는 Machine Learning을 지원한다. (빅데이터의 분산/처리 과정을 ML을 이용해 가능하다)
- Python, Java, R등을 지원한다. (PySpark)
*Hive와의 차이점
*Hive
-테이블을 생성한다
*Spark
-테이블을 생성하지 않는다
-DataFrame : 메모리에 존재하는 테이블(View) -> view를 등록하고 등록된 view로 sql을 작동한다.