๋ฐ์—”์œผ๋กœ ์„ฑ์žฅ์ค‘ ๐ŸŒฑ

์Šคํ„ฐ๋”” 5

๋น…์ง€๊ธฐ ์Šคํ„ฐ๋”” 5์ฃผ์ฐจ ์ •๋ฆฌ

์งˆ๋ฌธ1) (p211) ์—์„œ๋Š” ์ŠคํŠธ๋ฆฌ๋ฐ ์ฒ˜๋ฆฌ์™€ ๋ฐฐ์น˜์ฒ˜๋ฆฌ๋ฅผ ํ•˜๊ธฐ์œ„ํ•ด์„œ, ๋ฐ์ดํ„ฐ๋ฅผ ๋ฉ”์„ธ์ง€ ๋ธŒ๋กœ์ปค๋กœ ๋จผ์ € ๋„ฃ๋Š” ๊ฒƒ์„ ๋ณผ์ˆ˜ ์žˆ๋Š”๋ฐ์š”, ์ด์™€ ๊ด€๋ จํ•ด์„œ Kafka๋ฅผ ๋งŽ์ด ์“ฐ๋Š”๊ฒƒ์œผ๋กœ ์•Œ๊ณ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทผ๋ฐ, ์ฑ…์—์„œ๋Š” ์ŠคํŠธ๋ฆฌ๋ฐ๊ด€๋ จ๋œ ๋‚ด์šฉ์œผ๋กœ Spark Streaming์„ ์˜ˆ์‹œ๋กœ ๋“ค๊ณ  ์žˆ๋”๋ผ๊ตฌ์š”. ์‹ค์ œ๋กœ ํ˜„์—…์—์„œ ๋ฉ”์„ธ์ง€ ์‹œ์Šคํ…œ์„ ์œ„ํ•ด Spark Streaming์„ ์“ฐ์‹œ๋Š” ๋ถ„์ด ๊ณ„์‹ ์ง€, ๋„์ž…ํ•˜์‹ค๋•Œ ์–ด๋– ํ•œ ์ ์„ ๊ณ ๋ฏผํ•˜์…จ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค! ๋‹ต๋ณ€) ์‹ค์ œ๋กœ ์นดํ”„์นด์™€ ์—ฐ๊ฒฐํ•˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ ๊ตฌ์ถ•ํ•˜๋ ค๊ณ  ํ•˜๋Š” ์ค‘...์ŠคํŠธ๋ฆฌ๋ฐ์ด๋ž‘ ์นดํ”„์นด๋ž‘ ๋‘๊ฐœ๋†“๊ณ  ๋น„๊ตํ•˜๊ธฐ์—” ๋ชฉ์ ์ด ๋‹ค๋ฅด๋‹ค. ์นดํ”„์นด๋กœ ๋ฉ”์‹œ์ง€ ๋ธŒ๋กœ์ปค๋กœ ์Œ“๊ณ  ์ปจ์Šˆ๋จธ๋กœ ๋•ก๊ฒจ๋ฐ›์•„์„œ ์ŠคํŒŒํฌ ์ŠคํŠธ๋ฆฌ๋ฐ์ด ๋ฐ์ดํ„ฐ ๊ฐ€๊ณต์ฒ˜๋ฆฌํ•˜๊ณ  ๋ฉ”์‹œ์ง€ ๋ธŒ๋กœ์ปค๋กœ ๋„˜๊ธฐ๋Š” ์•„ํ‚คํ…์ฒ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ถ„๋“ค์ด ๋งŽ๋‹ค. ๊ทธ๋ž˜์„œ ๋‘๊ฐœ๋ฅผ ๋†“๊ณ  ๋น„๊ตํ•˜๊ธฐ์—”..

๋น…์ง€๊ธฐ ์Šคํ„ฐ๋”” 4์ฃผ์ฐจ ์ •๋ฆฌ

