๊ณต๋ถ€/DB

๋ฐ์ดํ„ฐ ์ธํ”„๋ผ (1/2) (OLAP,OLTP,DW,DL,ETL,ODS)

JangGiraffe 2023. 9. 9. 15:25

๐Ÿ˜„๋ฐ์ดํ„ฐ ์ธํ”„๋ผ -1

๐Ÿ˜ญํ‹€๋ฆฐ๋ถ€๋ถ„์€ ์ง€์  ๋ถ€ํƒ๋“œ๋ ค์š”

- โ–ถ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ (1/2) : ์ „์ฒด์ ์ธ ๋งฅ๋ฝ (OLAP์™€ OLTP, ๋ฐ์ดํ„ฐ์›จ์–ดํ•˜์šฐ์Šค(DW),ETL,ODS ๋“ฑ๋“ฑ)
- ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ (2/2) : ์šฐ๋ฆฌํšŒ์‚ฌ์˜ ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ (ํšŒ์‚ฌ๊ด€๋ จ๋‚ด์šฉ์ด๋ผ ํฌ์ŠคํŒ…ํ•˜์ง„ ์•Š์œผ๋‚˜ ๋‚˜์ค‘์— ์ฐธ๊ณ ์šฉ์œผ๋กœ ๋‚จ๊ฒจ๋‘ก๋‹ˆ๋‹ค)
ํฐ ์‹œ์Šคํ…œ์—์„œ ๋ฐ์ดํ„ฐ๊ฐ€ ํ๋ฅด๋Š” ์กฐ์ง์ด ๋˜๋ ค๋ฉด, ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๋ ค๋ฉด ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ๊ฐ€ ์ž˜ ๊ตฌ์ถ•๋˜์–ด์žˆ์–ด์•ผํ•œ๋‹ค.  
๋ฐ์ดํ„ฐ ์ธํ”„๋ผ๋ฅผ ๊ตฌ์ถ•ํ•˜๋ ค๋ฉด DB๋งŒ ์žˆ์œผ๋ฉด ๋˜๋Š”๊ฒŒ ์•„๋‹ˆ๊ณ  ๋‹ค์–‘ํ•œ ๊ธฐ์ˆ ๊ณผ ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์†”๋ฃจ์…˜, ์˜คํ”ˆ์†Œ์Šค, saas๋“ฑ์ด ์—ฎ์—ฌ์„œ ๊ตฌ์ถ•๋˜๋Š”๊ฑฐ๋‹ค.
์ •๋ง ๋‹ค์–‘ํ•˜๊ณ  ๋ณต์žกํ•œ๋ฐ, ์•„๋ž˜ ๋„ํ‘œ์— ๋Œ€ํ•ด์„œ ์ดํ•ดํ•˜๋Š”๊ฑฐ๋ฅผ ๋ชฉํ‘œ๋กœ ๊ณต๋ถ€ ํ–ˆ๋‹ค.

  • ์•„๋ž˜ ๋‚ด์šฉ์„ ์ดํ•ดํ•จ์— ์žˆ์–ด ์œ„ ๋„ํ‘œ(Unified Data Infrastructure (2.0)๋ฅผ ๊ณ„์† ์ฐธ๊ณ ํ•˜๋ฉด์„œ ๋ณด๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹น.
  • ์•„๋ž˜๊ฑด 2020๋…„๋„๋ฒ„์ „
-   ๊ฐ„๋‹จ์„ค๋ช… : ์†Œ์Šค์—์„œ ๊ฐ€์ ธ์˜จ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ€ํ™˜ํ•˜๊ณ  ์ ์žฌ, ๋ถ„์„ํ•ด์„œ ๋ณด์—ฌ์ค€๋‹ค๊ฐ€ ๋ฐ์ดํ„ฐ ์ธํ”„๋ผ์—์„œ ํ•˜๋Š” ์ผ์ž„.
1.  source : ํšŒ์‚ฌ ๋‚ด์— ๋ชจ๋“  ๋ฐ์ดํ„ฐ๊ฐ€ ๋งŒ๋“ค์–ด์ง€๋Š”๊ณณ
2.  Ingestion and transformation : ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€์„œ ๋ณ€ํ™˜ํ•˜๋Š”๊ณณ
3.  Stroage : ์Šคํ† ๋ฆฌ์ง€
4.  Query and Proceesing : ๋“ค์–ด์˜จ ๋ฐ์ดํ„ฐ ๋ถ„์„ ๋ฐ ์˜ˆ์ธก (๋จธ์‹ ๋Ÿฌ๋‹)
5.  Analysis and Output : ๋ถ„์„๋œ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ๊ณณ 

๐Ÿ˜„๋ฐ์ดํ„ฐ ์ธํ”„๋ผ์˜ ๋ชฉ์ 

  1. (๋ถ„์„์‹œ์Šคํ…œ) ๋น„์ฆˆ๋‹ˆ์Šค ๋ฆฌ๋”๋“ค์˜ ์˜์‚ฌ๊ฒฐ์ •์„ ๋„์™€์ฃผ๊ธฐ
  2. (์šด์˜์‹œ์Šคํ…œ) ์„œ๋น„์Šค / ์ œํ’ˆ์„ ๋ฐ์ดํ„ฐ์˜ ๋„์›€์„ ๋ฐ›์•„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ

๐Ÿ˜„Production System (Source) VS DW(Stroage~query and processing) VS DL(Stroage~query and processing)

Production System

  • ERP, CRM(ex salesforce), DB ๋“ฑ๋“ฑ ์›์ฒœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ์‹œ์Šคํ…œ์œผ๋กœ ์‹œ์Šคํ…œ๋งˆ๋‹ค ๋ชจ๋‘ ์‹œ์Šคํ…œ์— ๋งž๊ฒŒ ์ •์˜๋œ ๋ฐฉ์‹์œผ๋กœ ์ €์žฅํ•˜๊ณ  ์žˆ์–ด ๋ชจ๋‘ ๋‹ค ๋‹ค๋ฅธ ํ˜•ํƒœ์ž„.
    • ๋ฐ์ดํ„ฐ๋ฅผ ์ •๊ทœํ™”ํ•ด์„œ ๊ฐ€์ง€๊ณ  ์žˆ์Œ (๋‹ค์–‘ํ•œ ํ…Œ์ด๋ธ”์ด ์กด์žฌ)

Data Warehouse

  • ํ†ตํ•ฉ๋œ ๋ณด๊ณ ์„œ ์ž‘์„ฑ์„ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์†Œ์Šค๋กœ ๋ถ€ํ„ฐ ์ถ”์ถœ(E),๋ณ€ํ™˜(T) ๊ณผ์ •์„ ๊ฑฐ์นœ ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๋Š”๊ณณ
    • ๋‹ค์ฐจ์›(Dimensional) ๋ฐ์ดํ„ฐ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•จ(์šฐ๋ฆฐ ์Šคํƒ€์Šคํ‚ค๋งˆ ์‚ฌ์šฉ ์ค‘)
      • ํ†ต๊ณ„์šฉ ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๊ธฐ๋•Œ๋ฌธ์— ์ผ๋ฐ˜์ ์ธ DB ๋ฐ์ดํ„ฐ์™€ ์ €์žฅ๋ฐฉ์‹์ด ๋‹ค๋ฆ„(๋งŽ์€ ๊ณ„์‚ฐ์„ ์š”๊ตฌํ•˜๋Š” Join์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•จ)
      • facts(์‚ฌ์‹ค = ๊ฐ’) / deimensions(์ฐจ์› = ์กฐํšŒ์กฐ๊ฑด) / ์†์„ฑ(attribute) / ์†์„ฑ๊ณ„์ธต(Hierarchies)๋กœ ๊ตฌ์„ฑ๋จ
    • start scheme : ํ•˜๋‚˜์˜ ์‚ฌ์‹ค ํ…Œ์ด๋ธ”, ๋‹ค์ˆ˜์˜ ์ฐจ์› ํ…Œ์ด๋ธ” / ๋ฐ์ดํ„ฐ๋ฅผ ๋น„์ •๊ทœํ™”ํ•จ

Data Lake

  • AI,ML๋ฐ ๊ณ ๊ธ‰ ๋ถ„์„์„ ์œ„ํ•ด ์ •ํ˜•,๋น„์ •ํ˜•์˜ ๋‹ค์–‘ํ•œ ์›์ฒœ๋ฐ์ดํ„ฐ๋ฅผ ๊ทธ๋Œ€๋กœ ์ˆ˜์ง‘ํ•จ

๐Ÿ˜„OLTP(Source) vs OLAP(Analysis and Output)

  • ๋‘˜ ๋‹ค ์˜จ๋ผ์ธ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ํ”„๋กœ์„ธ์Šค์ด์ง€๋งŒ ์ฐจ์ด๊ฐ€ ์žˆ๋‹ค.

OLTP (On-Line Transaction Processing)

  • ๋™์‹œ์— ๋ฐœ์ƒํ•˜๋Š” ๋‹ค์ˆ˜์˜ ํŠธ๋žœ์žญ์…˜์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ํ”„๋กœ์„ธ์Šค์ž„ (์ผ๋ฐ˜์ ์ธ ๋ฐ์ดํ„ฐ CRUD๊ฐ€ ํฌํ•จ๋จ)

OLAP (On-Line Analytical Processing )

  • ํŠธ๋žœ์žญ์…˜ ๋ฐ์ดํ„ฐ๋กœ๋ถ€ํ„ฐ ๋” ๋งŽ์€ ์ธ์‚ฌ์ดํŠธ๋ฅผ ์ถ”์ถœํ•˜์—ฌ ์–‘์งˆ์˜ ์ •๋ณด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์˜์‚ฌ๊ฒฐ์ •์„ ๋‚ด๋ฆฌ๋Š” ๋ฐ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์คŒ

๐Ÿ˜„ETL (vs ELT)  Ingestion and Transport

ETL

  • ๋ฐ์ดํ„ฐ ์ถ”์ถœ,๋ณ€ํ™˜,์ ์žฌ 3๋‹จ๊ณ„์˜ ์ถ•์•ฝ์–ด๋กœ, ๋‹ค์–‘ํ•œ sources์—์„œ ๋‹ค๋ฅธ ๋ชฉ์ ์ง€๋กœ ์ด๋™์‹œํ‚ค๋Š” ๊ณผ์ •์„ ๋งํ•จ (DB์—์„œ DB๋กœ, DB์—์„œ DW๋กœ, ํŒŒ์ผ์—์„œ DB๋กœ ๋“ฑ๋“ฑ ๋ชจ๋“ ๊ฑธ ์˜๋ฏธํ•จ)
  • DB๋“ฑ๋“ฑ์˜ source์—์„œ DB,DW,DM ๋“ฑ๋“ฑ์œผ๋กœ ์ด๋™์‹œํ‚ด
    • ์ถ”์ถœ(Extract) : ์†Œ์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ETL ํ”„๋กœ์„ธ์Šค์˜ ์‹œ์ž‘ ๋‹จ๊ณ„
    • ๋ณ€ํ™˜(Transform) : ์ถ”์ถœํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๊ณตํ•ด์„œ ๋ชฉ์ ์ง€์— ๋งž๋Š” ๋ฐ์ดํ„ฐ๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ๋‹จ๊ณ„
    • ์ ์žฌ(Load) : ๋ณ€ํ™˜๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๋ชฉ์ ์ง€๋กœ ์ด๋™ํ•˜๊ณ  ์ €์žฅํ•˜๋Š” ๋‹จ๊ณ„

ELT?

-   ETL์˜ ํฐ ๋ฌธ์ œ์  : ์ถ”์ถœ - ๋ณ€ํ™˜์ด ์ž๋™ํ™” ๋  ์ˆ˜ ์—†๊ณ  ๋ณ€ํ™˜์ด ํšŒ์‚ฌ๋งˆ๋‹ค ์‹œ์Šคํ…œ๋งˆ๋‹ค ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ์žˆ์Œ. ๋ณ€ํ™˜ ์‹œ ์˜ค๋ฅ˜๋„ ๋งŽ์Œ.
-   ELT๋Š” ์šฐ์„  ์ถ”์ถœ - ์ ์žฌ๋ฅผ ํ•ด์„œ ๋‹ค ๋„ฃ๊ณ  (์ž๋™ํ™” ๊ฐ€๋Šฅ) ๋ณ€ํ™˜๋งŒ ๋”ฐ๋กœํ•˜๋Š” ํ”„๋กœ์„ธ์Šค

๐Ÿ˜„ODS(Operational Data Store) vs DW(Stroage~query and processing)

  • DW์˜ ์ค‘๊ฐ„ ์˜์—ญ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” DB.
  • ์šด์˜ ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ Raw ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์™€ ์›๋ณธ์œผ๋กœ ์ €์žฅํ•จ
  • ์ฐจ์ด์ 
    • ์ฟผ๋ฆฌ ๋ณต์žก๋„ : ODS๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๊ฐ„๋‹จํ•˜๊ณ  ์ ์€์–‘์˜ ๋ฐ์ดํ„ฐ
    • ๋ฐ์ดํ„ฐ ์œ ํ˜• : DW๋Š” ๋น„์ฆˆ๋‹ˆ์Šค ์˜์‚ฌ๊ฒฐ์ •์— ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋‚˜ ODS๋Š” ํ˜„์žฌ์ƒํ…Œ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ ๋ฒ”์œ„๊ฐ€ ์ œํ•œ๋จ
    • ๋ถˆ์•ˆ์ •์„ฑ : ์œ„์™€ ๊ฐ™์€ ์–˜๊ธฐ๊ธดํ•œ๋ฐ ODS๊ฐ€ ๋” ๋ณ€๋™์„ฑ์ด ๋†’์Œ
    • ์Šคํ‚ค๋งˆ : DW๋Š” ๊ณ ์ •๋œ ์Šคํ‚ค๋งˆ๋ฅผ ๊ฐ€์ ธ์„œ ๊ทธ์— ๋”ฐ๋ผ ETLํ”„๋กœ์„ธ์Šค๊ฐ€ ํ•„์š”ํ•จ, ODS๋Š” ์Šคํ‚ค๋งˆ์— ๋”ฐ๋ผ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด์œ ํ•จ.

๋‹ค๋ฅธ ์žฌ๋ฏธ์žˆ๋Š” ๊ธ€๋“ค๋„ ํ•œ๋ฒˆ ๋ณด๊ณ  ๊ฐ€์„ธ์š”

 

 

์˜ค๋ผํด DBํŠœ๋‹_์†Œํ”„ํŠธํŒŒ์‹ฑ,ํ•˜๋“œํŒŒ์‹ฑ

์š”์ƒˆ ํšŒ์‚ฌ์—์„œ ์šด์˜์ค‘์ธ ์„œ๋น„์Šค๊ฐ€ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌธ์ œ๋“ค๋กœ ์กฐ์šฉํ• ์ผ์ด ์—†๋Š”๋ฐ, ํœด๊ฐ€๋ฅผ ๋‹ค๋…€์˜ค๊ณ  ๋ณด๋‹ˆ DB ์„ฑ๋Šฅ๋ฌธ์ œ๋กœ ์‹œ๋„๋Ÿฌ์› ๋‹ค. ํ•ด๊ฒฐ์€ ํ•œ ๋“ฏ ํ•ด์„œ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•์ค‘์— ํ•œ๊ฐ€์ง€์— ๋Œ€ํ•ด ์ •๋ฆฌํ•˜๋ ค๊ณ  ํ•œ๋‹ค

janggiraffe.tistory.com

 

์˜ค๋ผํด DBํŠœ๋‹_์†Œํ”„ํŠธํŒŒ์‹ฑ,ํ•˜๋“œํŒŒ์‹ฑ_2

์˜ค๋ผํด DBํŠœ๋‹_์†Œํ”„ํŠธํŒŒ์‹ฑ,ํ•˜๋“œํŒŒ์‹ฑ ์š”์ƒˆ ํšŒ์‚ฌ์—์„œ ์šด์˜์ค‘์ธ ์„œ๋น„์Šค๊ฐ€ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌธ์ œ๋“ค๋กœ ์กฐ์šฉํ• ์ผ์ด ์—†๋Š”๋ฐ, ํœด๊ฐ€๋ฅผ ๋‹ค๋…€์˜ค๊ณ  ๋ณด๋‹ˆ DB ์„ฑ๋Šฅ๋ฌธ์ œ๋กœ ์‹œ๋„๋Ÿฌ์› ๋‹ค. ํ•ด๊ฒฐ์€ ํ•œ ๋“ฏ ํ•ด์„œ ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•

janggiraffe.tistory.com

 

๋ฐ˜์‘ํ˜•