빅 데이터를 다루기 위해 만들어진 아파치 스파크
아파치 스파크의 배경, 이해
아파치 스파크는
"빅데이터 분산 처리 엔진"
혹은
"빅데이터 오픈소스 분산 처리 플랫폼"
구체적으로는
"인메모리 기반 대용량 데이터 고속 처리 엔진으로 범용 분산 클러스터 컴퓨팅 프레임워크"
이렇게 이해되고 있다.
처음 빅데이터의 개념이 등장했을때
빅데이터 처리는 분산형 파일 시스템을 기반으로 만들어진 하둡(HDFS) 에코시스템이 대세를 이루었다.
그러나 현재는 빅데이터 처리를 실시간으로 필요한 서비스가 늘어나면서 DISK I/O 기반인 하둡이 아닌 인 메모리상에 동작하는 Spark가 주목받기 시작했고, 이제는 빅데이터에서 없어서는 안될 중요한 프레임워크가 되었다.
디스크 블록에서 처리하는게 아닌 인메모리상에서 동작하는 스파크는 하둡 맵 리듀스보다 100배 이상의 속도를 낸다고 알려져 있다.
최근에는 실시간 서비스 스트리밍 분석에서는 스파크를 사용한 실시간 데이터 처리, 그리고 그렇지 않은 빅데이터 처리는 하둡을 이용해 두 서비스를 함께 이용하는것이 대세로 보인다.
스파크의 특징
- 인메모리 기반의 빠른 처리
- 다양한 언어 지원(자바, 스칼라, 파이썬, R, SQL)
- SQL, 스트리밍, 머신러닝, 그래프 연산등 다양한 컴포넌트 제공
- YARN, Mesos, Kubernetes 등 다양한 클러스터에서 동작 가능
- HDFS, Cansandra, HBase 등 다양한 파일 포맷 지원
스파크의 컴포넌트 구성
* 게시글 참고 링크
'Development > Data Engineering' 카테고리의 다른 글
[Apache Spark] 스파크의 구조와 실행흐름 이해하기 (0) | 2022.03.30 |
---|---|
분산처리의 문제점 (0) | 2022.03.23 |
병렬처리와 분산처리 (0) | 2022.03.18 |
[Apache Kafka] 아파치 카프카란 (0) | 2022.01.05 |
데이터 파이프라인의 흐름 (0) | 2021.12.29 |
댓글