๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Data Engineering

Spark/Hadoop ์ด์šฉํ•  CentOS VM ์„ธํŒ…ํ•˜๊ธฐ

by ํ–‰๋ฑ 2020. 4. 16.

CentOS์—์„œ Spark์™€ Hadoop์„ ์ด์šฉํ•ด ๋น…๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๋Š” ์‹ค์Šต์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ...

VM์„ ์„ธํŒ…ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์ •๋ฆฌํ•œ๋‹ค. ๋Œ์•„๋ณด๋ฉด ๋ณ„ ๊ฑฐ ์•„๋‹Œ๋ฐ ํ•˜๋ฃป๋ฐค์„ ์ƒˆ๊ณ  ๋‚˜์„œ์•ผ ์•Œ๊ฒŒ ๋˜์—ˆ๋‹ค.

 

๋ฏธ๋ฆฌ ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜์ž๋ฉด.. RAM=4GB, Disk=20GB์ด์ƒ, Cores=8๋กœ VM์„ ์„ธํŒ…ํ•˜์ž.

(Cores๋Š” Multi-threading ์ด์šฉํ•  ๊ฒฝ์šฐ)

 

VMWare

์‚ฌ์‹ค Window์—์„œ ์‹ค์Šต์„ ์ง„ํ–‰ํ•ด๋„ ๋๋Š”๋ฐ,

Linux ๊ธฐ๋ฐ˜์œผ๋กœ ํ•ด๋ณด๋Š”๊ฒŒ ๋‚ซ์ง€ ์•Š์„๊นŒ ์‹ถ์–ด์„œ VM์— CentOS๋ฅผ ์˜ฌ๋ฆฌ๊ธฐ๋กœ ํ–ˆ๋‹ค. (CentOS๋Š” ์ฒ˜์Œ ์จ๋ณด๋Š” ๊ฑฐ๊ธฐ๋„ ํ•˜๊ณ ..)

์ต์ˆ™ํ•œ VirtualBox๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ.. ์ด์ƒํ•˜๊ฒŒ (๋ช‡ ๋‹ฌ ์ „๋ถ€ํ„ฐ?) VM์ด ์‹œ์ž‘์ด ์•ˆ ๋˜๊ณ  ์˜ค๋ฅ˜๊ฐ€ ์žˆ์–ด์„œ ๊ฒฐ๊ตญ ํฌ๊ธฐํ–ˆ๋‹ค.

๋ฐœ์ƒํ•œ ์˜ค๋ฅ˜๋Š” ์—ฌ๊ธฐ์„œ ๋‚œ ์˜ค๋ฅ˜๋ž‘ ๊ฐ™์€ ๊ฑด๋ฐ, VirtualBox ๊ตฌ๋ฒ„์ „์„ ๊น”์•„๋„ ์‹ ๋ฒ„์ „์„ ๊น”์•„๋„ ๋˜‘๊ฐ™์ด ์•ˆ ๋๋‹ค.

 

๊ฒฐ๊ตญ VMWare๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ๋กœ ํ•˜๊ณ  CentOS๋ฅผ ์˜ฌ๋ ธ๋‹ค.

์˜ˆ์ „์— ์“ฐ๋˜ ๋…ธํŠธ๋ถ์—์„œ VMWare๊ฐ€ ๋„ˆ๋ฌด ๋Š๋ฆฌ๊ณ  ๋ธ”๋ฃจ์Šคํฌ๋ฆฐ์ด ์ž์ฃผ ๋‚ฌ์–ด์„œ ์ข€ ๊ฑฑ์ •ํ–ˆ๋Š”๋ฐ ์ƒ๊ฐ๋ณด๋‹ค ์„ธํŒ…๋„ ๋น ๋ฅด๊ณ  ์†๋„๋„ ๊ดœ์ฐฎ์•˜๋‹ค.

CentOS์— ๊ฐ•์˜์—์„œ ๊ฐ€๋ฅด์ณ์ฃผ๋Š”๋Œ€๋กœ Spark์™€ Hadoop์„ ๊น”์•˜๋‹ค.

