๋ฐ˜์‘ํ˜•

์ฃผํ‚คํผ๋ž€ ๋ถ„์‚ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ๋ถ„์‚ฐ ์ฝ”๋””๋„ค์ด์…˜์ด๋‹ค.

 

znode(์ €๋„๋…ธ๋“œ)๊ฐ€ ๊ฐ๊ฐ์˜ ์„œ๋ฒ„์— ์œ„์น˜ํ•ด ์žˆ๋‹ค.

๊ฐ ํ•˜๋‘ก์˜ ์„œ๋น„์Šค๋“ค์ด ์ž˜ ๋™์ž‘ํ•˜๊ณ  ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.

์ฃผ๊ธฐ์ ์œผ๋กœ ํ•˜ํŠธ๋น„ํŠธ ์š”๊ตฌํ•˜์—ฌ ๋ฐ›๋Š” ๋ฐฉ์‹์œผ๋กœ,

 

๋”ฐ๋ผ์„œ ์ฃผ๊ธฐํผ๋Š” ํ™€์ˆ˜๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š”๋ฐ

์—ฌ๊ธฐ์„œ ๋“ค์–ด๊ฐ€๋Š” ๊ฐœ๋…์ด ์ฟผ๋Ÿผ์ด๋‹ค.

 

์ฟผ๋Ÿผ์ด๋ž€? 

๋‹ค์ˆ˜๊ฒฐ๋กœ ์˜ˆ๋ฅผ ๋“ค์–ด 5๊ฐœ์˜ ์„œ๋ฒ„๋กœ ๊ตฌ์„ฑ ๋˜์–ด์žˆ๊ณ ,

2๊ฐœ์˜ ์„œ๋ฒ„๊ฐ€ ์ฃฝ๋Š”๋‹ค๊ณ  ๊ฐ€์ •ํ–ˆ์„ ๋•Œ ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค๊ณ  ํŒ๋‹จํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  5๊ฐœ ์ค‘ 3๊ฐœ์˜ ์„œ๋ฒ„๊ฐ€ ์ฃฝ์—ˆ์„ ๊ฒฝ์šฐ, ๋‹ค์ˆ˜๊ฒฐ๋กœ ์ธํ•ด ๋น„์ •์ƒ์ด๋ผ๊ณ  ํŒ๋‹คํ•œ๋‹ค.

๊ทธ๋กœ ์ธํ•ด, ์ฃผํ‚คํผ๋Š” ํ™€์ˆ˜๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค.

 

zookeeper ํด๋Ÿฌ์Šคํ„ฐ๋Š”

ํ•˜๋‚˜์˜ ์„œ๋ฒ„๊ฐ€ ๋ฆฌ๋”์ด๊ณ , ๋‹ค๋ฅธ ์„œ๋ฒ„๋Š” ํŒ”๋กœ์›Œ์ด๋‹ค

๋ฆฌ๋” ์„œ๋ฒ„๋ฅผ ๊ธฐ์ค€์œผ๋กœ sync๋ฅผ ๋งž์ถ˜๋‹ค.

 

์ž์„ธํ•œ ๋‚ด์šฉ์€ ๊ณต์‹ ์‚ฌ์ดํŠธ ์ฐธ์กฐ๋ฐ”๋žŒ

 

์ฃผํ‚คํผ ์„ค์น˜ ๋ฐฉ๋ฒ•

์ฃผํ‚คํผ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ํ›„ ์••์ถ• ํ•ด์ œ ํ›„ ํ…Œ์ŠคํŠธ

1
2
3
4
wget https://mirror.navercorp.com/apache/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9.tar.gz
tar xvzf apache-zookeeper-3.5.9.tar.gz
cd bin/zkCli.sh -server 127.0.0.1:2181
./zkCli.sh -server 127.0.0.1:2181
cs

 

์ฃผํ‚คํผ conf์—์„œ zoo.cfg ํŒŒ์ผ ์ƒ์„ฑ

1
2
3
4
5
6
$ vi $ZOOKEEPER_HOME/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/userDIr/zookeeper
clientPort=2181
cs

 

์ฃผํ‚คํผ ์‹คํ–‰

1
bin/zkServer.sh start
cs

 

jps๋กœ ์ฃผํ‚คํผ ์‹คํ–‰ ์ค‘์ธ์ง€ ํ™•์ธ

1
2
3
jps
-------------------
Quorumpeermain
cs

netstat -nltp | grep 2181๋กœ ์ฃผํ‚คํผ ํ™•์ธํ•˜๊ธฐ

 

 