์งˆ๋ฌธ 1) 1. ์‹œ๊ณ„์—ด ๋ฐ์ดํ„ฐ ์ตœ์ ํ™” ๋ฐฉ๋ฒ•(p.154 ~ 160) ์ค‘์—์„œ ํ˜„์—…์— ๊ณ„์‹ ๋ถ„๋“ค์€ ์–ด๋–ค ๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜์‹œ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์ฑ…์—์„œ๋Š” ๋ฐ์ดํ„ฐ ๋งˆํŠธ๋กœ ๋„˜์–ด๊ฐˆ๋•Œ ์ด๋ฒคํŠธ ๋ฐœ์ƒ์‹œ๊ฐ„์„ ๊ธฐ์ค€์œผ๋กœ ์ •๋ ฌํ•˜๋Š”๊ฑธ ๊ฐ€์žฅ ํšจ๊ณผ์ ์ด๋ผ๊ณ  ์„ค๋ช…ํ•˜๋Š”๋ฐ ๋‹ค๋ฅธ๋ถ„๋“ค์€ ์–ด๋–ค์‹์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ๊ณ„์‹œ๋Š”์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. 2. DynamoDB๋Š” p2p ํ˜•์‹์˜ ์•„ํ‚คํ…์ฒ˜๋กœ ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ๋™๋“ฑํ•œ ๊ด€๊ณ„๋ฅผ ์ด๋ฃจ๋Š” ํ˜•ํƒœ(p.163)๋ผ๊ณ  ์ดํ•ด๋ฅผ ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋ฉด ๋ชจ๋“  ๋…ธ๋“œ๊ฐ€ ๋™๊ธฐํ™”๋˜๋Š” ๊ณผ์ •์„ ๊ฑฐ์น˜๊ธฐ ๋•Œ๋ฌธ์— ์ €์žฅ์ฆ‰์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”๋กœ ์กฐํšŒํ•  ์ˆ˜ ์—†์„๊ฒƒ์œผ๋กœ ์ƒ๊ฐ๋ฉ๋‹ˆ๋‹ค(CAP ์ผ๊ด€์„ฑ ์—ฌ๋ถ€). ํ•˜์ง€๋งŒ ์•„๋ž˜ ์‚ฌ์ง„์ฒ˜๋Ÿผ DynamoDB๋Š” Consistency์™€ Partition-Tolerance์˜ ์„ฑ์งˆ์„ ๊ฐ€์ง„๋‹ค๊ณ  ํ‘œ์‹œ๋˜์–ด ์žˆ๋Š”๋ฐ ์ด๋Š” Strongly Cons..

๋น…์ง€๊ธฐ ์Šคํ„ฐ๋”” 3์ฃผ์ฐจ ์ •๋ฆฌ

์งˆ๋ฌธ 1) 1. Hadoop์—์„œ ๋ถ„์‚ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋ฉด Yarn์—์„œ ํด๋Ÿฌ์Šคํ„ฐ ์ „์ฒด์˜ ๋ถ€ํ•˜๋ฅผ ๋ณด๊ณ  ๋น„์–ด์žˆ๋Š” ํ˜ธ์ŠคํŠธ๋ถ€ํ„ฐ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ• ๋‹นํ•œ๋‹ค(p.94)๊ณ  ํ•˜๋Š”๋ฐ ํ•ด๋‹น ๋‚ด์šฉ์ด Yarn ์Šค์ผ€์ค„ ๋ฐฉ์‹ ์ค‘ ํ•˜๋‚˜์ธ Capacity๋ฅผ ์˜๋ฏธํ•˜๋Š” ๊ฑฐ๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋˜๋Š” ๊ฑธ๊นŒ์š”? ๋งž๋‹ค๋ฉด FIFO(queue), Fair ๋ฐฉ์‹์€ ์ž˜ ์“ฐ์ด์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ธ ๊ฒƒ์ธ์ง€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. 2. ์ฑ…์—์„œ๋Š” ๋งˆ์Šคํ„ฐ ํ…Œ์ด๋ธ”์˜ ์ด๋ ฅ์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์Šค๋ƒ…์ƒท ํ…Œ์ด๋ธ”, ์ด๋ ฅ ํ…Œ์ด๋ธ” ์ค‘ ์Šค๋ƒ…์ƒท ํ…Œ์ด๋ธ” ๋ฐฉ์‹์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์ด ๋” ์‰ฝ๋‹ค๊ณ  ์„ค๋ช…ํ•˜๊ณ  ์žˆ๋Š”๋ฐ, ํ˜„์—…์—์„œ๋Š” ์‹ค์ œ๋กœ ์–ด๋–ค์‹์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š”์ง€๊ฐ€ ๊ถ๊ธˆํ•ฉ๋‹ˆ๋‹ค. ์ œ ๊ฐœ์ธ์ ์ธ ์ƒ๊ฐ์œผ๋กœ๋Š” ์Šค๋ƒ…์ƒท, ์ด๋ ฅ ํ…Œ์ด๋ธ” ๋ชจ๋‘๋ฅผ ์ด์ค‘์œผ๋กœ ๊ด€๋ฆฌํ•  ๊ฒƒ ๊ฐ™๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด ์งˆ๋ฌธ๋‚จ๊น๋‹ˆ๋‹ค. ๋‹ต๋ณ€) 1๋ฒˆ์— ๋Œ€ํ•ด ์ฐพ์•„๋ณธ ๊ฒƒ: https://..

๋น…์ง€๊ธฐ ์Šคํ„ฐ๋”” 2์ฃผ์ฐจ ์ •๋ฆฌ

์งˆ๋ฌธ 1) 1.๋น„์ •๊ทœํ™” ํ…Œ์ด๋ธ”์„ ๊ตฌ์„ฑํ•  ๊ฒฝ์šฐ ํ•˜๋‚˜์˜ ํŒฉํŠธ ํ…Œ์ด๋ธ”์ด ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋””๋ฉ˜์ ผ ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜๊ฒŒ๋˜๋ฉด ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ์ง€๋„คํšจ๊ณผ(the-centipede-effect)๋ผ๋Š” ํ˜„์ƒ์ด ๋ฐœ์ƒํ•œ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ, DW ๋ชจ๋ธ๋ง ๊ด€์ ์—์„œ๋Š” ์ด๋Ÿฐ ํ˜„์ƒ์ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒƒ์„ ์ง€์–‘ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ฃผ์š” ๋””๋ฉ˜์ „ ํ…Œ์ด๋ธ”(์ „์‚ฌ ์šด์˜ ์‹œ์Šคํ…œ์—์„œ ๊ณตํ†ต์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” ๋””๋ฉ˜์ „ ํ…Œ์ด๋ธ”)์ด ํ•˜๋‚˜์˜ ํฐ ํŒฉํŠธ ํ…Œ์ด๋ธ”๋กœ ๊ด€๋ฆฌ๊ฐ€ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ ๋””๋ฉ˜์ ผ๋ณ„ ์„ธ๋ถ€์ ์ธ ์†์„ฑ๋“ค์€ ๊ด€๋ฆฌ๊ฐ€ ๋˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋ผ๊ณ  ํ•˜๋”๋ผ๊ณ ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด ๊ณ ๊ฐ ๊ด€๋ฆฌ ๋””๋ฉ˜์ ผ ํ…Œ์ด๋ธ”์˜ ๊ธฐ๋ณธ์ ์ธ ๊ฐ’๋“ค(๋‚˜์ด, ์„ฑ๋ณ„, ๊ตฌ๋งค์ œํ’ˆ)๋งŒ ๊ด€๋ฆฌ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ด์™ธ์— ์„ธ๋ถ€์ ์ธ ์†์„ฑ๋“ค๊นŒ์ง€๋Š” ๊ด€๋ฆฌํ•  ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ˜น์‹œ ์‹ค๋ฌด์—์„œ ๋ชจ๋ธ๋ง์„ ํ•˜์‹œ๊ณ  ๊ณ„์‹œ๋Š” ๋ถ„์ด ์žˆ๋‹ค๋ฉด ์œ„์™€ ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ..

๋น…์ง€๊ธฐ ์Šคํ„ฐ๋”” 1์ฃผ์ฐจ ์ •๋ฆฌ

์งˆ๋ฌธ 1) ์งˆ๋ฌธ1. ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์€ ๋ฒŒํฌ(bulk)ํ˜•๋ฐ์ดํ„ฐ, ์ŠคํŠธ๋ฆฌ๋ฐ(Streaming)ํ˜• ๋ฐ์ดํ„ฐ๋กœ ๊ตฌ๋ถ„๋˜๋Š”๋ฐ ์ŠคํŠธ๋ฆฌ๋ฐํ˜• ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์„ ํ• ๋•Œ Message Queue๋ฅผ ์“ฐ๋Š” Kafka ๋ฅผ ์“ฐ๊ฑฐ๋‚˜, Spark Streaming์„ ์“ฐ๋Š” ๊ธฐ์—…์œผ๋กœ ๊ตฌ๋ถ„๋˜๋Š”๊ฒƒ๊ฐ™์€๋ฐ ๋‘๊ฐœ์˜ ์ฐจ์ด๋Š” ๋ฌด์—‡์ผ๊นŒ์š”?? ์งˆ๋ฌธ2. ๋Œ€๋ถ€๋ถ„์˜ ๋น…๋ฐ์ดํ„ฐํ™˜๊ฒฝ์€ ๋ถ„์‚ฐํ™˜๊ฒฝ์„ ๋ชฉํ‘œ๋กœ ๊ตฌ์ถ•ํ•œ ๊ฒฝ์šฐ๊ฐ€ ๋Œ€๋‹ค์ˆ˜์ธ๊ฒƒ๊ฐ™์€๋ฐ, ๋ฐ์ดํ„ฐ๋ถ„์„์„ ํ• ๋•Œ ์ฃผ๋กœ ์“ฐ๋Š” Pandas, Numpy๋ฅผ ๋ถ„์‚ฐํ™˜๊ฒฝ์—์„œ ์ ์šฉํ• ์ˆ˜๋Š” ์—†์„๊นŒ์š”?? ๋‹ต๋ณ€) ๋‘ ๊ฐœ์˜ ์ฐจ์ด๋Š” ์—ญ์‹œ Queue์˜ ์œ ๋ฌด์ธ๋“ฏ Kafka queue๋Š” ์ผ์ข…์˜ ๋ฒ„ํผ ์—ญํ™œ์ด ๊ฐ€๋Šฅํ•ด์„œ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์žฅ์น˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์ •์‹œ๊ฐ„ queue์—์„œ ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ์Œ(๋ฐ์ดํ„ฐ ๋ฐœ์ƒ ์žฅ์น˜ ๊ณ ์žฅ์‹œ๊ฐ„, ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ ์žฅ์น˜ ๊ณ ์žฅ ์‹œ๊ฐ„ ๋“ฑ) ํŠนํžˆ kafka clus..