์˜ค๋ž˜ ๊ฑธ๋ฆฌ๊ธด ํ–ˆ์ง€๋งŒ ์„ค๋ช…์ด ์ž˜ ๋˜์–ด ์žˆ์–ด์„œ Spark, Hadoop ๊นŒ๋Š” ๊ฒŒ ๋ฌธ์ œ๋Š” ์•„๋‹ˆ์—ˆ๋‹ค.

 

RAM, Disk ์กฐ์ •๊ธฐ

Spark์™€ Hadoop์„ ๊น”๊ณ  ๋‚˜์„œ ์ฒซ ๋ฒˆ์งธ ์‹ค์Šต์ธ Word Counting Practice๋ฅผ ์ง„ํ–‰ํ–ˆ๋‹ค.

ํ…์ŠคํŠธ ํŒŒ์ผ์— ์žˆ๋Š” ๋‹จ์–ด๊ฐ€ ๊ฐ๊ฐ ๋ช‡ ๋ฒˆ์”ฉ ๋‚˜์˜ค๋Š”์ง€ ์„ธ๋Š” ์‹ค์Šต์ด๊ณ ,

์ฝ”๋“œ๋Š” ์ฃผ์–ด์ ธ์„œ Single/Multi thread์—์„œ ๋น…๋ฐ์ดํ„ฐ๊ฐ€ ๋Œ์•„๊ฐ€๊ฒŒ๋” ํ•˜๋Š” ๊ฒŒ ํฌ์ธํŠธ์˜€๋‹ค.

 

์ผ๋‹จ ํ•œ ๋ฌธ์žฅ์ด ๋“ค์–ด์žˆ๋Š” ์ž‘์€ ํ…์ŠคํŠธ ํŒŒ์ผ์— ๋Œ€ํ•ด์„œ๋Š” MapReduce๊ฐ€ ์ž˜ ์ž‘๋™๋˜์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ ๊ณผ์ œ ๋Œ€์ƒ์ธ ํฐ ํ…์ŠคํŠธ ํŒŒ์ผ๋„ ๋Œ๋ ค๋ดค๋Š”๋ฐ... ๋„ˆ~๋ฌด ๋Š๋ ธ๋‹ค.

 

Map๊ณผ Reduce์˜ ํผ์„ผํŠธ๋Š” ์กฐ๊ธˆ์”ฉ ์˜ฌ๋ผ๊ฐ€๊ธด ํ•˜๋Š”๋ฐ ์ค‘๊ฐ„์ค‘๊ฐ„ ๊ณ„์† ๊ฐ™์€ exception์ด ๋‚ฌ๋‹ค.

๊ทผ๋ฐ ์›ƒ๊ธด ๊ฒŒ ๊ทธ๋ƒฅ ๋‘๋ฉด ์ž๋™์œผ๋กœ ๋‹ค์‹œ ์‹œ์ž‘๋๋‹ค๊ฐ€ ๋‹ค์‹œ exception์ด ๋‚˜๊ณ ๊ฐ€ ๋ฐ˜๋ณต๋๋‹ค.

๊ฐ€๋ น map์ด 30%๊นŒ์ง€ ๋๋‹ค๊ฐ€ exception์ด ๋‚˜๋ฉด map 20%๋ถ€ํ„ฐ ๋‹ค์‹œ ์‹œ์ž‘๋˜๊ณ ,

๊ฑฐ๊ธฐ์„œ ๋‹ค์‹œ map 35%๊นŒ์ง€ ๋๋‹ค๊ฐ€ ๋‹ค์‹œ exception์ด ๋‚˜๋ฉด map 25%๋ถ€ํ„ฐ ์‹œ์ž‘ํ•˜๊ณ  ์ด๋Ÿฐ ์‹์ด์—ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‹ˆ๊นŒ exception์ด ๋‚˜๊ณ  ๋‹ค์‹œ ์‹œ์ž‘๋  ๋•Œ๋งˆ๋‹ค ์‹œ์ž‘์ ์ด ์˜ฌ๋ผ๊ฐ”๋‹ค.

๊ทธ๋ž˜์„œ ์‚ฌ์‹ค ํฌ๋ง๊ณ ๋ฌธ ๋‹นํ•ด์„œ ๊ณ„์† ๊ทธ๋ƒฅ ๋’€์—ˆ๋‹ค.

 

Exception ๋‚ด์šฉ์„ ์ฐพ์•„๋ณด๋‹ˆ

java.lang.runtimeexception pipemapred.waitoutputthreads() subprocess failed with code 137

๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ•˜๋‹จ๋‹ค.

 

์™œ ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋ถ€์กฑํ• ๊นŒ ๋˜์งš์–ด๋ณด๋‹ˆ..

์ฒ˜์Œ VM์„ ๋งŒ๋“ค ๋•Œ ๊ธฐ๋ณธ ์„ค์ • ํ™”๋ฉด์—์„œ๋Š” ๋””์Šคํฌ ์šฉ๋Ÿ‰๋งŒ ์„ค์ •ํ•˜๊ฒŒ ๋˜์–ด์žˆ๊ณ , ๋”ฐ๋กœ ๊ณ ๊ธ‰ ์ฐฝ์— ๊ฐ€์•ผ RAM์„ ์กฐ์ ˆํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ๊ฐ•์˜์—์„œ ๋‹ค๋ฃฌ ์ฃผ์˜ ์‚ฌํ•ญ์€ ๋””์Šคํฌ ์šฉ๋Ÿ‰์„ 20GB ์ด์ƒ์œผ๋กœ ์žก์œผ๋ผ๋Š” ๊ฒƒ ๋ฟ์ด์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ ์•„๋ฌด ์ƒ๊ฐ ์—†์ด ๋””ํดํŠธ์ธ RAM 1GB๊ฐ€ ์žกํžŒ ๊ฒƒ์ด๋‹ค..^^

์ด๊ฑธ ํ™•์ธํ•˜๊ณ  ๋‚˜๋‹ˆ ๋ฏธ๋ จ ์—†์ด VM์„ ๊ฐ•์ œ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.

 

์ข…๋ฃŒ ํ›„ RAM์„ 4GB๋กœ ์˜ฌ๋ฆฌ๊ณ  ๋””์Šคํฌ๋„ ํ˜น์‹œ ๋ชฐ๋ผ 50GB๋กœ ํ†ต ํฌ๊ฒŒ ์˜ฌ๋ ค๋ฒ„๋ ธ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ์‹œ๋„ํ•ด๋ดค๋Š”๋ฐ ์ด์ƒํ•˜๊ฒŒ๋„

$> sudo $HADOOP_HOME/bin/hadoop dfsadmin -safemode leave

๋กœ safemode๋ฅผ ํ•ด์ œํ–ˆ๋Š”๋ฐ (์ € ์ปค๋งจ๋“œ์˜ ๊ฒฐ๊ณผ๋กœ safemode๊ฐ€ ํ•ด์ œ๋˜์—ˆ๋‹ค๊ณ  ๋‚˜์™”์Œ)

๋‹ค๋ฅธ ์ปค๋งจ๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด safemode๋ผ์„œ ์•ˆ ๋œ๋‹ค๊ณ  ๋‚˜์™”๋‹ค. ใ…Žใ…Ž..

์ œ๋Œ€๋กœ Spark๋ฅผ ์ข…๋ฃŒ ์•ˆํ•˜๊ณ  VM ์ž์ฒด๋ฅผ ๊ฐ•์ œ ์ข…๋ฃŒํ•œ ๊ฒƒ ๋•Œ๋ฌธ์ธ ๋“ฏ ํ–ˆ๋‹ค.

๋ฐ๋“œ๋ผ์ธ์€ ๋‹ค๊ฐ€์˜ค๊ณ  ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒŒ ์—„๋‘๊ฐ€ ์•ˆ๋‚˜์„œ ๊ฒฐ๊ตญ ํ•˜๋ฃจ ์ข…์ผ ์„ธํŒ…ํ•œ VM์„ ์‚ญ์ œํ•˜๊ณ  ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ธฐ๋กœ ํ–ˆ๋‹ค. ใ…Žใ…Ž..

 

Cores ์กฐ์ •๊ธฐ

๊ทธ๋ž˜์„œ VM์„ ์ƒˆ๋กœ ์„ธํŒ…ํ•  ๋•Œ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ RAM 4GB, ๋””์Šคํฌ 40GB๋กœ ์žก์•˜๋‹ค.

์ง„์งœ ์•„๋‹ˆ๋‚˜ ๋‹ค๋ฅผ๊นŒ.. ์ „์ฒด์ ์œผ๋กœ ๋„ˆ๋ฌด ๋นจ๋ผ์กŒ๋‹ค.

์ด์ „ VM์—์„œ Spark์™€ Hadoop์„ ๋‹ค์šด ๋ฐ›๋Š”๋ฐ๋งŒ 10~20๋ถ„ ์ •๋„ ๊ฑธ๋ ธ์—ˆ๋Š”๋ฐ 1~2๋ถ„ ์ •๋„ ๋ฐ–์— ์•ˆ ๊ฑธ๋ ธ๋‹ค.

RAM์ด ์ง„์งœ ์ค‘์š”ํ•œ ๊ฑฐ๊ตฌ๋‚˜.. ์‹ค๊ฐํ–ˆ๋‹ค.

์—ฌํŠผ ์‹œ๊ฐ„๋„ ์—†๊ณ  ๋งˆ์Œ์ด ๊ธ‰ํ•ด์„œ ์ปค๋งจ๋“œ๋ฅผ ๋ณต๋ถ™ํ•ด๊ฐ€๋ฉฐ 1์‹œ๊ฐ„ ๋งŒ์— Spark์™€ Hadoop ์„ค์น˜ ๋ฐ ์„ธํŒ…์„ ๋๋ƒˆ๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ์ž‘์€ ํ…์ŠคํŠธ ํŒŒ์ผ๋กœ ์‹คํ—˜ํ•œ ํ›„ ์ž˜ ๋˜์„œ ํฐ ํ…์ŠคํŠธ ํŒŒ์ผ์„ ์‹ฑ๊ธ€ ์ฝ”์–ด๋กœ ๋Œ๋ ค๋ดค๋‹ค.

์ •๋ง ๋‹คํ–‰ํžˆ๋„.. ์ง€๊ธ‹์ง€๊ธ‹ํ•œ 137 exception์ด ์•ˆ ๋‚ฌ๋‹ค.

๊ธฐ๋ณธ์ ์œผ๋กœ ์†๋„๋„ ๋” ๋นจ๋ž๊ณ  ์ค‘๊ฐ„ ์ค‘๊ฐ„ exception์ด ์•ˆ ๋‚˜๋‹ˆ๊นŒ ํ›จ์”ฌ ๋นจ๋ฆฌ ๋๋‹ค.

๊ทธ๋ž˜์„œ ์‹ฑ๊ธ€ ์ฝ”์–ด๋กœ 27๋ถ„ ์ •๋„๊ฐ€ ๊ฑธ๋ ธ๋‹ค.

๋„ˆ๋ฌด ๊ธฐ๋ป์„œ ๋ฉ€ํ‹ฐ ์ฝ”์–ด(8๊ฐœ)๋กœ ๋Œ๋ ค๋†“๊ณ  ์•„์นจ์ด ๋˜์„œ์•ผ ์ž ๋“ค์—ˆ๋‹ค.

 

์ผ์–ด๋‚˜๋ณด๋‹ˆ ๊ฒฐ๊ณผ ํŒŒ์ผ์€ ์ž˜ ๋‚˜์˜จ ๊ฒƒ ๊ฐ™์€๋ฐ (part-00000๋ถ€ํ„ฐ part-00007, _SUCCESS ํŒŒ์ผ์ด ์•„์›ƒํ’‹ ํด๋”์— ์ƒ๊ฒผ์Œ)

์ด์ƒํ•˜๊ฒŒ ๊ฑธ๋ฆฐ ์‹œ๊ฐ„์ด ์‹ฑ๊ธ€ ์ฝ”์–ด๋ž‘ ๋˜‘๊ฐ™์•˜๋‹ค.

์ง€์› ๋˜ VM์—์„œ Core ์ˆ˜๋ฅผ 1๊ฐœ๋กœ ์„ค์ •ํ–ˆ์—ˆ๋Š”๋ฐ (์ž‘์€ ํ…์ŠคํŠธ ํŒŒ์ผ์„) ๋ฉ€ํ‹ฐ ์ฝ”์–ด๋กœ ๋Œ๋ฆฌ๋ฉด part-00000๋ถ€ํ„ฐ part-00007, _SUCCESS ํŒŒ์ผ์ด ์ž˜ ์ƒ๊ธฐ๊ธธ๋ž˜ ์•Œ์•„์„œ ํ˜ธ์ŠคํŠธ๋ž‘ ์™”๋‹ค๊ฐ”๋‹ค ํ•˜๋ฉด์„œ ์ˆ˜ํ–‰ํ•ด์ฃผ๋‚˜๋ณด๋‹ค ์‹ถ๊ธฐ๋„ ํ–ˆ๊ณ ,

์ฐพ์•„๋ณด๋‹ˆ VM์— 2๊ฐœ ์ด์ƒ Core ์ˆ˜๋ฅผ ํ• ๋‹นํ•  ๋•Œ๋Š” ์ฃผ์˜ํ•˜๋ผ๋Š” ๊ธ€์ด ์žˆ์–ด์„œ ์ƒˆ๋กœ VM์„ ์„ค์น˜ํ•  ๋•Œ๋„ ๊ทธ๋ƒฅ 1๊ฐœ๋กœ ์„ค์ •ํ–ˆ์—ˆ๋Š”๋ฐ.. ์ด๊ฒŒ ๋ฌธ์ œ ๊ฐ™์•˜๋‹ค.

์นจ์ฐฉํ•˜๊ฒŒ dfs์™€ yarn์„ ๋„๊ณ  VM์„ ๋ˆ ๋‹ค์Œ Core ์ˆ˜๋ฅผ 8๊ฐœ๋กœ ๋Š˜๋ ธ๋‹ค.

 

Core ์ˆ˜๋ฅผ ์˜ฌ๋ ค๋„ ์—๋Ÿฌ๊ฐ€..

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ์‹คํ—˜ํ•ด๋ณด๋‹ˆ ๋ฉ€ํ‹ฐ ์ฝ”์–ด๋กœ ๋Œ๋ฆฌ๋ฉด ๋˜ ์ƒˆ๋กœ์šด ์—๋Ÿฌ๊ฐ€ ๋‚ฌ๋‹ค. ใ…Žใ…Ž..

container killed on request. exit code is 143

์—๋Ÿฌ๊ฐ€ ๋‚ฌ๋Š”๋ฐ Stackoverflow์— ์ฐพ์•„๋ณด๋‹ˆ

Exit code 143 is related to Memory/GC issues. Your default Mapper/reducer memory setting may not be sufficient to run the large data set. Thus, try setting up higher AM, MAP and REDUCER memory when a large yarn job is invoked.

๋ผ๊ณ  ํ•œ์ˆจ ๋‚˜์˜ค๋Š” ์„ค๋ช…์ด ๋‚˜์™”๋‹ค.

 

ํ•ด๊ฒฐ๋ฐฉ๋ฒ•์„ ์ฐพ๋‹ค๊ฐ€ VMWare ์‚ฌ์ดํŠธ์— ์žˆ๋Š” ๊ด€๋ จ ๊ธ€์„ ์ฐพ์•˜๋‹ค.

์š”์•ฝํ•˜์ž๋ฉด ๋ฐ์ดํ„ฐ์…‹ ํฌ๊ธฐ๊ฐ€ ์ปค์ง€๋Š”๋ฐ ๋””ํดํŠธ ๋ฉ”๋ชจ๋ฆฌ์ธ 2GB๋ฅผ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด์„œ ํ„ฐ์ง„๋‹ค๋Š” ๋ง์ด์—ˆ๋‹ค.

๊ทธ๋ž˜์„œ yarn-site.xml์—์„œ yarn.app.mapreduce.am.resource.m property๋ฅผ ๋ฐ”๊พธ๋ผ๋Š”๋ฐ...

์ฐธ๊ณ ํ•˜๋ผ๊ณ  ์ค€ ๋งํฌ๋ฅผ ๋ด๋„ value๋ฅผ ๋ช‡์œผ๋กœ ํ•ด์•ผํ•  ์ง€... ๊ฐ์ด ์•ˆ ์™”๋‹ค.

 

๊ทธ๋ž˜์„œ ์‚ด์ง ์•ผ๋งค๊ฐ™์ง€๋งŒ ๊ฒฐ๊ตญ ์ด ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ

yarn-site.xml์„ ์ˆ˜์ •ํ•ด ๊ฐ€์šฉ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์ฒดํฌํ•˜๋Š” (?) ๊ฒƒ ์ž์ฒด๋ฅผ false๋กœ ๋งŒ๋“ค์—ˆ๋‹ค.

๋„ˆ๋ฌด ๋‹คํ–‰ํžˆ ์—๋Ÿฌ ์—†์ด ์ž˜ ๋˜์—ˆ๊ณ  ์‹œ๊ฐ„๋„ ๋ฉ€ํ‹ฐ ์ฝ”์–ด 9๋ถ„ ๋Œ€๋กœ ๋‚ฉ๋“ํ•  ๋งŒํ•œ ์‹œ๊ฐ„์ด ๋‚˜์™”๋‹ค.

 

๋งˆ๋ฌด๋ฆฌํ•˜๋ฉฐ

์ฒ˜์Œ๋ถ€ํ„ฐ RAM๊ณผ Core๋ฅผ ์ž˜ ์„ค์ •ํ–ˆ์œผ๋ฉด.. ์ด๋ ‡๊ฒŒ ๊ฐœ๊ณ ์ƒ์€ ์•ˆ ํ–ˆ์„ํ…๋ฐ..ใ… ใ… 

๋‹ค์Œ ๊ณผ์ œ์—์„œ๋Š”.. ์—๋Ÿฌ๊ฐ€ ์•ˆ ๋‚˜๊ธธ..ใ… ใ… 

 

๊ทธ๋ฆฌ๊ณ  Hadoop ๋Œ ๋•Œ

sudo $HADOOP_HOME/sbin/stop-all.sh

๋กœ dfs์™€ yarn์„ ๊ผญ ๋„์ž!

์•ˆ ๋„๋ฉด ๋‹ค์Œ์— ์ผค ๋•Œ safe mode๊ฐ€ ์ž‘๋™๋œ๋‹ค..

 

๊ทธ๋ฆฌ๊ณ  ์‹œ์ž‘ํ•  ๋•Œ๋Š”

sudo $HADOOP_HOME/sbin/start-dfs.sh
sudo $HADOOP_HOME/sbin/start-yarn.sh

๋กœ ์‹œ์ž‘..!

 

์•„์›ƒํ’‹ ํŒŒ์ผ์„ ๋กœ์ปฌ๋กœ ๊บผ๋‚ด์˜ฌ ๋•Œ๋Š” put๊ณผ ๋ฐ˜๋Œ€์ธ get์„ ์ด์šฉํ•˜๋ฉด ๋œ๋‹ค.

sudo $HADOOP_HOME/bin/hdfs dfs -get <path-of-hdfs> <path-of-local>

์ฒ˜๋Ÿผ ์ด์šฉํ•˜๋ฉด ๋œ๋‹ค. ์ด ๋ธ”๋กœ๊ทธ๋ฅผ ์ฐธ๊ณ ํ–ˆ๋‹ค.

๋Œ“๊ธ€