spark
Definition
์์ฑํ ์ฝ๋๋ฅผ Spark์์ ์คํํ๋ ๋ ธ๋์ด๋ค. [Flow๊ตฌ์ฑ]๋ ธ๋ ์ค [spark]๋ ธ๋๋ฅผ drag & drop ํ ํ Property ํญ๋ชฉ์ ์ ๋ ฅํ๋ค. Property ํจ๋์ [๋๋ณด๊ธฐ+] ๋ฒํผ์ ๋๋ฅด๋ฉด ์ ๋ ฅ๊ฐ๋ฅํ ์ ์ฒด Property ํญ๋ชฉ์ ๋ณผ ์ ์๋ค.
Set
[setting], [scheduler], [parameter] ์ค์ ์ [์ํฌํ๋ก์ฐ ์์ฑ] > [์ค์ ]์ ์ฐธ๊ณ ํ๋ค.
property
[Node Description] ์์ฑ ์ค์ธ ๋ ธ๋๋ช ์ ๋ ฅ
prepare : ๋ ธ๋ ์คํ ๊ฒฐ๊ณผ๋ฅผ HDFS์ ์ ์ฅํ๊ธฐ ์ํด ํ์ผ์ญ์ /ํด๋์์ฑ ์์ ์ ์ํ(์ํฌํ๋ก์ฐ ๋ฐ๋ณต์คํ ์ ํ์ฉ๊ฐ๋ฅ)
- delete : ๋ ธ๋ ์คํ ์ ์ญ์ ํ ํด๋/ํ์ผ ๊ฒฝ๋ก
- mkdir : ๋ ธ๋ ์คํ ์ ์์ฑํ ํด๋ ๊ฒฝ๋ก
file : ๋ ธ๋์์ ์ฌ์ฉํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๊ฒฝ๋ก๋ฅผ ์ค์
archive : archive๊ฒฝ๋ก๋ฅผ ์ค์
retry
- max : ์คํ ์คํจ ์ ์ฌ์๋ ํ์
- period : ์ฌ์๋ ์ฃผ๊ธฐ(๋ถ ๋จ์)
property : ์คํ์ ์ฌ์ฉํ property (key, value) ์ ๋ ฅ
master : ์ฌ์ฉํ spark url ์ ๋ ฅ(DHP์์ ์์ฑํ ํด๋ฌ์คํฐ ์ฌ์ฉ์ yarn ์ ๋ ฅ)
mode : spark ์คํ ๋ชจ๋(client, cluster) ์ ๋ ฅ(DHP์์ ์์ฑํ ํด๋ฌ์คํฐ ์ฌ์ฉ์ client ์ ๋ ฅ)
deploy-mode ์ค๋ช client driver program์ ๋ก์ปฌ์์ ์คํ cluster driver program์ ์์ปค ๋ชจ์ ์ค ํ๋์์ ์คํ name : spark ์ ํ๋ฆฌ์ผ์ด์ ๋ช
jar : ์คํํ python(py), jar ๋ฑ์ ๊ฒฝ๋ก ์ ๋ ฅ
sparkOpts : spark ์คํ์ ์ฌ์ฉํ ์ต์ ์ ๋ณด ์ ๋ ฅ(key, value)
key values ์ค๋ช --driver-cores 1 spark driver์์ ์ฌ์ฉํ core ์ ์ง์ --driver-memory 1024m spark driver์์ ์ฌ์ฉํ memory ์ง์ --executor-cores 1 executor์์ ์ฌ์ฉํ core ์ ์ง์ --executor-memory 1g executor์์ ์ฌ์ฉํ memory ์ง์ --num-executors 1 ์คํํ executor ์ ์ง์ --queue default job์ ์ ์ถํ yarn queue ์ด๋ฆ ์ง์ --conf PROP=VALUE ์์์ spark ํ๊ฒฝ์ค์ ์์ฑ๊ฐ ์ง์
[Note] ์๋ ๋ด์ฉ์ฐธ๊ณ
https://spark.apache.org/docs/latest/running-on-yarn.html
- argument : python code ์คํ์ ์ ๋ฌํ argument
- jobXml : jobXml ๊ฒฝ๋ก ์ ๋ ฅ. ์ก์ ์ ๋ฌํ ํ๋กํผํฐ๋ฅผ ๋ณ๋ xml ๋ก ์์ฑํ์ฌ ์ ๋ฌ๊ฐ๋ฅ
- forceOK : ๋ฐ์ดํฐ ์ฒ๋ฆฌ๊ฐ ์คํจํด๋ ์ ์์ผ๋ก ํ์ํ๊ณ ์ข ๋ฃ
Example
์ ๋ ฅ๋ฐ์ ์ซ์์ ํ๊ท ์ ๊ตฌํ๋ basicavg.py ํ์ผ์ spark์์ ์คํํ๋ ์์ ์ด๋ค.
์ํฌํ๋ก์ฐ ์คํ ํด๋ฌ์คํฐ์ basicavg.py ํ์ผ์ ์ ์ฌํ๋ค.
[Flow๊ตฌ์ฑ] > [spark] ๋ ธ๋๋ฅผ drag & drop ํ ํ setting ํจ๋์์ ์คํํด๋ฌ์คํฐ๋ฅผ ์ ํํ๋ค.
property ํจ๋์์ ์๋์ ๊ฐ์ด ์ ๋ ฅํ๋ค.
2.file ํญ๋ชฉ์ hdfs๋ธ๋ผ์ฐ์ ์์ basicavg.py์ด ์ ์ฅ๋ ๊ฒฝ๋ก๋ฅผ ์ ํํ๋ค.
๊ทธ ์ธ ํญ๋ชฉ์ ์๋์ ๊ฐ์ด ์ ๋ ฅํ๋ค.
property value 6.master yarn 7.mode client 9.jar basicavg.py 10.sparkOpts : ์ ๋งค๋ด์ผ ์ค property ํญ๋ชฉ์ ์ฐธ๊ณ ํ์ฌ ์ ๋ ฅํ๋ค. ๋ณธ ์์ ์์๋ driver-memory, conf ์ต์ ์ ์ฌ์ฉํ๋ค.
key value --driver-memory 2G --conf spark.executor.extraJavaOptions=-Xms512m -Xmx1024m