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 [10. sparkOpts] ์ต์ ์ค๋ช ํญ๋ชฉ ์ฐธ๊ณ )
key value --driver-memory 2G --conf spark.executor.extraJavaOptions=-Xms512m -Xmx1024m