์ฃผํ‚คํผ์˜ ํฌํŠธ๋ฒˆํ˜ธ๋Š” zoo.cfg ํŒŒ์ผ์—์„œ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋‹ค.

728x90
๋ฐ˜์‘ํ˜•
๋ฐ˜์‘ํ˜•

RDBMS

์Šคํ‚ค๋งˆ์— ์˜์กด์„ฑ ๊ฐ•ํ•จ ์œผ๋กœ

์ž‘์—…์ด ์ง„ํ–‰ ๋ถˆ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Œ

 - ์Šคํ‚ค๋งˆ๊ฐ€ ์ œ๋Œ€๋กœ ์ •์˜๋˜์–ด ์žˆ์ง€์•Š๊ฑฐ๋‚˜

 - ์ฟผ๋ฆฌ๋ฅผ ํ†ตํ•œ ์งˆ์˜๊ฐ€ ์Šคํ‚ค๋งˆ์— ๋งž์ง€ ์•Š์„ ๊ฒฝ์šฐ

๋Œ€์šฉ๋Ÿ‰ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ๋ถ€์ ์ ˆํ•จ ๋งŽ์€ ์‹œ๊ฐ„ ์†Œ์š”๋จ

 

HIVE

๋ฐ์ดํ„ฐ์›จ์–ด ํ•˜์šฐ์ง• ์ธํ”„๋ผ

๋ฐ์ดํ„ฐ ์ €์žฅ, ์ฒ˜๋ฆฌ์— ์Šคํ‚ค๋งˆ ๊ฒ€์ฆ ์—†์Œ

์Šคํ‚ค๋งˆ์— ๋งž์ง€ ์•Š๋Š” ์ฟผ๋ฆฌ๋Š” null ๋ฆฌํ„ด

 

  • SQL๊ณผ ์œ ์‚ฌํ•œ HiveQL ์‚ฌ์šฉ
  • MapReduce ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑ ๋Œ€์‹  ์ฟผ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค ์„œ๋น„์Šค ์ œ๊ณต
  • ์ฟผ๋ฆฌ ์‹คํ–‰ ์‹œ MapReduce ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ „ํ™˜๋˜์–ด ๊ฒฐ๊ณผ ์ƒ์„ฑ
  • ๋น„ ์ •ํ˜•ํ™”๋œ ์ž…๋ ฅ ์†Œ์Šค ๋ถ„์„์—๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ

HIVE Architecture

-HIVE Client

-JDBC ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์› ,

-Thrift ๊ธฐ๋ฐ˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์›(์„œ๋กœ ์ปค๋ฎค๋‹ˆ์ผ€์ด์…˜ ํ•  ์ˆ˜ ์žˆ๋Š” ํ†ต์‹  ํ”„๋กœํ† ์ฝœ),

-ODBC๊ธฐ๋ฐ˜ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ ์ง€์›

-HIVE Server

-HIVE ์„œ๋ฒ„ 

-CLI Command line interface : ์œ ์ €๊ฐ€ HIVE ์ฟผ๋ฆฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ธํ„ฐํŽ˜์ด์Šค

-Hive Web Interface : ์œ ์ €๊ฐ€ HIVE ์ฟผ๋ฆฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์›น ์ธํ„ฐํŽ˜์ด์Šค

-Driver : HIVE์— job์ด ์™”์„ ๋•Œ ์ƒ์„ฑํ•˜๊ณ  ํ–‰๋™ํ•จ, meta-store์— ๋ฌผ์–ด ๋ด„

-meta-store : ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” ์ €์žฅ๊ณต๊ฐ„(ํ…Œ์ด๋ธ”์ •๋ณด ๋“ฑ)

-Apache Derby Database  : ์‹ค์ œ ํ…Œ์ด๋ธ”์˜ ๋‚ด์šฉ๋ฌผ์ธ ๋ฐ์ดํ„ฐ ์ €์žฅํ•  ์ˆ˜ ์žˆ์Œ(HDFS๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•จ)

HIVE ๋ฐ์ดํ„ฐ ๋ชจ๋ธ

Hadoop ์ƒ์— ๊ตฌ์ถ•๋œ ์ •ํ˜•ํ™”๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์ฟผ๋ฆฌํ•˜๋Š” ์‹œ์Šคํ…œ

์Šคํ† ๋ฆฌ์ง€๋กœ HDFS์‚ฌ์šฉํ•จ

OLTP์—๋Š” ์ ํ•ฉํ•˜์ง€ ์•Š์Œ

๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ ๋ฐฉ์‹

ํ…Œ์ด๋ธ”์— ํ•ด๋‹น ๋˜๋Š” ์š”์†Œ๋ฅผ HDFS ๋””๋ ‰ํ† ๋ฆฌ๋กœ ๋งตํ•‘

ํŒŒํ‹ฐ์…˜ ํ…Œ์ด๋ธ” ์š”์†Œ๋ฅผ ํŒŒํ‹ฐ์…”๋‹ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ HDFS ์„œ๋ธŒ ๋””๋ ‰ํ„ฐ๋ฆฌ

๋ฐ์ดํ„ฐ๋Š” HDFS์˜ ํŒŒ์ผ๋กœ ์ƒ๊ฐํ•˜์ž.

 

HIVE ๋ฉ”ํƒ€์Šคํ† ์–ด

ํ…Œ์ด๋ธ”์˜ ๋ฉ”ํƒ€์ •๋ณด๋ฅผ ์ €์žฅํ•จ

์นผ๋Ÿผ์˜ ๋ฐ์ดํ„ฐ ํƒ€์ž… ๋“ฑ ์‹ค์ œ ๋ฐ์ดํ„ฐ๊ฐ€ ์•„๋‹Œ ์ •๋ณด๋“ค์€ ๋ฉ”ํƒ€์ •๋ณด๋กœ ๊ฐ„์ฃผ

ํ•˜์ด๋ธŒ ํ…Œ์ด๋ธ”์€ ๋ฉ”ํƒ€์Šคํ† ์–ด์— ์ €์žฅ๋œ ์Šคํ‚ค๋งˆ๋กœ ๊ตฌ์„ฑ๋˜๊ณ  ๋ฐ์ดํ„ฐ๋Š” HDFS์— ์ €์žฅ๋จ

 

ํ•˜์ด๋ธŒ ์ฟผ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค

-ํ•˜์ด๋ธŒ ํด๋ผ์ด์–ธํŠธ(์˜ˆ์ „)

  hive ์ž…๋ ฅ

  ํ•˜์ด๋ธŒ ๋™์ž‘ ๊ณผ์ • 1. ์„œ๋ฒ„๊ฐ€ ์‚ฌ์šฉ์ž์˜ HiveQL ๋ช…๋ น์–ด ํ•ด์„ํ•˜์—ฌ ๋งต๋ฆฌ๋“€์Šค ์ž‘์—…์œผ๋กœ ๋ณ€ํ™˜

  2. ๋ฉ”ํƒ€์Šคํ† ์–ด์—์„œ ํ…Œ์ด๋ธ” ๊ตฌ์กฐ์™€ ๋ฐ์ดํ„ฐ ์œ„์น˜๋ฅผ ์–ป์Œ

  3. ์‹ค์ œ ๋ฐ์ดํ„ฐ ์งˆ์˜ ์ „๋‹ฌ

-beeline ํด๋ผ์ด์–ธํŠธ(์ตœ์‹ )

 

ํ•˜์ด๋ธŒ์™€ Hcatalog

-์—์ฝ”์‹œ์Šคํ…œ์ด ๋ฉ”ํƒ€์Šคํ† ์–ด์— ์ ‘๊ทผ ํ•  ์ˆ˜ ์žˆ๋Š” ์ค‘๊ฐ„๊ณ ๋ฆฌ ์—ญํ• 

-๋ฉ”ํƒ€์Šคํ† ์–ด ๊ด€๋ฆฌ

 

HIVE ํ…Œ์ด๋ธ” ๊ด€๋ฆฌ

HIVE ํ…Œ์ด๋ธ”

1. ๋ฐ์ดํ„ฐ๋ฅผ HIVE ํ…Œ์ด๋ธ”๋กœ ๊ฐ€์ ธ์˜ค๋ฉด?

HiveQL, ํ”ผ๊ทธ, ์ŠคํŒŒํฌ ๋“ฑ์„ ํ™œ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌ > ์ƒํ˜ธ์šด์˜ ๋ณด์žฅ

2. HIVE๊ฐ€ ์ง€์›ํ•˜๋Š” ํ…Œ์ด๋ธ” ์ข…๋ฅ˜

    - ๋‚ด๋ถ€ ํ…Œ์ด๋ธ” : HIVE๊ฐ€ ๊ด€๋ฆฌ, HIVE/ ๋ฐ์ดํ„ฐ์›จ์–ดํ•˜์šฐ์Šค์— ์ €์žฅ, ๋‚ด๋ถ€ํ…Œ์ด๋ธ” ์‚ญ์ œ ์‹œ ๋ฉ”ํƒ€์ •์˜์™€ ๋ฐ์ดํ„ฐ๊นŒ์ง€ ์‚ญ์ œ๋จ,

   ORC๊ฐ™์€ ํ˜•์‹์œผ๋กœ ์ €์žฅ๋˜์–ด ๋น„๊ต์  ๋น ๋ฅธ ์„ฑ๋Šฅ

    - ์™ธ๋ถ€ ํ…Œ์ด๋ธ” : ํ•˜์ด๋ธŒ๊ฐ€ ์ง์ ‘ ๊ด€๋ฆฌํ•˜์ง€ ์•Š์Œ,

   ํ•˜์ด๋ธŒ์˜ ๋ฉ”ํƒ€์ •์˜๋งŒ ์‚ฌ์šฉํ•˜์—ฌ ์›์‹œ ํ˜•ํƒœ๋กœ ์ €์žฅ๋œ ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผ

   ์™ธ๋ถ€ ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ญ์ œํ•ด๋„ ํ…Œ์ด๋ธ” ๋ฉ”ํƒ€ ์ •์˜๋งŒ ์‚ญ์ œ๋˜๊ณ  ๋ฐ์ดํ„ฐ๋Š” ์œ ์ง€๋จ.

   ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ ํ•˜์ด๋ธŒ ์™ธ๋ถ€์— ์ ์žฌ ๋˜์–ด์žˆ๊ฑฐ๋‚˜ ํ…Œ์ด๋ธ”์ด ์‚ญ์ œ๋˜๋”๋ผ๋„ ์›๋ณธ ๋ฐ์ดํ„ฐ๊ฐ€ ๋‚จ์•„ ์žˆ์–ด์•ผํ•  ๋•Œ ์‚ฌ์šฉ

3.csv ํŒŒ์ผ์„ ํ•˜์ด๋ธŒ ํ…Œ์ด๋ธ”๋กœ ๊ฐ€์ ธ์˜ค๊ธฐ

  1.names.csv ์„ HDFS์— ๋ณต์‚ฌ

  2. hdfs dfsmkdir names

  3. hdfs dfs –put names.csv names

  4. hive ์‹คํ–‰ ํ›„ ์ฟผ๋ฆฌ๋กœ ํ…Œ์ด๋ธ” ์ƒ์„ฑ  location ‘/directory’ ๊ตฌ๋ฌธ์€ ํ…Œ์ด๋ธ”์ด ์‚ฌ์šฉํ•  ์ž…๋ ฅ ํŒŒ์ผ์˜ ๊ฒฝ๋กœ์ด๋‹ค.

  5. select * from ~ ๋ฐ์ดํ„ฐ ํ™•์ธํ•˜๊ธฐ

  6. stored as orc > ๋‚ด๋ถ€ ํ…Œ์ด๋ธ”

  7. ๋ฐ์ดํ„ฐ ํ˜•์‹ ํ…์ŠคํŠธ ํŒŒ์ผ, ์‹œํ€€์Šค ํŒŒ์ผ(k-v์Œ), RC ํŒŒ์ผ, ORC ํ˜•์‹, Parquet ํ˜•์‹

 

์™ธ๋ถ€ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

suhdfs

hdfs dfsmkdir /Smartcar

hdfs dfs –put /txtfile.txt /Smartcar

hdfs dfschown –R hive /Smartcar

hdfs dfschmod –R 777 /Smartcar

su – hive

hive

create external table (~) ~ location /Smartcar;

๋‚ด๋ถ€ ํ…Œ์ด๋ธ” ์ƒ์„ฑ

create table (~) ~ location /Smartcar;

์™ธ๋ถ€ ํ…Œ์ด๋ธ”์˜ ๋ฐ์ดํ„ฐ ๋‚ด๋ถ€ ํ…Œ์ด๋ธ”๋กœ ๋ณต์‚ฌ

insert overwrite table SmartCar_in

select * from SmartCar_ex;

๋‚ด๋ถ€ ํ…Œ์ด๋ธ” ๋””๋ ‰ํ„ฐ๋ฆฌ ์ƒ์„ฑํ™•์ธ

hdfs dfs –ls /Smartcar

/Smartcar/base_0000001/bucket_00000/bucket_00000

728x90
๋ฐ˜์‘ํ˜•

+ Recent posts