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을 작동한다.