반드시 이해해야 하는 세 가지 기본 개념
- 타입형/비타입형 API의 개념과 차이점
- 핵심 용어
- 스파크가 구조적 API의 데이터 흐름을 해석하고 클러스터에서 실행하는 방식
DataFrame과 Dataset
- 잘 정의된 로우와 컬럼을 가지는 분산 테이블 형태의 컬렉션
- 각 컬럼은 다른 컬럼과 동일한 수의 로우를 가져야함
- 컬렉션의 모든 로우는 같은 데이터 타입 정보를 가지고 있어야 함
- DataFrame과 Dataset 은 결과를 생성하기 위해 어떤 데이터에 어떤 연산을 적용해야 하는지 정의하는 지연 연산의 실행 계획이며, 불변성을 가짐
- 액션 호출시에 트랜스포메이션을 실제로 수행하고 결과를 반환
스키마
- DataFrame의 컬럼명과 데이터타입을 정의
- 데이터 소스에서 얻거나 직접 정의
스파크의 구조적 데이터 타입 개요
- 스파크는 실행 계획 수립과 처리에 사용하는 자체 데이터 타입 정보를 가지고 있는 카탈리스트 엔진 사용
- 스파크로 연산을 수행할때 스파크가 지원하는 언어를 이용해 작성된 표현식을 카탈리스트 엔진에서 스파크의 데이터 타입으로 변환해 명령을 처리