ํ•˜๋‘ก ์ƒํƒœ๊ณ„ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘/์ €์žฅ/์ฒ˜๋ฆฌ/์ ์žฌ
๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ - Kafka - ์‹ค์‹œ๊ฐ„ ๋ถ„์‚ฐํ™˜๊ฒฝ์—์„œ ๋ฉ”์‹œ์ง€๋ฅผ ์†ก์ˆ˜์‹ ํ•˜๋Š” ๋ฉ”์‹œ์ง€ ์ „๋‹ฌ ์†”๋ฃจ์…˜
๋ถ„์‚ฐ ๋ฐ์ดํ„ฐ ์ €์žฅ - HDFS - ๋ฐ์ดํ„ฐ๋ฅผ ํด๋Ÿฌ์Šคํ„ฐ ํ™˜๊ฒฝ์— ๋ถ„์‚ฐ ์ €์žฅํ•˜๋Š” ์†”๋ฃจ์…˜์œผ๋กœ Namenode(๋ฆฌ๋”๋…ธ๋“œ)์™€ Datanode(์ปดํ“จํŒ…๋…ธ๋“œ)๋กœ ๊ด€๋ฆฌ
๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ ๊ด€๋ฆฌ - YARN - ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ์˜ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ์†”๋ฃจ์…˜์œผ๋กœ Resourse Manager๊ฐ€ Node Manager๋ฅผ ๊ด€๋ฆฌ
๋ถ„์‚ฐ ๋ฐ์ดํ„ฐ ๋ฐฐ์น˜์ฒ˜๋ฆฌ - Hadoop MapReduce - Map๊ณผ Reduce์˜ 2์ƒ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ํ•˜๋‘ก ๊ธฐ๋ฐ˜์˜ ๋ฐฐ์น˜ ์ž‘์—… ํ”Œ๋žซํผ
์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ - Apache Spark - ์ธ๋ฉ”๋ชจ๋ฆฌ ์ƒ์—์„œ์˜ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ํ”Œ๋žซํผ์œผ๋กœ ๋ฐฐ์น˜์ฒ˜๋ฆฌ, ์‹ค์‹œ๊ฐ„ ์ŠคํŠธ๋ฆฌ๋ฐ, SQL ์งˆ์˜์™€ Graph ์ฒ˜๋ฆฌ, ๋จธ์‹ ๋Ÿฌ๋‹ ๊ฐ™์€ ํ•˜์œ„ ํ”„๋กœ์ ํŠธ๋ฅผ ์‚ฌ์šฉ
๋ฐ์ดํ„ฐ์›จ์–ดํ•˜์šฐ์Šค ์—ฐ๋™ - Hive - ํ•˜๋‘ก ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ ์›จ์–ดํ•˜์šฐ์Šค ์‹œ์Šคํ…œ

๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ์—์„œ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•: ElasticSearch
Restful ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜์—ฌ ์ •ํ˜•, ๋น„์ •ํ˜•, ๋ฐ์ดํ„ฐ ์œ„์น˜์ •๋ณด, ๋ฉ”ํŠธ๋ฆญ ๋“ฑ ์›ํ•˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋‹ค์–‘ํ•œ ์œ ํ˜•์˜ ๋ฐ์ดํ„ฐ ๊ฒ€์ƒ‰ ์ˆ˜ํ–‰

ํ•˜๋‘ก ์ƒํƒœ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 
1. ํ•˜๋‘ก์˜ HDFS๋Š” ๋™์ผํ•œ ์ €๊ฐ€ ๋ฆฌ๋ˆ…์Šค๋ฅผ ๋ถ„์‚ฐ ํด๋Ÿฌ์Šคํ„ฐ๋กœ ์‚ฌ์šฉํ•˜์—ฌ scale out์„ ์‚ฌ์šฉ -> ์ €์žฅ์†Œ์˜ ๋น„์šฉ์ด ์ €๋ ดํ•จ
2. ์ •ํ˜• ๋ฐ์ดํ„ฐ ์™ธ์—๋„ ๋ฐ˜์ •ํ˜•, ๋น„์ •ํ˜• ๋ฐ์ดํ„ฐ ๋ชจ๋‘ ๋‹ค๋ฃธ
3. YARN์œผ๋กœ ๋ฉ”๋ชจ๋ฆฌ, CPU, ๋””์Šคํฌ ๋ฆฌ์†Œ์Šค๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ €๋ ดํ•˜๊ฒŒ ๊ด€๋ฆฌ ๊ฐ€๋Šฅ -> ์šด์˜ํ• ๋•Œ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ํฌ์ธํŠธ์—์„œ ์ข€ ์ž์œ ๋กœ์›€
4. ๋”ฅ๋Ÿฌ๋‹, ์ธ๊ณต์ง€๋Šฅ์—์„œ ํ•„์š”ํ•œ INPUT ๋ฐ์ดํ„ฐ ์ œ๊ณต ๊ฐ€๋Šฅ -> ๋ฐ์ดํ„ฐ ๋ชจ๋ธ๋ง์„ ํ†ตํ•œ ๋ฐ์ดํ„ฐ์˜ ์ธ์‚ฌ์ดํŠธ ์ถ”์ถœ ๊ฐ€๋Šฅ
5. Schema on Read -> ๋ฐ์ดํ„ฐ๋ฅผ read ํ•˜๋Š” ์‹œ์ ์— ์Šคํ‚ค๋งˆ๋ฅผ ์ง€์ •ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์ถ”์ถœ -> ๋ฐ์ดํ„ฐ๊ฐ€ ์ €์žฅ๋˜๋Š” ์Šคํ‚ค๋งˆ์˜ ์œ„์น˜๊ฐ€ ๋ชจ๋‘ ๋‹ฌ๋ผ์„œ ์‹œ๊ฐ„ ์ ˆ์•ฝ ๊ฐ€๋Šฅ

๋ฐ์ดํ„ฐ ์ „์ฒ˜๋ฆฌ
์ •์˜: ์›์‹œ ๋ฐ์ดํ„ฐ๋ฅผ ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์˜ ๋ถ„์„ ๋ฐ ์ฒ˜๋ฆฌ์— ์ ํ•ฉํ•œ ํ˜•์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•˜๊ณ  ์ฒ˜๋ฆฌํ•˜๋Š” ์ž‘์—…<br>
๊ธฐ๋ฒ•: ๋ฐ์ดํ„ฐ ์ •์ œ, ๋ฐ์ดํ„ฐ ํ†ตํ•ฉ, ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜, ๋ฐ์ดํ„ฐ ์ •๋ฆฌ

 

ETL ํ”„๋กœ์„ธ์Šค(Extract/Transformation/Loading)
๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ํ•˜๊ณ  ๋น„์ฆˆ๋‹ˆ์Šค ๊ทœ์น™์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•œ ํ›„ ๋Œ€์ƒ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅ์†Œ๋กœ ์ ์žฌํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๋ฐ์ดํ„ฐ ํŒŒ์ดํ”„๋ผ์ธ

ELT ํ”„๋กœ์„ธ์Šค(Extract&Load/Transformation)
์ผ๋‹จ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•ญ ์ ์žฌํ•˜๊ณ  ์ดํ›„ ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์— ๋งž์ถฐ ๋ฐ์ดํ„ฐ ๋ณ€ํ™˜ -> ๋น„์ฆˆ๋‹ˆ์Šค ์š”๊ตฌ์‚ฌํ•ญ์ด ์ •ํ•ด์ง€์ง€ ์•Š์•˜์–ด๋„ ๋ฐ์ดํ„ฐ ์ ์žฌ ๊ฐ€๋Šฅ

ํ•˜๋‘กํŒŒ์ผ์‹œ์Šคํ…œ
- ๊ตฌ์„ฑ: ๋งˆ์Šคํ„ฐ ์—ญํ• ์˜ NameNode์™€ ๋ฐ์ดํ„ฐ๋ฅผ ์‹ค์ œ๋กœ ์ €์žฅํ•˜๋Š” ๋‹ค์ˆ˜์˜ ์Šฌ๋ ˆ์ด๋ธŒ Datanode
- ๊ตฌ์กฐ: ๋งˆ์Šคํ„ฐ-์Šฌ๋ ˆ์ด๋ธŒ ๊ตฌ์กฐ(ํ•˜๋‚˜์˜ ๋งˆ์Šคํ„ฐ์— ์—ฌ๋Ÿฌ๊ฐœ์˜ ์Šฌ๋ ˆ์ด๋ธŒ ๊ตฌ์กฐ)
- ๋™์ž‘์›๋ฆฌ
  1. ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ HDFS์— ์ €์žฅ
  2. HDFS Client๋Š” ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ(ํŒŒ์ผ๋ช…, ํด๋”๊ตฌ์กฐ ๋“ฑ)๋ฅผ NameNode์— ์ €์žฅ
  3. NameNode๋Š” Datanode์—๊ฒŒ ๋ฐ์ดํ„ฐ ๊ด€๋ จ ๋ช…๋ น ์ง€์‹œ,  Datanode๋Š” ์ž์‹ ์˜ ์ƒํƒœ ์ •๋ณด๋ฅผ NameNode์—๊ฒŒ ์†ก์‹ 
  4. Datanode์•ˆ์˜ ์—ฌ๋Ÿฌ๊ฐœ์˜ ๋ธ”๋ก์œผ๋กœ ๋‚˜๋ˆ ์ ธ ์‹ค๋ฐ์ดํ„ฐ๊ฐ€ ๋ณต์ œ ์ €์žฅ๋จ
  5. ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ์–ด์˜ฌ ๊ฒฝ์šฐ, HDFS Client๋Š” NameNode๋กœ๋ถ€ํ„ฐ ํŒŒ์ผ ๋ธ”๋ก์— ๋Œ€ํ•œ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ์ •๋ณด๋ฅผ ์ˆ˜์‹ 
  6. HDFS Client๊ฐ€ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š” Datanode์˜ ํŒŒ์ผ ๋ธ”๋ก์„ ์ฐพ์•„์„œ ํŒŒ์ผ์„ ์ฝ์–ด์˜ด.
  7. NameNode์˜ ๋ฉ”ํƒ€ ๋ฐ์ดํ„ฐ ๋ณ€๊ฒฝ ์‹œ, Secondary Namenode์˜ Edits ํŒŒ์ผ์— ๋กœ๊ทธ ์ €์žฅ
 
Yarn์˜ ๊ตฌ์กฐ
|๋ฐ๋ชฌ|๊ธฐ๋Šฅ|
|------|---|
|Resource Manager|Yarn์˜ ๋งˆ์Šคํ„ฐ ์—ญํ•  ์ˆ˜ํ–‰(์ด๊ด„ ๊ด€๋ฆฌ์ž)|
|Scheduler|Resource Manager ๋‚ด์˜ ๋ฐ๋ชฌ์œผ๋กœ Node Manager์™€ ํ†ต์‹ ํ•˜๋ฉฐ, Application Master์— ์ž์› ํ• ๋‹น|
|Application Manager|Resource Manager ๋‚ด์˜ ๋ฐ๋ชฌ์œผ๋กœ Application Master ์‹คํ–‰ ๋ฐ ์ƒํƒœ ๊ด€๋ฆฌ|
|Node Manager|๊ฐ ๋…ธ๋“œ์˜ ์ƒํƒœ ์ •๋ณด๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•˜์—ฌ Resource Manager์—๊ฒŒ ์ œ๊ณต|
|Application Master|๊ฐ๊ฐ์˜ Application์„ ๊ด€๋ฆฌํ•˜๋Š” ๋งˆ์Šคํ„ฐ์˜ ์—ญํ• |
|Container|Application Master๊ฐ€ ๊ด€๋ฆฌํ•˜๋Š” ํƒœ์Šคํฌ๋ฅผ ์ˆ˜ํ–‰, Node Manager์— ์˜ํ•ด ์ƒ์„ฑ|

ํ•˜๋‘กํŒŒ์ผ์‹œ์Šคํ…œ์˜ ์žฅ์ 
- ์Šค์ผ€์ผ ์•„์›ƒ ๋ถ„์‚ฐ ์‹œ์Šคํ…œ(๋ณ‘๋ ฌ๋กœ ์Šค์ผ€์ผ ์•„์›ƒ๋จ์œผ๋กœ ๋ฐ์ดํ„ฐ ์–‘์— ๋”ฐ๋ผ์„œ ์„œ๋ฒ„ ํ•„์š”)
- ์žฅ์• ๋ณต๊ตฌ(๋งˆ์Šคํ„ฐ ์„œ๋ฒ„๊ฐ€ ์Šฌ๋ ˆ์ด๋ธŒ ์„œ๋ฒ„์˜ ์žฅ์• ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๊ฐ์ง€ํ•˜์—ฌ ์„œ๋น„์Šค ์šฐํšŒ OR ๋‹ค๋ฅธ ๋…ธ๋“œ์— ๋ณต์ œ๋œ ๋ฐ์ดํ„ฐ ์‚ฌ์šฉ)
- ๋Œ€์šฉ๋Ÿ‰๋ฐ์ดํ„ฐ(ํ•œ๋ฒˆ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋Š” only read = ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ X)

'Dataops > Hadoop' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

fredapi ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ์˜ค๋ฅ˜  (0) 2024.03.03

FRED ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๊ธฐ ์œ„ํ•ด์„œ ํŒŒ์ด์ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ fredapi๋ฅผ ์„ค์น˜ํ•ด์•ผํ•œ๋‹ค.

 

๊ทธ๋Ÿฐ๋ฐ ์•„๋‚˜์ฝ˜๋‹ค ๊ฐ€์ƒํ™˜๊ฒฝ ๋ชจ๋“ˆ์—์„œ ์œ„์™€ ๊ฐ™์€ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ด์„œ ํ™•์ธํ•ด๋ณด๋‹ˆ Python 3.9 ์ด์ƒ์—์„œ๋Š” fredapi์— ์ €๋Ÿฐ ํ•จ์ˆ˜๋Š” ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•œ๋‹ค. ์ฆ‰ ํŒŒ์ด์ฌ ๋ฒ„์ „๊ณผ fredapi ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์ถฉ๋Œ์ด๋‹ค. ๊ทธ๋ž˜์„œ fredapi๋ฅผ ์žฌ์„ค์น˜๋ฅผ ํ•ด์ค˜์•ผํ–ˆ๋‹ค.

 

๊ทธ๋ž˜์„œ ๋จผ์ € ์•„๋‚˜์ฝ˜๋‹ค์— ์„ค์น˜๋˜์–ด ์žˆ๋Š” ํŒจํ‚ค์ง€๋ฅผ ์‚ญ์ œํ•ด์คฌ๋‹ค.

conda uninstall fredapi

 

๋ฌธ์ œ๋Š” conda install fredapi๋ฅผ ํ•˜๋ฉด PackagesNotFoundError๋ฅผ ๋ฐœ์ƒ์‹œ์ผœ์„œ ์„ค์น˜๊ฐ€ ์•ˆ๋œ๋‹ค.

๊ทธ๋ž˜์„œ pip์„ ์‚ฌ์šฉํ•ด์„œ ์„ค์น˜ํ•ด์คฌ๋”๋‹ˆ,,, ์ด๋ฒˆ์—” pandas์—์„œ ์˜ค๋ฅ˜๊ฐ€ ๋‚˜์„œ pandas๋„ ์žฌ์„ค์น˜ํ•ด์คฌ๋‹ค.

pip install fredapi

 

๋‹ค์‹œ ํ•œ๋ฒˆ ๋А๋ผ์ง€๋งŒ ํŒŒ์ด์ฌ์€ ๋ฒ„์ „์— ๋„ˆ๋ฌด ๋ฏผ๊ฐํ•ด์„œ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ํ•˜๋Š” ๊ฒŒ ํ•ญ์ƒ ๋ฌธ์ œ์ธ ๊ฑฐ ๊ฐ™๋‹ค.

'Dataops > Hadoop' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

ํ•˜๋‘ก ๊ธฐ๋ณธ์ •๋ณด  (0) 2024.03.03

+ Recent posts