스파크 정리 글
업데이트:
카테고리: 스파크
1. 스파크에 대한 설명들
- 아파치 스파크 : 통합 컴퓨팅 엔진이며, 클러스터 환경에서 데이터를 병렬로 처리하는 라이브러리 집합임. 다음과 같은 데이터 분석 작업들이 가능함.
- 데이터 읽기
- SQL 처리
- 머신러닝
- 스트림 처리
스파크는 저장소 시스템의 데이터를 연산하는 역할만 수행할 뿐, 저장소의 역할은 수행하지 않는다.
- 컴퓨터 클러스터 : 여러 컴퓨터의 자원을 모아 하나의 컴퓨터처럼 사용할 수 있게 함. 이것을 작업에서 조율할 수 있는 프레임워크가 스파크이다.
- 클러스터는 클러스터 매니저(ex: 스파크 standalone 클러스터 매니저)에서 관리함. 사용자가 매니저에 스파크 애플리케이션을 제출하면, 매니저는 애플리케이션 실행에 필요한 자원을 할당하고 우린 그 자원으로 작업을 처리한다.
- 하나의 클러스터에서 여러개의 스파크 애플리케이션을 실행할 수 있다.
-
스파크 애플리케이션 : 코드를 받고 명령을 내려주는 드라이버 프로세스와 작업을 할당받는 여러 개의 익스큐터 프로세스로 구성됨.
- DataFrame : 가장 대표적인 구조적 API이다. 일종의 테이블 데이터라고 생각하면 되는데, 일반적인 엑셀 테이블을 생각하면 안된다. 그 이유는 스파크의 DataFrame은 여러 컴퓨터에 분산되어있기 때문이다.