운영용 어플리케이션 실행하기
- spark-submit 명령을 사용해 대화형 셸에서 개발한 프로그램을 운영용 어플리케이션으로 쉽게 전환할 수 있다.
ex) 파이썬으로 작성한 애플리케이션
./bin/spark-submit\\
--master local \\
./examples/src/main/python/pi.py 10
- master 인수값을 변경해 클러스터 매니저를 선택할 수 있다. ex) 스파크 스탠드얼론, 얀 , 메소스 등
Dataset: 타입 안정성을 제공하는 구조적 API
- 정적 타입 코드를 지원하기 위해 고안된 스파크의 구조적 API
- 파이썬과 R 에서는 사용 불가
- 다수의 소프트웨어 엔지니어가 잘 정의된 인터페이스로 상호작용하는 대규모 애플리케이션을 개발하는데 유용
- 타입안정성을 보장하는 코드에서 저수준 API를 사용할 수 있고 고수준 API의 SQL 을 사용해 빠른 분석을 할 수 있게 된다
- collect ,take 메서드를 호출하면 Dataset에 매개변수로 지정한 타입의 객체를 반환한다.
구조적 스트리밍
- 구조적 API로 개발된 배치 모드의 연산을 스트리밍 방식으로 실행할 수 있으며, 지연 시간을 줄이고 증분 처리할 수 있음
- 모든 작업은 데이터를 증분 처리하면서 수행됨
- 정적 데이터셋을 이용한 dataframe과 스트리밍 방식의 차이는 read 메서드 대신 readStream ㅔㅁ서드를 사용하는게 가장 큰 차이점
- maxFilesPerTrigger 옵션을 통해 한번에 읽을 파일의 수를 설정할 수 있음
- 스트리밍 작업 역시 지연 연산이므로 데이터 플로를 실행하기 위해 스트리밍 액션을 호출해야함