software engineering/๋น…๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ 14

[BigData] Hadoop ํ•˜๋‘ก

Hadoop ? ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” JAVA ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ์†Œ์Šค ํ”„๋ ˆ์ž„์›Œํฌ ๋ถ„์‚ฐํŒŒ์ผ(HDFS)์™€ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ชจ๋ธ(MapReduce)์„ ์ œ๊ณต ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ HDFS ํ˜•ํƒœ๋กœ ์ž˜๊ฒŒ ์ชผ๊ฐœ์–ด ์ €์žฅ์‹œ์ผœ ๋†“์€ ๋’ค, MapReduce๋ฅผ ์ด์šฉํ•ด ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ Hadoop์„ ์ด์šฉํ•˜๋ฉด ๋‹ค์ˆ˜์˜ ์ปดํ“จํŒ… ๋…ธ๋“œ๋ฅผ ๋งˆ์น˜ ํ•˜๋‚˜์˜ ์ปดํ“จํ„ฐ์—์„œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ถ„์‚ฐ์‹œ์Šคํ…œ์„ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ๋ฐฐ์น˜ ์ฒ˜๋ฆฌ์— ์ตœ์ ํ™”๋˜์–ด ์„ค๊ณ„๋จ Hadoop ์˜ ์„ค๊ณ„ ์ฒ ํ•™ Fault tolerance (๊ฒฐํ•จ ํ—ˆ์šฉ์„ฑ) ์‹œ์Šคํ…œ ์ˆ˜ํ–‰ ์ค‘ ๊ฒฐํ•จ์ด ๋ฐœ์ƒํ•˜๋”๋ผ๋„, ๊ฒฐํ•จ์„ ๊ทน๋ณตํ•˜๊ณ  ๊ณ„์†์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ค๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ์—ฌ๋Ÿฌ ๊ณณ์— ๋ณต์ œํ•ด๋†“์•„ ํŠน์ • ๋…ธ๋“œ์— ์†์ƒ์ด ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ์ž‘์—…์„ ๊ณ„์†์ ์œผ๋กœ ์ด์–ด๋‚˜๊ฐˆ ์ˆ˜ ์žˆ์Œ Scalability (ํ™•์žฅ์„ฑ) ๋…ธ๋“œ๋ฅผ ํ™•์žฅ..

[BigData] HDFS (Hadoop File System)

HDFS (Hadoop File System) GFS๋ฅผ ๋ชจ๋ธ๋กœ ์„ค๊ณ„ ๋ฌผ๋ฆฌ์  ์‹œ์Šคํ…œ์˜ ์‹คํŒจ๋ฅผ ์†Œํ”„ํŠธ์›จ์–ด ๋ ˆ๋ฒจ์—์„œ ํ•ด๊ฒฐํ•˜์—ฌ, ์‹œ์Šคํ…œ์˜ ๊ฐ€์šฉ์„ฑ์„ ๋†’์ด๋Š” ๋ถ„์‚ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ HDFS์˜ ํŠน์ง• ์ปดํ“จํ„ฐ ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•ด ๋‹ค์ˆ˜์˜ ๋…ธ๋“œ์— ๊ฑธ์ณ ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ ๋ฐ์ดํ„ฐ์˜ ์žฅ์•  ํ—ˆ์šฉ์„ ์œ„ํ•ด ์ค‘๋ณต ํ—ˆ์šฉ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ 3๊ฐœ ๋ณต์ œํ•ด ๋ณต์‚ฌ๋ณธ์„ ๋‘  3๊ฐœ์˜ ๋ธ”๋ก์€ ์„œ๋กœ ๋‹ค๋ฅธ ๋…ธ๋“œ์— ๋ณต์ œ ํŽ˜ํƒ€๋ฐ”์ดํŠธ ์ด์ƒ์˜ ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์„ธํŠธ๋ฅผ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ์Œ -> ์ˆ˜ํ‰์  ํ™•์žฅ ๊ตฌ์กฐ๋กœ ์„ค๊ณ„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ณธ 128MB์˜ ๋ธ”๋ก์œผ๋กœ ๋‚˜๋ˆ” HDFS์˜ ์•„ํ‚คํ…์ณ ๋„ค์ž„๋…ธ๋“œ (ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ด€๋ฆฌ) ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์†ํ•˜๋Š” ํŒŒ์ผ ๊ณ„์ธต ๊ตฌ์กฐ๋‚˜, ๊ฐ ํŒŒ์ผ์˜ ๋ธ”๋ก ์œ„์น˜๋ฅผ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋กœ ์œ ์ง€ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ ‘์† ๊ด€๋ฆฌ ๋ธ”๋ก ๋ฐ์ดํ„ฐ๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ฐ์ดํ„ฐ๋…ธ๋“œ์— ๋งตํ•‘ ๋ฐ์ด..

[BigData] ๋ถ„์‚ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ

๋ถ„์‚ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ : ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ๊ณต์œ ํ•˜๋Š” ์—ฌ๋Ÿฌ ํ˜ธ์ŠคํŠธ ์ปดํ“จํ„ฐ์˜ ํŒŒ์ผ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ฒŒํ•˜๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ ๋Œ€์šฉ๋Ÿ‰์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ํ•œ ๊ณณ์— ์ €์žฅ๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์—ฌ๋Ÿฌ ์‹œ์Šคํ…œ์— ๋‚˜๋ˆ„์–ด์ ธ ๋ถ„์‚ฐ ์ €์žฅ๋จ ๋ฐ์ดํ„ฐ๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ ์šฉ๋Ÿ‰ ๋‹จ์œ„๋กœ ์ผ์ •ํ•˜๊ฒŒ ๋‚˜๋ˆ„์–ด์ง ์ €์žฅํ•ด์•ผํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์–‘์ด ๋งŽ์•„์ ธ๋„ ์ €์žฅ ์žฅ์น˜๋ฅผ ์ˆ˜ํ‰์ ์œผ๋กœ ํ™•์žฅํ•˜์—ฌ ์ €์žฅ ๋Šฅ๋ ฅ์„ ํ‚ค์›Œ๋‚˜๊ฐˆ ์ˆ˜ ์žˆ์Œ ๋ถ„์‚ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ์˜ ํŠน์ง• Scalability : ์ €์žฅ ๊ณต๊ฐ„์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ์Œ Fault tolerance : ์‹œ์Šคํ…œ์˜ ๊ณ ์žฅ์„ ํ—ˆ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ Data consistency : ์‹œ๊ฐ„์ด ์ง€๋‚˜๋„ ๋ฐ์ดํ„ฐ์˜ ์ผ๊ด€์„ฑ์ด ์œ ์ง€๋˜์–ด์•ผํ•จ 1. GFS(Google File System) ๊ตฌ๊ธ€์— ์˜ํ•ด ์ž๊ธฐ ํšŒ์‚ฌ ์‚ฌ์šฉ ๋ชฉ์ ์œผ๋กœ ๊ฐœ๋ฐœ๋œ ๋ถ„์‚ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ ์ผ๋ฐ˜ ์‚ฌ์šฉ ํ•˜๋“œ์›จ์–ด๋ฅผ ..

[BigData] ๋ถ„์‚ฐ์‹œ์Šคํ…œ๊ณผ ๋ฆฌ๋ˆ…์Šค, ๊ฐ€์ƒํ™” ๊ธฐ์ˆ 

01. ๋ถ„์‚ฐ์‹œ์Šคํ…œ ๊ธฐ๋ณธ๊ตฌ์กฐ - ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋„คํŠธ์›Œํฌ๋กœ ์—ฐ๊ฒฐ๋œ ์—ฌ๋Ÿฌ ๋…ธ๋“œ์—์„œ ์ˆ˜ํ–‰ - ์ปดํ“จํŒ… ์ž์› ๊ด€๋ฆฌ์ž์™€ ์‹ค์ œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์›Œ์ปค ๋…ธ๋“œ๋กœ ์กด์žฌ - RPC(Remote Procedure Call) ์„ ํ†ตํ•œ ๋…ธ๋“œ ๊ฐ„ ํ†ตใ…‡์‹  - Server/Client๊ฐ„ ์›๊ฒฉ ํ•จ์ˆ˜ ํ˜ธ์ถœ 02. ๋ฆฌ๋ˆ…์Šค ์šด์˜์ฒด์ œ - ๋‹ค์ค‘ ์‚ฌ์šฉ์ž, ๋‹ค์ค‘ ํ”„๋กœ์„ธ์Šค : ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์‚ฌ์šฉ ๊ฐ€๋Šฅ - ์‰˜ ๋ช…๋ น ๊ธฐ๋ฐ˜ ๋™์ž‘ - ์šฐ์ˆ˜ํ•œ ๋„คํŠธ์›Œํ‚น : ๋ฆฌ๋ˆ…์Šค์—์„œ๋ถ€ํ„ฐ ๋„คํŠธ์›Œํ‚น ์‹œ์ž‘ / FTP, Telnet, WWW ๋“ฑ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ  - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์„œ๋ฒ„, ์Šคํ† ๋ฆฌ์ง€ ๋ฐ ๋„คํŠธ์›Œํฌ ๋“ฑ์˜ ์ปดํ“จํŒ… ๊ธฐ์ˆ ์„ ์ถ”์ƒํ™”ํ•˜์—ฌ ์š”์ฒญํ•œ ๋งŒํผ์˜ ๋ฆฌ์†Œ์Šค๋ฅผ ์„œ๋น„์Šค ํ˜•ํƒœ๋กœ ์ œ๊ณตํ•ด์ฃผ๋Š” ๊ธฐ์ˆ  ์ž์› ๊ฐ€์ƒํ™” ์šด์˜ ์ฒด์ œ ๊ฐ€์ƒํ™” 03. ์ž์› ๊ฐ€์ƒํ™” - ๋ฐ์ดํ„ฐ ์Šคํ† ๋ฆฌ์ง€, ์—ฐ์‚ฐ ์žฅ์น˜, ๋„คํŠธ์›Œํฌ ..