티스토리 뷰
spark-submit 은 Spark의 bin 디렉터리에 있는 스크립트로써, 클러스터에서 application을 수행하기 위해 사용된다.
./bin/spark-submit \
--class <main-class> \
--master <master-url> \
--deploy-mode <deploy-mode> \
--conf <key>=<value> \
... # other options
<application-jar> \
[application-arguments]
옵션
--class
: applicaiton 의 entry point
--master
: cluster의 master URL
--deploy-mode
: (cluster)worker nodes에 배포를 할지, (client)로컬에 external client에 배포를 할지
: default 는 client
--conf
: 임의 spark 설정 property( key=value format )
: value 에 공백이 포함 된 경우 "key=value" 처럼 따옴표로 싸야 한다.
--jars
: 필요 jar 파일들을 포함하여 클러스터에 전달 해준다.
: 콤마( , ) 로 URL들을 나열해야 한다.
* executor node에 각 Spark Context 를 위한 작업 디렉터리에 Jar파일들이 복사가 되기 때문에 시간이 지날수록 많은 양의 공간을 차지 하게 되는데, Spark standalone을 사용한다면 automatic cleanup을 설정해야한다.( spark.worker.cleanup.appDataTtl property )( YARN에서는 자동으로 cleanup 해준다. )
Loading Configuration from File
SparkConf 에 설정 된는 값(가장 높은 우선 순위 ) -> spark-submit에 전달되는 flags -> default file 의 값들 순의 우선순위로 설정 값이 적용 된다.
spark configuration( default ) 은 conf/spark-defaults.conf 의 옵션을 읽는다.( Spark 설치된 폴더 하위 )
SparkConf 는 코드에 작성 되어 있다.( https://spark.apache.org/docs/latest/configuration.html )
참조
https://spark.apache.org/docs/latest/submitting-applications.html
'Spark & Scala' 카테고리의 다른 글
[ Spark & Scala ] File, Folder 삭제 (0) | 2020.04.06 |
---|---|
GCP Exception - Invalid signature file (0) | 2020.02.17 |
GCP noSuchMethodError 해결 (0) | 2020.02.14 |
scala maven build (0) | 2020.02.14 |
Spark 개발 프로젝트( IntelliJ, Scala, Maven ) (0) | 2020.02.12 |
- Total
- Today
- Yesterday
- Java
- gradle
- JSON
- spring
- Spark
- maven
- plugin
- AWS
- apm
- elasticsearch
- spring boot
- Log
- Linux
- intellij
- mac
- SpringBoot
- JPA
- logstash
- Kibana
- Size
- Filter
- Container
- docker
- scala
- install
- Index
- error
- Git
- tomcat
- Postman
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |