๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋กํ•˜์ด๋ธŒ (4)

data_lab

[Hive] ํ•˜์ด๋ธŒ ๋ช…๋ น์–ด ์ •๋ฆฌ/ Hive ๋ช…๋ น์–ด ์ •๋ฆฌ

HIVE ํ…Œ์ด๋ธ” ๊ด€๋ฆฌ HIVE ํ…Œ์ด๋ธ” 1. ๋ฐ์ดํ„ฐ๋ฅผ HIVE ํ…Œ์ด๋ธ”๋กœ ๊ฐ€์ ธ์˜ค๋ฉด? HiveQL, ํ”ผ๊ทธ, ์ŠคํŒŒํฌ ๋“ฑ์„ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌ > ์ƒํ˜ธ์šด์˜ ๋ณด์žฅ 2. HIVE๊ฐ€ ์ง€์›ํ•˜๋Š” ํ…Œ์ด๋ธ” ์ข…๋ฅ˜ - ๋‚ด๋ถ€ ํ…Œ์ด๋ธ” : HIVE๊ฐ€ ๊ด€๋ฆฌ, HIVE/ ๋ฐ์ดํ„ฐ์›จ์–ดํ•˜์šฐ์Šค์— ์ €์žฅ, ๋‚ด๋ถ€ํ…Œ์ด๋ธ” ์‚ญ์ œ ์‹œ ๋ฉ”ํƒ€์ •์˜์™€ ๋ฐ์ดํ„ฐ๊นŒ์ง€ ์‚ญ์ œ๋จ, ORC๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ €์žฅ๋˜์–ด ๋น„๊ต์  ๋น ๋ฅธ ์„ฑ๋Šฅ - ์™ธ๋ถ€ ํ…Œ์ด๋ธ” : ํ•˜์ด๋ธŒ๊ฐ€ ์ง์ ‘ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์Œ, ํ•˜์ด๋ธŒ์˜ ๋ฉ”ํƒ€์ •์˜๋งŒ ์‚ฌ์šฉํ•˜์—ฌ ์›์‹œ ํ˜•ํƒœ๋กœ ์ €์žฅ๋œ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผ ์™ธ๋ถ€ ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•ด๋„ ํ…Œ์ด๋ธ” ๋ฉ”ํƒ€ ์ •์˜๋งŒ ์‚ญ์ œ๋˜๊ณ  ๋ฐ์ดํ„ฐ๋Š” ์œ ์ง€๋จ. ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ ํ•˜์ด๋ธŒ ์™ธ๋ถ€์— ์ ์žฌ ๋˜์–ด์žˆ๊ฑฐ๋‚˜ ํ…Œ์ด๋ธ”์ด ์‚ญ์ œ๋˜๋”๋ผ๋„ ์›๋ณธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚จ์•„ ์žˆ์–ด์•ผํ•  ๋•Œ ์‚ฌ์šฉ 3.csv ํŒŒ์ผ์„ ํ•˜์ด๋ธŒ ํ…Œ์ด๋ธ”๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ 1...

ํ•˜์ด๋ธŒ๋ž€?

RDBMS ์Šคํ‚ค๋งˆ์— ์˜์กด์„ฑ ๊ฐ•ํ•จ ์œผ๋กœ ์ž‘์—…์ด ์ง„ํ–‰ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Œ - ์Šคํ‚ค๋งˆ๊ฐ€ ์ œ๋Œ€๋กœ ์ •์˜๋˜์–ด ์žˆ์ง€์•Š๊ฑฐ๋‚˜ - ์ฟผ๋ฆฌ๋ฅผ ํ†ตํ•œ ์งˆ์˜๊ฐ€ ์Šคํ‚ค๋งˆ์— ๋งž์ง€ ์•Š์„ ๊ฒฝ์šฐ ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ๋ถ€์ ์ ˆํ•จ โ€“ ๋งŽ์€ ์‹œ๊ฐ„ ์†Œ์š”๋จ HIVE ๋ฐ์ดํ„ฐ์›จ์–ด ํ•˜์šฐ์ง• ์ธํ”„๋ผ ๋ฐ์ดํ„ฐ ์ €์žฅ, ์ฒ˜๋ฆฌ์— ์Šคํ‚ค๋งˆ ๊ฒ€์ฆ ์—†์Œ ์Šคํ‚ค๋งˆ์— ๋งž์ง€ ์•Š๋Š” ์ฟผ๋ฆฌ๋Š” null ๋ฆฌํ„ด SQL๊ณผ ์œ ์‚ฌํ•œ HiveQL ์‚ฌ์šฉ MapReduce ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑ ๋Œ€์‹  ์ฟผ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค ์„œ๋น„์Šค ์ œ๊ณต ์ฟผ๋ฆฌ ์‹คํ–‰ ์‹œ MapReduce ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ „ํ™˜๋˜์–ด ๊ฒฐ๊ณผ ์ƒ์„ฑ ๋น„ ์ •ํ˜•ํ™”๋œ ์ž…๋ ฅ ์†Œ์Šค ๋ถ„์„์—๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ HIVE Architecture -HIVE Client -JDBC ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์› , -Thrift ๊ธฐ๋ฐ˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์›(์„œ๋กœ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์‹  ํ”„๋กœํ† ์ฝœ..

ํ•˜๋‘ก์ด๋ž€?

ํ•˜๋‘ก์— ๋“ค์–ด๊ฐ€๊ธฐ ์•ž์„œ ๋น…๋ฐ์ดํ„ฐ๊ฐ€ ๋ญ”์ง€ ์•Œ์•„๋ณด๋ ค ํ•œ๋‹ค. ๋น…๋ฐ์ดํ„ฐ๋ž€ ? ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ฆฌ ๋„๊ตฌ ๋ฐฉ๋ฒ•์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์—†๋Š” ๊ทœ๋ชจ๋กœ ๋ณต์žกํ•œ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค๋Š” OLTP์„ฑ์œผ๋กœ ๋น ๋ฅด๊ณ  ์ •ํ™•ํ•˜๋‹ค. ๋น…๋ฐ์ดํ„ฐ๋Š” ์ •ํ™•์„ฑ์— ์ดˆ์ ์„ ๋‘๊ธฐ๋ณด๋‹ค๋Š” ๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์‚ฐ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ์— ์ดˆ์ ์„ ๋‘๊ณ  ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ pk, update๋“ฑ ์•ˆ๋˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ƒˆ๋กœ putํ•ด์•ผ ํ•œ๋‹ค. ๋น…๋ฐ์ดํ„ฐ 3V Volume ๋Œ€๊ทœ๋ชจ์˜ ํฌ๊ธฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. (๊ธฐ์—…๋งˆ๋‹ค ์ฐจ์ด๋Š” ์žˆ์ง€๋งŒ ์ˆ˜์‹ญํ…Œ๋ผ๋ฐ”์ดํŠธ๋ถ€ํ„ฐ ์ˆ˜์‹ญํŽ˜ํƒ€๋ฐ์ดํ„ฐ ์ด์ƒ) Variety ์กด์žฌํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ๋ฐฉ์‹์ด ๋‹ค์–‘ํ•˜๋‹ค. ์ •ํ˜• : ์˜๋ฏธ ํŒŒ์•…ํ•˜๊ธฐ ์‰ฌ์šฐ๋ฉฐ ๊ทœ์น™์ ์ธ ๋ฐ์ดํ„ฐ ๋ฐ˜์ •ํ˜•: HTML, XML,JSON ํ˜•ํƒœ๋กœ ํ•œ ํ…์ŠคํŠธ์— column, value ๊ฐ™์ด ๋น„์ •ํ˜•:ํ…์ŠคํŠธ, ์Œ์„ฑ, ์˜์ƒ ..