SlideShare a Scribd company logo
1 of 72
Download to read offline
์ €์ž‘์žํ‘œ์‹œ-๋น„์˜๋ฆฌ-๋ณ€๊ฒฝ๊ธˆ์ง€ 2.0 ๋Œ€ํ•œ๋ฏผ๊ตญ
์ด์šฉ์ž๋Š” ์•„๋ž˜์˜ ์กฐ๊ฑด์„ ๋”ฐ๋ฅด๋Š” ๊ฒฝ์šฐ์— ํ•œํ•˜์—ฌ ์ž์œ ๋กญ๊ฒŒ
l ์ด ์ €์ž‘๋ฌผ์„ ๋ณต์ œ, ๋ฐฐํฌ, ์ „์†ก, ์ „์‹œ, ๊ณต์—ฐ ๋ฐ ๋ฐฉ์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค:
l ๊ท€ํ•˜๋Š”, ์ด ์ €์ž‘๋ฌผ์˜ ์žฌ์ด์šฉ์ด๋‚˜ ๋ฐฐํฌ์˜ ๊ฒฝ์šฐ, ์ด ์ €์ž‘๋ฌผ์— ์ ์šฉ๋œ ์ด์šฉํ—ˆ๋ฝ์กฐ๊ฑด
์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
l ์ €์ž‘๊ถŒ์ž๋กœ๋ถ€ํ„ฐ ๋ณ„๋„์˜ ํ—ˆ๊ฐ€๋ฅผ ๋ฐ›์œผ๋ฉด ์ด๋Ÿฌํ•œ ์กฐ๊ฑด๋“ค์€ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์ €์ž‘๊ถŒ๋ฒ•์— ๋”ฐ๋ฅธ ์ด์šฉ์ž์˜ ๊ถŒ๋ฆฌ๋Š” ์œ„์˜ ๋‚ด์šฉ์— ์˜ํ•˜์—ฌ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์€ ์ด์šฉํ—ˆ๋ฝ๊ทœ์•ฝ(Legal Code)์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์š”์•ฝํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
Disclaimer
์ €์ž‘์žํ‘œ์‹œ. ๊ท€ํ•˜๋Š” ์›์ €์ž‘์ž๋ฅผ ํ‘œ์‹œํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.
๋น„์˜๋ฆฌ. ๊ท€ํ•˜๋Š” ์ด ์ €์ž‘๋ฌผ์„ ์˜๋ฆฌ ๋ชฉ์ ์œผ๋กœ ์ด์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๋ณ€๊ฒฝ๊ธˆ์ง€. ๊ท€ํ•˜๋Š” ์ด ์ €์ž‘๋ฌผ์„ ๊ฐœ์ž‘, ๋ณ€ํ˜• ๋˜๋Š” ๊ฐ€๊ณตํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
ํด
๋ผ
์šฐ
๋“œ
์Šค
ํ† 
๋ฆฌ
์ง€
ํ™•
์žฅ
์„
์œ„
ํ•œ
ํ•˜
์ด
๋ธŒ
๋ฆฌ
๋“œ
์Šค
ํ† 
๋ฆฌ
์ง€
A
P
I
์˜
์„ค
๊ณ„
์ž„
๋ณต
์ถœ
์„์‚ฌ ํ•™์œ„๋…ผ๋ฌธ
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„
TheDesignofHybridStorageAPI
forCloudStorageExtension
2013๋…„ 02์›”
์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์›
์ • ๋ณด ๊ณผ ํ•™ ๊ณผ
์ž„ ๋ณต ์ถœ
์„์‚ฌ ํ•™์œ„๋…ผ๋ฌธ
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„
TheDesignofHybridStorageAPI
forCloudStorageExtension
2013๋…„ 02์›”
์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์›
์ • ๋ณด ๊ณผ ํ•™ ๊ณผ
์ž„ ๋ณต ์ถœ
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ
ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„
TheDesignofHybridStorageAPI
forCloudStorageExtension
์ง€๋„๊ต์ˆ˜ ๊น€ ์ˆœ ๊ณค
์ด ๋…ผ๋ฌธ์„ ์„์‚ฌํ•™์œ„ ๋…ผ๋ฌธ์œผ๋กœ ์ œ์ถœํ•จ.
2013๋…„ 02์›”
์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์›
์ • ๋ณด ๊ณผ ํ•™ ๊ณผ
์ž„ ๋ณต ์ถœ
์ž„๋ณต์ถœ์˜ ์„์‚ฌํ•™์œ„ ๋…ผ๋ฌธ์„ ์ธ์ค€ํ•จ.
์‹ฌ์‚ฌ์œ„์›์žฅ ์ธ
์‹ฌ ์‚ฌ ์œ„ ์› ์ธ
์‹ฌ ์‚ฌ ์œ„ ์› ์ธ
2012๋…„ 12์›” ์ผ
์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์›
-i-
โ—† ๋ชฉ ์ฐจ โ—†
๋ชฉ ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ฐ
ํ‘œ ๋ชฉ ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ฒ
๊ทธ๋ฆผ๋ชฉ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ด
์ œ 1์žฅ ์„œ ๋ก  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 1
์ œ 1์ ˆ ์—ฐ๊ตฌ ๋ฐฐ๊ฒฝ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 1
์ œ 2์ ˆ ์—ฐ๊ตฌ ๋‚ด์šฉ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 2
์ œ 2์žฅ ๊ด€๋ จ์—ฐ๊ตฌ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3
์ œ 1์ ˆ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3
์ œ 2์ ˆ ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 6
์ œ 3์ ˆ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 11
์ œ 3์žฅ HybridStorageAPI์˜ ์„ค๊ณ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13
์ œ 1์ ˆ ์ „์ฒด์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13
1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 15
2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 16
3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 17
์ œ 2์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 18
1.InboundHandler๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19
-ii-
2.OutboundHandler๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19
3.Controller๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20
4.์—ฐ๋™ ํ”„๋กœํ† ์ฝœ ๋ฐฉ์‹ ๋ฐ ์†ก์ˆ˜์‹  ์ „๋ฌธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20
์ œ 3์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21
1.IF_USER_HSA โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 22
2.IF_HSA_STRG โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26
์ œ 4์žฅ ์‹คํ—˜ํ™˜๊ฒฝ ๋ฐ ๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36
์ œ 1์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ฐœ๋ฐœํ™˜๊ฒฝ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36
์ œ 2์ ˆ ์—ฐ๋™๊ทœ๊ฒฉ ๋ฐ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38
1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38
2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 39
3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 40
์ œ 3์ ˆ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 41
1.์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 42
2.HybridStorageAPI์˜ ๊ธฐ์ˆ  ๊ฒ€์ฆ ๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 48
์ œ 5์žฅ ๊ฒฐ๋ก  ๋ฐ ํ–ฅํ›„๊ณผ์ œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 54
์ฐธ๊ณ ๋ฌธํ—Œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 56
Abstract โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 58
๊ฐ์‚ฌ์˜ ๊ธ€ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 60
-iii-
โ—† ํ‘œ ๋ชฉ ์ฐจ โ—†
[ํ‘œ 1]์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™” โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3
[ํ‘œ 2]ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 4
[ํ‘œ 3]์•„ํ‚คํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 6
[ํ‘œ 4]HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ์š”์†Œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 14
[ํ‘œ 5]HybridStorageAPI๊ฐœ๋ฐœํ•ญ๋ชฉ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20
[ํ‘œ 6]์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21
[ํ‘œ 7]FILE_UP_HSA Overview โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 22
[ํ‘œ 8]FILE_UP_HSA RequestDefinition โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 23
[ํ‘œ 9]FILE_UP_HSA ResponseDefinition โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 23
[ํ‘œ 10]FILE_UP_HSA ErrorCodeโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 24
[ํ‘œ 11]FILE_DW_HSA Overview โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 24
[ํ‘œ 12]FILE_DW_HSA RequestDefinitionโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 25
[ํ‘œ 13]FILE_DW_HSA ResponseDefinitionโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 25
[ํ‘œ 14]FILE_DW_HSA ErrorCode โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26
[ํ‘œ 15]FILE_UP_ES RequestParameter โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26
[ํ‘œ 16]FILE_DW_ESRequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 28
[ํ‘œ 17]FILE_AUTH_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 29
[ํ‘œ 18]FILE_AUTH_SW ResponseParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 29
[ํ‘œ 19]FILE_UP_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 30
[ํ‘œ 20]FILE_DW_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 32
-iv-
[ํ‘œ 21]HybridStorageAPIํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36
[ํ‘œ 22]์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ ๊ฐœ์š” โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 41
[ํ‘œ 23]EasyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 42
[ํ‘œ 24]SwiftUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 43
[ํ‘œ 25]GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 44
[ํ‘œ 26]EasyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 45
[ํ‘œ 27]SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 46
[ํ‘œ 28]GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 47
[ํ‘œ 29]Storages์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 48
[ํ‘œ 30]Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 49
[ํ‘œ 31]RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 50
[ํ‘œ 32]ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 50
[ํ‘œ 33]์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 51
[ํ‘œ 34]์ธ์ฆ์ •๋ณด Parsing์˜ˆ์‹œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 53
-v-
โ—† ๊ทธ ๋ฆผ ๋ชฉ ์ฐจ โ—†
[๊ทธ๋ฆผ 1] CloudArchitectureโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 7
[๊ทธ๋ฆผ 2] SoftwareasaService โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 8
[๊ทธ๋ฆผ 3] InfrastructureasaServiceโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 9
[๊ทธ๋ฆผ 4] Platform asaServiceโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 10
[๊ทธ๋ฆผ 5] CloudStorage โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 12
[๊ทธ๋ฆผ 6] HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13
[๊ทธ๋ฆผ 7] ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 15
[๊ทธ๋ฆผ 8]ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 16
[๊ทธ๋ฆผ 9]ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 17
[๊ทธ๋ฆผ 10]HybridStorageAPI๊ฐœ๋…๋„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 18
[๊ทธ๋ฆผ 11]HybridStorageAccess์„œ๋ฒ„ ๊ตฌ์กฐ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19
[๊ทธ๋ฆผ 12]HybridStorageAPI์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21
[๊ทธ๋ฆผ 13]ํŒŒ์ผ ์—…๋กœ๋“œ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38
[๊ทธ๋ฆผ 14]ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 39
[๊ทธ๋ฆผ 15]ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 40
-1-
์ œ 1์žฅ ์„œ ๋ก 
์ œ 1์ ˆ ์—ฐ๊ตฌ๋ฐฐ๊ฒฝ
๋น„์ฆˆ๋‹ˆ์Šค ํ™˜๊ฒฝ๊ณผ IT ๋ฐœ์ „์˜ ๋น ๋ฅธ ๋ณ€ํ™”๋งŒํผ์ด๋‚˜ ๊ธฐ์—…๋“ค์˜ IT ๋น„์šฉ์€ ๋Š˜์–ด๋‚˜๊ณ  ์žˆ
๋‹ค.๋”ฐ๋ผ์„œ ๊ธ‰๋ณ€ํ•˜๋Š” ํ™˜๊ฒฝ์— ์ ์ ˆํ•˜๊ฒŒ ๋Œ€์‘ํ•˜๋ฉฐ IT ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๋Š” ๊ฒƒ์€ ๋ชจ๋“  ๊ธฐ
์—…๋“ค์˜ ์ƒ์กด ๊ด€๊ณ„๊ฐ€ ๋˜๊ณ  ์žˆ๋‹ค.์ด๋Ÿฌํ•œ ๋ถ€๋‹ด์€ IT ์ž์‚ฐ์— ๋Œ€ํ•œ ๊ธฐ์—…๋“ค์˜ ํŒจ๋Ÿฌ๋‹ค์ž„
์— ๋ณ€ํ™”๋ฅผ ๊ฐ€์ ธ ์˜ค๊ณ  ์žˆ๋‹ค.IT ์ž์‚ฐ์— ๋Œ€ํ•œ ๊ธฐ์กด์˜ ํŒจ๋Ÿฌ๋‹ค์ž„์ธ ์†Œ์œ ์—์„œ ์ด์ œ๋Š” ์‚ฌ
์šฉ์œผ๋กœ ๋ฐ”๋€Œ๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค.
์—ฌ๊ธฐ์—๋Š” 1980๋…„๋Œ€ ํ›„๋ฐ˜๋ถ€ํ„ฐ IT ์šด์˜์˜ ์•„์›ƒ์†Œ์‹ฑ(SM), ์›นํ˜ธ์ŠคํŒ…,
ASP(ApplicationServiceProvider)๋“ฑ์˜ ๋“ฑ์žฅ์€ ์ด๋Ÿฌํ•œ ํŒจ๋Ÿฌ๋‹ค์ž„์˜ ๋ณ€ํ™”์— ํ•œ ๋ชซ์„
ํ•˜์˜€์œผ๋ฉฐ,ํŠนํžˆ 2007๋…„ ์ดํ›„์—๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค๊ฐ€ ์‹œ์žฅ์— ๋“ฑ์žฅํ•จ์— ๋”ฐ๋ผ
IT ์ž์‚ฐ์€ ์†Œ์œ ๋ณด๋‹ค๋Š” ์„œ๋น„์Šค ๋ฐ›๋Š”๋‹ค๋Š” ์ถ”์„ธ๊ฐ€ ์ ์  ํ™•์‚ฐ๋˜๊ณ  ์žˆ๋‹ค.
์ด๋Ÿฌํ•œ ๊ฒฝํ–ฅ์„ ๋ฐ˜์ฆํ•˜๋“ฏ ์•„๋งˆ์กด,๊ตฌ๊ธ€,IBM,MS,Yahoo๋“ฑ ์ฃผ์š” IT ๊ธฐ์—…๋“ค์€ ์†
์† ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์œผ๋ฉฐ,์ตœ๊ทผ ๋“ค์–ด Salesforce,Facebook,Youtube,
Myspace๊ฐ™์€ ๊ธฐ์—…๋“ค๋„ ์ธํ„ฐ๋„ท ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค๋ฅผ
์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค[1].
์ด๋Ÿฐ ๊ธฐ์—…๋“ค์ด ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์— ์–ด๋–ค ์—ญํ• ๊ณผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š”์ง€ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค
๋ช…ํ•˜๋ฉด,๊ตฌ๊ธ€์€ ์ˆ˜์‹ญ๋งŒ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„ ๊ด€๋ฆฌ ๊ธฐ์ˆ ,์ˆ˜์‹ญ ํŽ˜ํƒ€๋ฐ”์ดํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €
์žฅํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ  ๋“ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ,์ด๋Ÿฐ ๊ธฐ์ˆ  ์ค‘ ์ผ๋ถ€๋ฅผ ๋…ผ๋ฌธ์œผ๋กœ
์™ธ๋ถ€์— ๊ณต๊ฐœํ•ด ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์˜ ์„ฑ๊ณต ์‚ฌ๋ก€๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์žˆ๋‹ค.๋˜ํ•œ ๋ฉ”์ผ,์ผ์ •,
Docs๋“ฑ๊ณผ ๊ฐ™์€ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์˜ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ ์•ฑ์—”
์ง„(AppEngine)์ด๋ผ๋Š” ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์˜ ํ”Œ๋žซํผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐœ๋ฐœํ•œ
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์„ ์ œ๊ณตํ•œ๋‹ค.
์•„๋งˆ์กด์€ ๊ฐ€์ƒ ๋จธ์‹ ,์Šคํ† ๋ฆฌ์ง€ ๋“ฑ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์ž์› ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ,์„ธ์ผ
์ฆˆํฌ์Šค๋‹ท์ปด์€ ๊ธฐ์—… ๋Œ€์ƒ CRM ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค[2].
๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์—ฌ๋Ÿฌ ๋ถ„์•ผ ์ค‘ ์Šคํ† ๋ฆฌ์ง€(IaaS,PaaS)์˜ ํšจ์œจ์ 
-2-
์ธ ์ œ๊ณต๊ณผ ์—ฐ๋™์„ ์œ„ํ•œ ๋ฐฉ์•ˆ์œผ๋กœ HybridStorage๊ฐœ๋…์„ ๋„์ž…ํ•˜์—ฌ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ
์ง€ ์‹œ์Šคํ…œ์—์„œ ์ œ๊ณตํ•˜๋Š” OpenStack,Gluster,Atmos๋“ฑ์˜ ๋‹ค์–‘ํ•œ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต์ด
๊ฐ€๋Šฅํ•˜๋„๋ก API์˜ ์„ค๊ณ„๋ฅผ ์ง„ํ–‰ ํ•˜์˜€๋‹ค.HybridStorageAPI๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ๊ธฐ๋ณธ์ ์ธ
์‹œ์Šคํ…œ ํ”Œ๋กœ์šฐ๋ฅผ ํ†ตํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ œ์‹œํ•˜์—ฌ,ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ์˜ ์Šคํ† ๋ฆฌ์ง€ ์ œ
๊ณต์ด ๊ฐ€๋Šฅ ํ•˜๋„๋ก ํ•˜์˜€๋‹ค.
์ œ 2์ ˆ ์—ฐ๊ตฌ๋‚ด์šฉ
๋ณธ ์—ฐ๊ตฌ๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ Storage์˜ ์ œ๊ณต ์šฉ๋Ÿ‰ ํ™•๋Œ€์— ๋”ฐ๋ผ Storage
์˜ ์ฆ์„ค ๋น„์šฉ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ,์ € ๋น„์šฉ์˜ ์šด์šฉ ๊ฐ€๋Šฅํ•œ Storage ๊ธฐ์ˆ ์„ ํ™•๋ณดํ•˜๊ณ 
Open Source๊ธฐ๋ฐ˜์˜ StorageSolution์„ ๋„์ž…ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์‚ฌ์—… ํ™•์žฅ์— ์ ์šฉํ•  ์ˆ˜
์žˆ๋Š” ๊ธฐ๋ฐ˜์„ ๋งˆ๋ จํ•˜๊ธฐ ์œ„ํ•ด HybridStorageAPI์˜ ์„ค๊ณ„๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค.์„ค๊ณ„ ๋ฐฉ๋ฒ•์„
์ œ์‹œํ•œ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
์ฒซ์งธ,ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์— ๋Œ€ํ•œ ๊ธฐ์ˆ  ๋ฐ ์›๋ฆฌ,๋“ฑ์žฅ๋ฐฐ๊ฒฝ์„ ์‚ดํŽด๋ณธ๋‹ค.๋‘˜์งธ,ํด๋ผ์šฐ
๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ ๊ตฌ์„ฑ๊ณผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์—ฐ๊ตฌ
์ž๋ฃŒ๋ฅผ ํ™œ์šฉํ•œ๋‹ค.์…‹์งธ,์Šคํ† ๋ฆฌ์ง€์˜ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ๊ณผ HybridStorageAPI๋ฅผ ์œ„ํ•ด ํด
๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ์‹œ์Šคํ…œ์—์„œ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต๋ฐฉ์‹์„ ์—ฐ๊ตฌํ•œ๋‹ค.๋„ท์งธ,๋‹ค์–‘ํ•œ ์„œ๋น„์Šค์—
์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ OpenAPIํ˜•ํƒœ์˜ ์„œ๋น„์Šค ํ”„๋กœํ† ์ฝœ์„ ์ œ์•ˆํ•œ๋‹ค.
๋ณธ ๋…ผ๋ฌธ์˜ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.์ œ1์žฅ์—์„œ๋Š” ๋ณธ ์—ฐ๊ตฌ๋ฐฐ๊ฒฝ,์—ฐ๊ตฌ๋‚ด์šฉ์„ ์„ค๋ช…ํ•œ๋‹ค.
์ œ2์žฅ์—์„œ๋Š” ๋…ผ๋ฌธ์˜ ๊ด€๋ จ์—ฐ๊ตฌ์— ๋Œ€ํ•˜์—ฌ ์„ค๋ช…ํ•œ๋‹ค.์ œ3์žฅ์—์„œ๋Š” ์ œ์‹œํ•œ ์‹œ์Šคํ…œ์˜ ์ „
์ฒด์ ์ธ ๊ตฌ์„ฑ๊ณผ ์„ธ๋ถ€๊ตฌ์„ฑ,๊ฐ ๋ชจ๋“ˆ์˜ ๊ธฐ๋Šฅ์„ ์ƒ์„ธํžˆ ์„ค๋ช…ํ•œ๋‹ค.์ œ4์žฅ์—์„œ๋Š” ์ œ์•ˆ๋œ
๋ฐฉ์‹์˜ ์‹คํ—˜ํ™˜๊ฒฝ์„ ์„ค๋ช…ํ•˜๊ณ ,๊ฒฐ๊ณผ์˜ ํšจ์œจ์„ฑ์„ ์ฆ๋ช…ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ
์—ฐ๊ณ„ํ•œ API์˜ ์‹œํ—˜๊ฒฐ๊ณผ๋ฅผ ์ œ์‹œํ•œ๋‹ค.๋งˆ์ง€๋ง‰์œผ๋กœ ์ œ5์žฅ์—์„œ๋Š” ๋ณธ ๋…ผ๋ฌธ์— ๋Œ€ํ•œ ๊ฒฐ๋ก 
๊ณผ ํ–ฅํ›„๊ณผ์ œ๋ฅผ ์ œ์‹œํ•œ๋‹ค.
-3-
์ œ 2์žฅ ๊ด€๋ จ ์—ฐ๊ตฌ
์ œ 1์ ˆ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ๋„คํŠธ์›Œํฌ์ƒ์— ๋ถ„์‚ฐ๋˜์–ด ์žˆ๋Š” ์ปดํ“จํ„ฐ๋ฅผ ๊ฐ€์ƒํ™”(virtualization)
์‹œํ‚จ ํ›„ ์ธํ„ฐ๋„ท๊ณผ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์— ์ ‘๊ทผํ•˜์—ฌ ์‹คํ–‰ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค๋ฅผ ๋ง
ํ•œ๋‹ค.ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ํ•ญ๋ชฉ์ธ ์ปดํ“จ
ํ„ฐ ์ž์›์˜ ๊ฐ€์ƒํ™”,๋ฌด์ œํ•œ์ ์ธ ์‚ฌ์šฉ,๋ฌผ๋ฆฌ์ ์ธ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ๋“ค์˜ ์„ธ๋ถ„ํ™” ๋“ฑ์— ์˜ํ•ด
๋‹ค์‹œ ๊ตฌ๋ถ„๋œ๋‹ค[4].
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ํฐ ๊ฐœ๋…์—์„œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์น˜
(deployment)๋ชจ๋ธ๊ณผ ์„œ๋น„์Šค(service)๋ชจ๋ธ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค.
๋ฐฐ์น˜ ๋ชจ๋ธ์€ ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์ด ๋„คํŠธ์›Œํฌ์ƒ์—์„œ ์–ด๋–ค ์œ„์น˜์— ์žˆ๋Š”์ง€,์–ด๋–ค ๋ชฉ์ 
์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์ •์˜์ด๋ฉฐ ๊ณต๊ณต(public), ๊ฐœ์ธ(private), ์ปค๋ฎค๋‹ˆํ‹ฐ
(community),ํ•˜์ด๋ธŒ๋ฆฌ๋“œ(hybrid)ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์œผ๋กœ ๋‚˜๋‰˜์–ด์ง„๋‹ค[2,4].
์‹œ๋น„์Šค ๋ชจ๋ธ์€ ๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ข…๋ฅ˜์— ๋”ฐ๋ผ ๊ตฌ๋ถ„๋œ๋‹ค.๊ฐ€์žฅ
์ž˜ ์•Œ๋ ค์ง„ ์„œ๋น„์Šค ๋ชจ๋ธ์—๋Š” SPI(Software product improvement) ๋ชจ๋ธ์ธ
SaaS(SoftwareasaService),PaaS(Platform asaService),IaaS(Infrastructureas
aService)๊ฐ€ ์žˆ๋‹ค.์ฆ‰,์„œ๋น„์Šค ๋ชจ๋ธ์€ ๊ตฌ์ถ•ํ•œ ์„œ๋น„์Šค ์ข…๋ฅ˜์— ๋”ฐ๋ผ ๋ฒค๋”๊ฐ€ ๋ฌด์—‡์„
๊ด€๋ฆฌํ•ด์•ผ ํ•˜๋Š”์ง€์™€ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์ด ๋ฌด์—‡์ธ์ง€์— ๋”ฐ๋ผ ๊ตฌ๋ถ„๋œ๋‹ค[2].
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์ •์˜๋ฅผ ์ข€ ๋” ๊นŠ๊ฒŒ ์‚ดํŽด๋ณด๋ฉด,์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™”์˜ ๋‘ ๊ฐ€์ง€ ๊ฐœ
๋…์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ,๋‹ค์Œ [ํ‘œ 1]๊ณผ ๊ฐ™๋‹ค[4].
-4-
์ถ”์ƒํ™”
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ช…์‹œ๋˜์ง€ ์•Š์€ ๋ฌผ๋ฆฌ์ ์ธ ์‹œ์Šคํ…œ์—์„œ ์‹คํ–‰๋˜๊ณ ,๋ฐ์ดํ„ฐ๋„
์•Œ๋ ค์ง€์ง€ ์•Š์€ ์œ„์น˜์— ์ €์žฅ๋˜๊ณ ,์‹œ์Šคํ…œ ๊ด€๋ฆฌ๋Š” ์™ธ๋ถ€์— ์œ„ํƒํ•˜๊ณ ,์‚ฌ์šฉ์ž๋Š”
์–ด๋””์„œ๋‚˜ ์‹œ์Šคํ…œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ฆ‰,์‹œ์Šคํ…œ์˜ ์ƒ์„ธํ•œ ์‚ฌํ•ญ๋“ค์„ ์‚ฌ
์šฉ์ž์™€ ๊ฐœ๋ฐœ์ž๋Š” ๋ชฐ๋ผ๋„ ์‹œ์Šคํ…œ์„ ์ด์šฉํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ
๊ฐ€์ƒํ™”
์‹œ์Šคํ…œ๊ณผ ์ €์žฅ์žฅ์น˜(storage)๋Š” ์ค‘์•™์— ์ง‘์ค‘๋œ ํด๋ผ์šฐ์‹œ ์‹œ์Šคํ…œ์˜ ์ธํ”„๋ผ
(instrastructure)๋กœ๋ถ€ํ„ฐ ํ•„์š”ํ•œ ๋งŒํผ ๊ณต๊ธ‰๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.์š”๊ธˆ์€ ์‚ฌ์šฉํ•œ ๋งŒ
ํผ ์ง€๋ถˆํ•˜๊ณ ,๋‹ค์ค‘ ์†Œ์œ (multi-tenany)๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ ,์‹œ์Šคํ…œ ์ž์›๋“ค์€ ๋น ๋ฅด
๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.์ฆ‰,ํ’€๋ง๊ณผ ๊ณต์œ ๋˜๋Š” ์‹œ์Šคํ…œ ์ž์›์„ ํ†ตํ•ด ํ•˜๋‚˜์˜ ์‹œ์Šค
ํ…œ์„ ๊ณต์œ ํ•ด์„œ ๋ˆ„๊ตฌ๋‚˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ
[ํ‘œ 1]์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™”
์žฅ์ 
-์ฃผ๋ฌธํ˜• ์…€ํ”„์„œ๋น„์Šค :์‚ฌ์šฉ์ž๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž์™€ ๊ฐœ์ธ์ ์ธ ์ ‘์ด‰
์—†์ด๋„ ์ปดํ“จํ„ฐ ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
- ๊ด‘๋Œ€์—ญ ๋„คํŠธ์›Œํฌ ์ ‘๊ทผ :ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์˜ ์ž์›์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ
์ž๋“ค์ด ํ”Œ๋žซํผ์— ๋…๋ฆฝ์ ์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๋ฉฐ ํ‘œ์ค€์ ์ธ ์ฒด๊ณ„์˜
๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.์ด๋Š” ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ ๊ฐ„์˜ ํ˜ธํ™˜์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ
๋žฉํƒ‘,ํœด๋Œ€ํฐ,PDA ๊ฐ™์€ ์”ฌ/ํŒป ํ”Œ๋žซํผ์„ ์ง€์›ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค.
- ์ž์›ํ’€๋ง :ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ๋ฉ€ํ‹ฐํ…Œ๋„ŒํŠธ(multi-tenant)์‚ฌ์šฉ์„
์ง€์›ํ•˜๋Š” ์‹œ์Šคํ…œ์—์„œ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž์›์„ ์ƒ์„ฑํ•˜๋ฉฐ,๋ฌผ๋ฆฌ์  ์‹œ์Šคํ…œ๊ณผ
๊ฐ€์ƒ ์‹œ์Šคํ…œ์€ ํ•„์š”์— ๋”ฐ๋ผ์„œ ์œ ๋™์ ์œผ๋กœ ํ• ๋‹น ํ˜น์€ ์žฌํ• ๋‹น๋œ๋‹ค.ํ’€๋ง์˜
์ด๋Ÿฌํ•œ ๊ฐœ๋…์€ ๊ฐ€์ƒ ๋จธ์‹ ,ํ”„๋กœ์„ธ์‹ฑ,๋ฉ”๋ชจ๋ฆฌ,์ €์žฅ ์žฅ์น˜,๋„คํŠธ์›Œํฌ ๋Œ€์—ญ๊ณผ
์—ฐ๊ฒฐ ๊ฐ™์€ ์ž์›๋“ค์˜ ์œ„์น˜๋ฅผ ์ˆจ๊ธฐ๊ธฐ ์œ„ํ•œ ์ถ”์ƒํ™”์—์„œ ์•„์ด๋””์–ด๋ฅผ ์–ป์€ ๊ฒƒ์ด
๋‹ค.
-๋ฏผ์ฒฉํ•œ ํƒ„๋ ฅ์„ฑ :์ž์›๋“ค์€ ๋น ๋ฅด๊ณ  ํƒ„๋ ฅ์ ์œผ๋กœ ์ค€๋น„๋  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.๋˜
ํ•œ ๊ฐ€์ƒ ๋จธ์‹ ์€ ์ž์›์„ ๋” ๋‚˜์€ ์„ฑ๋Šฅ์˜ ์ปดํ“จํ„ฐ ๋˜๋Š” ๊ฐ™์€ ์„ฑ๋Šฅ์˜ ์ปดํ“จํ„ฐ
[ํ‘œ 2]ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์ 
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์ ์€ ๋‹ค์Œ [ํ‘œ 2]์™€ ๊ฐ™๋‹ค[4].
-5-
๋‘˜ ์ค‘์—์„œ ์–ด๋–ค ํ˜•ํƒœ๋กœ๋“  ์ž๋™ ๋˜๋Š” ์ˆ˜๋™์œผ๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.์™œ
๋ƒํ•˜๋ฉด ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์ž์›์€ ๋ฌด์ œํ•œ์ด์–ด์•ผ ํ•˜๊ณ ,์–ธ์ œ
๋‚˜ ์–ผ๋งˆ๋“ ์ง€ ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
-์ข…๋Ÿ‰์ œ ์„œ๋น„์Šค :ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ ์ž์›์˜ ์‚ฌ์šฉ๋Ÿ‰์€ ์ธก์ •์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ
๋กœ ํ•ด์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ธก์ •๋˜๊ณ  ๊ฒ€์‚ฌ๋˜๊ณ  ๋ณด๊ณ ๋œ๋‹ค.์ฆ‰,์‚ฌ์šฉ์ž๋Š” ์ €์žฅ์žฅ์น˜
์‚ฌ์šฉ๋Ÿ‰,ํŠธ๋žœ์žญ์…˜์˜ ์ˆ˜,๋„คํŠธ์›Œํฌ I/O ๋˜๋Š” ๋Œ€์—ญํญ,์‚ฌ์šฉ๋œ ํ”„๋กœ์„ธ์‹ฑ์˜ ์–‘
๋“ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋น„์šฉ์„ ์ง€๋ถˆํ•œ๋‹ค.์•„๋‹ˆ๋ฉด ์‚ฌ์šฉ์ž๋Š” ์ œ๊ณต๋œ ์„œ๋น„์Šค์˜ ์ˆ˜์ค€์—
๋”ฐ๋ผ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๊ธฐ๋„ ํ•œ๋‹ค.
๋‹จ์ 
- ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ,๋ณธ์ธ์ด ์›ํ•˜๋Š” ๋งŒํผ ์‚ฌ์šฉ์žํ™”๋˜์ง€
์•Š์€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์ฆ‰,๋งŽ์€ ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด
์œ ์šฉํ•˜๋‹ค๊ณ  ํ• ์ง€๋ผ๋„ ์‚ฌ์šฉ์ž ์‹œ์Šคํ…œ์˜ ๋‚ด๋ถ€์— ์„ค์น˜๋˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์ด ๋”
๋งŽ์€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
- ๋ชจ๋“  ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ WAN ์—ฐ๊ฒฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ๊ณ ์œ ์˜ ๋Œ€
๊ธฐ์‹œ๊ฐ„์„ ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๋Š” ์–ด๋ ค์›€์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด
๋Œ€์šฉ๋Ÿ‰ ํ”„๋กœ์„ธ์‹ฑ ์ž‘์—…์— ๋›ฐ์–ด๋‚˜๋‹ค ํ• ์ง€๋ผ๋„ ์‚ฌ์šฉ์ž์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋งŽ์€
์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•ด์•ผ ํ•œ๋‹ค๋ฉด ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ตœ๊ณ 
์˜ ๋ชจ๋ธ์€ ์•„๋‹ˆ๋‹ค.
-ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ์ธํ„ฐ๋„ท์ฒ˜๋Ÿผ ๊ตญ์ ์ด ์—†๋Š” ๋ฌด๊ตญ์  ์‹œ์Šคํ…œ์ด๋‹ค.๋˜ํ•œ ๋ถ„
์‚ฐ๋œ ์‹œ์Šคํ…œ์ƒ์—์„œ ํ†ต์‹ ์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์€ ํ•„์ˆ˜์ ์œผ๋กœ ๋‹จ๋ฐฉํ–ฅ์ด๋‹ค.
- ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์•ˆ์—์„œ '๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ์™€ ๋ณด์•ˆ'์„ ์Šค์Šค๋กœ ๊ด€
๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์‚ฌ์šฉ์ž์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹œ์Šคํ…œ์ƒ์—์„œ ์ด๋™ํ•˜๊ณ  ๋จธ๋ฌด๋ฅธ
๋‹ค๋ฉด ๋” ์ด์ƒ ์‚ฌ์šฉ์ž์˜ ๊ด€๋ฆฌ ์˜์—ญ์— ์žˆ์ง€ ์•Š๋‹ค.๊ทธ๋Ÿฐ๋ฐ ์‚ฌ์šฉ์ž๋Š” ๋ฒ•์ ์ธ
์กฐ์น˜๊ฐ€ ์‹œํ–‰๋œ๋‹ค๊ณ  ํ• ์ง€๋ผ๋„ ๊ธฐ์ˆ ์ ์ธ ๋ฌธ์ œ๋กœ ์ธํ•ด ์Šค์Šค๋กœ์˜ ๊ฐœ์ธ ์ •๋ณด ๋ณด
ํ˜ธ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์—†๋‹ค.๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋Š” ๋ˆ„
๊ตฐ๊ฐ€๊ฐ€ ๊ฐ€๋กœ์ฑ„๊ฑฐ๋‚˜ ๋ถˆ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์œ„ํ—˜์ด ์ปค์ง„๋‹ค.
-6-
ํƒ„๋ ฅ์  ํ™•์žฅ์„ฑ
๋Œ€๋ถ€๋ถ„์˜ ๋””๋ฐ”์ด์Šค๋“ค์ด ์ธํ„ฐ๋„ท์— ์ ‘์†๋˜๋Š” ์ง€๊ธˆ์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ์„œ๋ฒ„
๋กœ์˜ ์‚ฌ์šฉ์ž ์š”์ฒญ์„ ์˜ˆ์ธกํ•˜๊ธฐ ์–ด๋ ต๋‹ค.๊ทธ๋ฆฌ๊ณ  ์„œ๋น„์Šค ๊ณ„ํš ๋‹จ๊ณ„์—์„œ
์ •ํ™•ํ•œ ์šฉ๋Ÿ‰ ์‚ฐ์ •์ด ์–ด๋ ต๋‹ค.๋”ฐ๋ผ์„œ ์‹œ์Šคํ…œ์€ ๊ฐ‘์ž๊ธฐ ๋ถ€ํ•˜๊ฐ€ ์ฆ๊ฐ€ํ•˜
๊ฑฐ๋‚˜ ์ดˆ๊ธฐ ๊ณ„ํš ๋Œ€๋น„ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ์ด ๋งŽ์œผ๋ฉด ๋น ๋ฅด๊ณ  ๊ธฐ๋ฏผํ•˜๊ฒŒ
์‹œ์Šคํ…œ์„ ํ™•์žฅ,์ถ•์†Œํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.
๊ณ ๊ฐ€์šฉ์„ฑ
ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋Š” ๋ชจ๋“  ์ž์›(์„œ๋ฒ„,๋ฐ์ดํ„ฐ,ํŒŒ์ผ ๋“ฑ)์ด ์ค‘์•™ ์ง‘์ค‘๋ผ
์žˆ๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋‚ด์— ์กด์žฌํ•œ๋‹ค.๋”ฐ๋ผ์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์˜ ์•ˆ
์ •์„ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ๋ฌธ์„œ,๋ฉ”์ผ ๋“ฑ ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „ํ˜€
์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๋‹ค.๋”ฐ๋ผ์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋Š” ๊ธฐ์กด ์„œ
๋น„์Šค๋ณด๋‹ค ํ›จ์”ฌ ๋†’์€ ๊ณ ๊ฐ€์šฉ์„ฑ์„ ํ•„์š”๋กœ ํ•œ๋‹ค.
์ž๋™ํ™”๋œ
๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ
๊ตฌ๊ธ€์€ ์ˆ˜์‹ญ๋งŒ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„๋ฅผ ์šด์˜ ์ค‘์ด๋‹ค.์ด๋Ÿฐ ์„œ๋ฒ„๋ฅผ ์ˆ˜์ž‘์—…์œผ
๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ๋งŽ์€ ๋น„์šฉ์ด ์†Œ์š”๋œ๋‹ค.ํด๋ผ์šฐ๋“œ ์„œ
๋น„์Šค๋Š” ์ตœ์†Œ ์ˆ˜์‹ญโˆผ์ˆ˜๋ฐฑ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„๋‚˜ ์Šคํ† ๋ฆฌ์ง€ ๋“ฑ์„ ํ•„์š”๋กœ ํ•˜
๋ฉฐ,์ด๋“ค ๋ฆฌ์†Œ์Šค๋Š” ์ž๋™์œผ๋กœ ๊ด€๋ฆฌ๋˜์–ด์•ผ ํ•œ๋‹ค.
์ž๋™ ๋ณต๊ตฌ/์น˜๋ฃŒ
๊ณ ๊ฐ€์šฉ์„ฑ์„ ํ™•๋ณดํ•˜๊ณ  ์ž๋™ํ™”๋œ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ์†Œํ”„ํŠธ์›จ์–ด
์ž์ฒด์ ์œผ๋กœ ๋ณต๊ตฌ,์น˜๋ฃŒํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์€ ํ•ต์‹ฌ ์š”๊ตฌ ์‚ฌํ•ญ์ด๋ผ๊ณ  ํ• 
์ˆ˜ ์žˆ๋‹ค.์ด๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ์€ ๋” ์–ด๋ ค์›Œ์กŒ๋‹ค๊ณ  ํ• 
์ˆ˜ ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ๋Š” ๊ธฐ์กด์˜ ํ•˜๋“œ์›จ์–ด์—์„œ ํ•ด๊ฒฐํ•˜๋˜ ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ์†Œ
ํ”„ํŠธ์›จ์–ด๋กœ ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ํ•œ๋‹ค.ํ•˜๋“œ์›จ์–ด๋Š” ๋ง ๊ทธ๋ž˜๋„ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์œ 
์—ฐํ•˜๊ฒŒ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต๋‹ค.์ž๋™ํ™”๋œ ๊ด€๋ฆฌ,์œ ์—ฐํ•œ ํ™•์žฅ์„ฑ
[ํ‘œ 3]์•„์ผ€ํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ
์ œ 2์ ˆ ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ๊ตฌํ˜„์ ์ธ ๊ธฐ์ˆ ์„ ๋ณด๋ฉด ๊ฐ€์ƒํ™”์™€ ๋ถ„์‚ฐ ๊ธฐ์ˆ ์˜ ํšจ๊ณผ์ ์ธ ์‚ฌ์šฉ์—
์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜๋Š” ๋ถ„์‚ฐ ๊ธฐ์ˆ ์„ ํ•„์š”๋กœ ํ•˜๋Š” ๋ชจ๋“  ์‹œ์Šคํ…œ์— ์ ์šฉ ๊ฐ€๋Šฅํ•œ
์•„ํ‚คํ…์ฒ˜์ด๋‹ค.์ด๋Ÿฐ ๊ด€์ ์—์„œ ์•„ํ‚คํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ์€ ๋‹ค์Œ [ํ‘œ 3]๊ณผ ๊ฐ™๋‹ค[4].
-7-
๋“ฑ์„ ์ œ๊ณตํ•˜๋ ค๋ฉด ์†Œํ”„ํŠธ์›จ์–ด๋กœ ๋Œ€์‹ ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.๋”ฐ๋ผ์„œ
์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ ์  ๋” ๋˜‘๋˜‘ํ•ด์ ธ์•ผ ํ•˜๋ฉฐ,์ด๋Ÿฐ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ
์‚ฌ์šฉํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด๋„ ๋˜‘๋˜‘ํ•ด์ ธ์•ผ ํ•œ๋‹ค
ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜์˜ ๊ฐœ๋…์€ ๋‹ค์Œ [๊ทธ๋ฆผ 1]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 1> CloudArchitecture
-8-
ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์„œ๋น„์Šค ๋ชจ๋ธ์— ๋”ฐ๋ผ ๊ตฌ๋ถ„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
SaaS(SoftwareasaService)๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜,๊ด€๋ฆฌ,์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํฌํ•จํ•˜
๋Š” ์„œ๋น„์Šค ๋ชจ๋ธ์ด๋‹ค.SaaS ๋ชจ๋ธ์€ ์”ฌ(thin)ํด๋ผ์ด์–ธํŠธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด์„œ ์‚ฌ์šฉ์ž
์—๊ฒŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ๊ณตํ•˜๊ณ ,์‚ฌ์šฉ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์‚ฌ์šฉ์ž๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„
์‹œ์ž‘ํ•˜๋ฉด์„œ ๋งˆ์น  ๋•Œ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ฑ…์ž„์ด ์ฃผ์–ด์ง„๋‹ค.์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‹ค์šด๋กœ๋“œ
๋ถ€ํ„ฐ ์ธํ”„๋ผ ๊ตฌ์ถ•๊นŒ์ง€ ๋ชจ๋“  ๊ณผ์ •์ด ๋ฒค๋”์˜ ์ฑ…์ž„์ด๋‹ค[2,3].
SaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 2]์™€ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 2> SoftwareasaService
-9-
IaaS(InfrastructureasaService)๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์ƒ ๋จธ์‹ ,๊ฐ€์ƒ ์ €์žฅ์žฅ์น˜,๊ฐ€์ƒ ์ธ
ํ”„๋ผ(Infrastructure)์™€ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
IaaS ์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ ๋ชฉ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด๋„ ๋ชจ๋“  ์ธํ”„
๋ผ๋ฅผ ๊ด€๋ฆฌํ•ด ์ค€๋‹ค.์ฆ‰,์šด์˜์ฒด์ œ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜,์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค
๋“ฑ์„ ๋ชจ๋‘ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค[2,3].
IaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 3]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 3> InfrastructureasaService
-10-
PaaS(Platform asa Service)๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฐ€์ƒ ๋จธ์‹ ,์šด์˜์ฒด์ œ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜,
์„œ๋น„์Šค,๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ,ํŠธ๋žœ์žญ์…˜,๊ด€๋ฆฌ๊ตฌ์กฐ ๋“ฑ์„ ์ œ๊ณตํ•œ๋‹ค.์‚ฌ์šฉ์ž๋Š” ์žˆ๋Š” ์• ํ”Œ๋ฆฌ
์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ,์šด์˜์ฒด์ œ,์‚ฌ์šฉ ๊ฐ€๋Šฅ
ํ•œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉฐ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋™์•ˆ ํ•ด๋‹น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜,๊ด€
๋ฆฌํ•˜๋Š” ์ฑ…์ž„์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ง„๋‹ค[2].
PaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 4]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 4> Platform asaService
-11-
์ œ 3์ ˆ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€
ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค ์ค‘์—์„œ ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€(Cloud
Storage)๋˜๋Š” DaaS(DataasaService)๋ผ๋Š” ์šฉ์–ด๋กœ ํ‘œํ˜„๋œ๋‹ค.ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€
๋Š” ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•˜์—ฌ ๊ฐ€์ƒํ™”๋œ ์Šคํ† ๋ฆฌ์ง€ ์ž์›์„ ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ์ œ๊ณตํ•˜๋Š”
๊ฒƒ์œผ๋กœ ์ผ๋ฐ˜์ ์œผ๋กœ ๋Œ€๊ทœ๋ชจ ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•˜๊ณ ,ํŠน์ • ์ง€๋ฆฌ์  ์œ„์น˜์— ๊ณ ์ •๋˜์ง€ ์•Š์œผ๋ฉฐ,
์‚ฌ์šฉ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ณ ,์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋˜๋Š” ํ• ๋‹น๋œ ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์— ๋”ฐ๋ฅธ ๊ฐ€๊ฒฉ
์ •์ฑ…์„ ์‚ฌ์šฉํ•˜๋ฉฐ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์—ฐํ•œ ํŠน์ง• ๋“ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.
Symantec์—์„œ ๋ฐœํ‘œํ•œ โ€œStateoftheDataCenterReport2008โ€์— ๋”ฐ๋ฅด๋ฉด ์ „ ์„ธ๊ณ„
21๊ฐœ๊ตญ์˜ 1,600๊ฐœ ๊ธฐ์—…์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์‹ค์‹œํ•œ ์กฐ์‚ฌ์—์„œ ๊ธฐ์—…์˜
ERP(Enterprise Resource Planning),CRM(Customer Relationship Management),
๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹๊ณผ ๋ถ„์„ ๋“ฑ๊ณผ ๊ฐ™์€ ๊ธฐ์—… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค๊ณผ ํŠนํžˆ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—
์˜ํ•ด ์š”๊ตฌํ•˜๋Š” ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์ด ๊ณ„์†ํ•ด์„œ ์ฆ๊ฐ€ํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚œ ๋ฐ˜๋ฉด,์‹ค์ œ
๋กœ ์Šคํ† ๋ฆฌ์ง€ ํ™œ์šฉ๋ฅ ์€ 55% ์ •๋„๋กœ ์ธก์ •๋˜๊ณ  ์žˆ๋‹ค.๋”ฐ๋ผ์„œ ์ด๋Ÿฌํ•œ ์Šคํ† ๋ฆฌ์ง€ ํ™œ์šฉ๋ฅ 
์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ๋ฐฉ์•ˆ์œผ๋กœ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๋˜๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ๋“ฑ์„ ๊ณ ๋ คํ•˜๊ณ 
์žˆ๋Š” ๊ฒƒ์œผ๋กœ ์กฐ์‚ฌ๋˜์—ˆ๋‹ค.
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์ด ํ•„์š”ํ•˜๋‹ค.๋”ฐ๋ผ
์„œ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ์ด๊ธฐ์ข… ์Šคํ† ๋ฆฌ์ง€ ํ†ตํ•ฉ,๋ฐ์ดํ„ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜,๋ฐฑ์—…,์ค‘๋ณต
๋ฐ์ดํ„ฐ ์ œ๊ฑฐ,์žฅ์•  ๋ณต๊ตฌ ๋“ฑ๊ณผ ๊ฐ™์€ ์„œ๋น„์Šค๋ฅผ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜
๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ๋ณดํ†ต ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์„ฑ์„ ๊ฐ€์ง„๋‹ค.์ฒซ์งธ,๋Œ€๊ทœ๋ชจ ํ™•์žฅ์ด ๊ฐ€๋Šฅ
ํ•˜๋‹ค.๋‘˜์งธ,์ง€๋ฆฌ์  ์œ„์น˜์— ๊ณ ์ •๋˜์ง€ ์•Š๋Š”๋‹ค.์…‹์งธ,์ƒ์šฉ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค.
๋„ท์งธ,์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋˜๋Š” ํ• ๋‹น๋œ ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์— ๋”ฐ๋ฅธ ๊ฐ€๊ฒฉ ์ •์ฑ…์„ ๊ฐ–๋Š”๋‹ค.๋‹ค์„ฏ์งธ,
์‘์šฉ์— ์ ์šฉํ•˜๊ธฐ ์‰ฝ๋‹ค.
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ํŠธ๋žœ์žญ์…˜ ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ์ผ์‹œ์ ์ธ ์ €์žฅ์†Œ ๋ณด๋‹ค
-12-
๋Š” ์˜ˆ์ธกํ•  ์ˆ˜ ์—†๋Š” ์ €์žฅ ๊ณต๊ฐ„ ํ™•์žฅ๊ณผ ๊ฐ’์‹ธ๊ณ  ์˜ค๋žซ๋™์•ˆ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ ‘๊ทผํ•˜๊ธฐ
๊ฐ„๋‹จํ•œ ์ €์žฅ์†Œ๋กœ ์ ๋‹นํ•˜๋‹ค.
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค์—์„œ
์ œ๊ณตํ•˜๋Š” API๋ฅผ ๊ฐ€์ง€๊ณ  ์š”๊ตฌํ•˜๋Š” ์‘์šฉ์„ ๊ฐœ๋ฐœํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค.ํ•˜์ง€๋งŒ
์ตœ๊ทผ์—๋Š” NFS,CIFS,FTP์™€ ๊ฐ™์€ ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•˜์—ฌ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜
์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ๋„ ํ•œ๋‹ค.๋˜๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€์™€ CDN์„ ํ†ตํ•ฉํ•จ์œผ๋กœ์จ
CDN์ƒ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์œ„์น˜์—์„œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€์˜ ์žฅ์ ์€ ๋น„์šฉ์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์ž„๋Œ€ํ•˜์—ฌ ์ €์žฅ๋œ
๋ฐ์ดํ„ฐ์˜ ์šฉ๋Ÿ‰๋งŒํผ์˜ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋Š” ์„œ๋น„์Šค์™€ ๋ฐ์ดํ„ฐ ์ด๋™๋Ÿ‰์— ๋”ฐ๋ผ ๋น„์šฉ์„ ์ง€๋ถˆ
ํ•˜๋Š” ์„œ๋น„์Šค๊ฐ€ ์žˆ๋‹ค.ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฑ์—…์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ,
WAN์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ๋‹ค.๋‹จ์ ์œผ๋กœ๋Š” ๋Œ€์—ญํญ์— ๋”ฐ๋ผ ์„ฑ๋Šฅ์ด ์ขŒ์šฐ๋ 
์ˆ˜ ์žˆ์œผ๋ฉฐ ์Šคํ† ๋ฆฌ์ง€์˜ ๊ฐ€์šฉ์„ฑ์— ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š”
์Šคํ† ๋ฆฌ์ง€ ๊ณต๊ธ‰์ž๊ฐ„์˜ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์— ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ๋“ฑ ๊ธ€๋กœ๋ฒŒ
๋„คํŠธ์›Œํฌ ์ค‘๋‹จ ๋“ฑ์˜ ๋ฌธ์ œ์— ์˜ํ–ฅ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค[5,6].
CloudStorage์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 5]์™€ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 5> CloudStorage
-13-
์ œ 3์žฅ HybridStorageAPI์˜ ์„ค๊ณ„
์ œ 1์ ˆ ์ „์ฒด์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ
๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ์ € ๋น„์šฉ์œผ๋กœ ์šด์˜ ๊ฐ€๋Šฅํ•œ Storage๊ธฐ์ˆ ์„ ํ™•๋ณดํ•˜๊ณ  OpenSource
๊ธฐ๋ฐ˜์˜ StorageSolution์„ ๋„์ž…ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์‚ฌ์—… ํ™•์žฅ์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ฐ˜์„
๋งˆ๋ จํ•˜๊ธฐ ์œ„ํ•ด ์—ฐ๊ตฌ๋ฅผ ์‹œ์ž‘ํ•˜์˜€๋‹ค.
POC(ProofofConcept)๋ฅผ ์œ„ํ•œ ์ตœ์†Œ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์„ ์›์น™์œผ๋กœ ํ•˜๋ฉฐ,์„ฑ๋Šฅ ๋ฐ ์•ˆ์ •
์„ฑ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ๊ธฐ์กด CloudSystem,์ƒ์šฉ Network๋ฐ ์šด์˜ ์žฅ๋น„๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ตฌ
์„ฑํ•˜์˜€๋‹ค.
Hybrid Storage Access Server(HSAS)๋Š” ์ „๋ฉด์— ํด๋ผ์ด์–ธํŠธ๋ฅผ ์œ„ํ•œ ๋‹จ์ผ
API(HTTP ๊ธฐ๋ฐ˜ Request/Response๋ฐฉ์‹)๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์ด๋ฉด์—๋Š” ๋‹ค์ค‘ Storage๊ณ ์œ 
์˜ StorageAdaptor๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๋‹ค.
HSAS๋Š” RESTful๋ฐฉ์‹ ๋˜๋Š” POSIX ๋ฐฉ์‹์œผ๋กœ ์ œ๊ณต๋˜๋Š” ์ด๊ธฐ์ข… Storage๋ฅผ ํ•œ๋ฐ
๋ฌถ์–ด ํด๋ผ์ด์–ธํŠธ์— ๋‹จ์ผํ•œ ๊ณต์šฉ์˜ API๋ฅผ ์ œ๊ณตํ•˜๋Š” HybridStorageGateway ์—ญํ• 
์„ ์ˆ˜ํ–‰ํ•œ๋‹ค.
HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 6]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 6> HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„
-14-
HybridStorage์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋‹ค์Œ [ํ‘œ 4]์™€ ๊ฐ™๋‹ค.
๊ตฌ์„ฑ์š”์†Œ ์„ค ๋ช… ๋น„๊ณ 
SKT EasyStorage
์•„๋งˆ์กด S3 API์™€ ํ˜ธํ™˜๋˜๋Š” RESTful๊ธฐ๋ฐ˜์˜ API
์ œ๊ณตํ•˜๋Š” Storage์„œ๋น„์Šค[7]
OpenStackSwift
์•„๋งˆ์กด S3์™€ ์œ ์‚ฌํ•˜๋ฉฐ ์ž์ฒด ์ด์ค‘ํ™”์™€ Failover๊ธฐ
๋Šฅ ์ง€์›ํ•˜๋Š” Storage[8]
RedhatGluster
์˜คํ”ˆ ์†Œ์Šค ๊ธฐ๋ฐ˜์˜ ScaleOut๋ฐฉ์‹์˜ NAS
MetaServer๊ฐ€ ํ•„์š”์—†๊ณ  Scale-outํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ
์œผ๋กœ ๋ชจ๋“ˆ ๊ตฌ์กฐ[9]
HybridStorageAccess
Server
StorageGateway๊ธฐ๋Šฅ๊ณผ HybridAPI๋ฅผ ํ†ตํ•ด ์„œ๋น„
์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„
CloudOpenAPIServer
Open Platform์„ ์œ„ํ•œ South Bound์„ ๊ตฌํ˜„ํ•œ
OpenAPI์„œ๋ฒ„
CloudOpenAPIDB OpenAPI์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ Database
CloudPOC Server
Open API๋ฐ Hybrid Storage Access Server์™€
Cloud์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™
CloudMetaDB CloudMeta์ •๋ณด๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” Database
Client
Storage๋ฐ API์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ ํˆด
ํ˜น์€ Hybrid Storage Access Server๋ฅผ ์—ฐ๋™๋˜๋Š”
์‹œ์Šคํ…œ
[ํ‘œ 4]HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ์š”์†Œ
-15-
1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ
User๋Š” HSAS์— ํŒŒ์ผ ์—…๋กœ๋“œ ์š”์ฒญ์„ ํ•˜๊ณ  ํŒŒ์ผ์„ Storage์— ์—…๋กœ๋“œ ํ•œ๋‹ค.ํŒŒ์ผ
์—…๋กœ๋“œ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด HSAS๋Š” Cloud POC ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์—…๋กœ๋“œ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ
Metadata๋ฅผ ์ €์žฅํ•œ๋‹ค.ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 7]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 7> ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค
-16-
2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ
User๋Š” CloudOpenAPI์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์œ„ํ•œ token์„ ๋ฐœ๊ธ‰ ๋ฐ›๋Š”๋‹ค.
๋ฐœ๊ธ‰๋ฐ›์€ token์„ ์ด์šฉํ•˜์—ฌ USER๋Š” HSAS์— ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์š”์ฒญํ•˜๊ณ  storage์—
์„œ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•œ ํ›„ ์ข…๋ฃŒํ•œ๋‹ค.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 8]๊ณผ ๊ฐ™
๋‹ค.
<๊ทธ๋ฆผ 8> ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค
-17-
3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ
User๋Š” Cloud Open API์„œ๋ฒ„์— ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์š”์ฒญ์„ ํ•œ๋‹ค.Cloud Open API
์„œใ…“๋Š” CloudPOC์„œ๋ฒ„๋ฅผ ํ†ตํ•ด MetaDatabase๋ฅผ ์กฐํšŒํ•˜์—ฌ ํŒŒ์ผ ๋ชฉ๋ก์„ ํš๋“ํ•œ ํ›„
User์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 9]์™€ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 9> ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค
-18-
์ œ 2์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ตฌ์„ฑ
HybridStorageAPI์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 10]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 10> HybridStroageAPI๊ฐœ๋…๋„
Hybrid Storage API๋Š” ๋‹ค์ˆ˜์˜ Storage์—ฐ๋™์ ˆ์ฐจ๋ฅผ Wrappingํ•˜๊ณ  ๊ธฐ๋Šฅ์„
Encapsulationํ•˜๊ณ  User์—๊ฒŒ ๋‹จ์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ Storage์— ๋Œ€ํ•œ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ
๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ํŠน์ • Storage์— ์˜์กด์„ฑ์—์„œ ๋ฒ—์–ด๋‚˜ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ๋ฅผ
์ œ๊ณตํ•˜๊ฒŒ ๋œ๋‹ค.
Hybrid Storage Access Server(HSAS)๋Š” Hybrid Storage API์„ ๊ธฐ๋ฐ˜์œผ๋กœ
InboundHandler,Controller๋ฐ OutboundHandler๊ฐœ๋…์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ Storage๋ณ„
Adaptation์„ ์ง€์›ํ•จ์œผ๋กœ์จ ํŒŒ์ผ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์˜€๋‹ค.
๊ทธ๋ฆฌ๊ณ  Storage๊ฐ€ ์ œ๊ณตํ•˜๋Š” APIํ˜ธ์ถœ์„ ์œ„ํ•œ ๊ณผ์ •์„ ๋‹จ์ˆœํ™”์‹œ์ผœ Storage๋ณ„ ์„œ
-19-
๋น„์Šค ์ถ”๊ฐ€๊ฐ€ ์šฉ์ดํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ–์ถ”๋Š”๋ฐ ์ดˆ์ ์„ ๋งž์ถ”์–ด ์„ค๊ณ„ ๋˜์—ˆ๋‹ค.
HybridStorageAccess์„œ๋ฒ„์˜ ๊ตฌ์กฐ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 11]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 11> HybridStorageAccess์„œ๋ฒ„ ๊ตฌ์กฐ
1.InboundHandler๊ตฌ๊ฐ„
User์™€ HSAS๊ฐ„ ์—ฐ๋™์€ Inbound Handler์—์„œ ์ฒ˜๋ฆฌํ•œ๋‹ค. User๊ฐ€ Inbound
Handler์„ ํ†ตํ•ด ์—…๋กœ๋“œ๊ฐ€ ์„ฑ๊ณตํ•œ ํŒŒ์ผ์€ OutboundHandler์— ์˜ํ•ด ์ง€์ •๋œ Storage
์— ์ €์žฅ๋œ๋‹ค.User๊ฐ€ ์š”์ฒญํ•œ ๋‹ค์šด๋กœ๋“œ๋Š” InboundHandler์— ์˜ํ•ด 1์ฐจ์ ์œผ๋กœ ๋ถ„๊ธฐ๋˜
๊ณ  ์ง€์ •๋œ Storage๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์„ ํš๋“ํ•˜๋ฉด์„œ ๋™์‹œ์— User๋กœ ๋‹ค์šด๋กœ๋“œ ์‹œํ‚จ๋‹ค.
2.OutboundHandler๊ตฌ๊ฐ„
๊ฐ Storage๋ณ„ Handler๊ฐ€ Adaptationํ˜•ํƒœ๋กœ ์กด์žฌํ•œ๋‹ค.User๊ฐ€ ์ง€์ •ํ•œ Storage๋กœ
-20-
์—…๋กœ๋“œ ํ•˜๊ฑฐ๋‚˜ ์ง€์ •๋œ Storage๋กœ๋ถ€ํ„ฐ ๋‹ค์šด๋กœ๋“œํ•œ๋‹ค.
3.Controller๊ตฌ๊ฐ„
Controller๋Š” InboundHandler์™€ OutboundHandler์‚ฌ์ด์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ด€๋ฆฌ
ํ•˜๊ณ  ํ†ต์ œํ•œ๋‹ค.
4.์—ฐ๋™ ํ”„๋กœํ† ์ฝœ ๋ฐฉ์‹ ๋ฐ ์†ก์ˆ˜์‹  ์ „๋ฌธ
User ์—ฐ๋™ ํ”„๋กœํ† ์ฝœ๋กœ์จ REST ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค.REST(Representational
StateTransfer)๋Š” ROA(ResourceOriented Architecture)๋ฅผ ๋”ฐ๋ฅธ ์›น์„œ๋น„์Šค ๋””์ž์ธ
ํ‘œ์ค€์ด๋‹ค.
HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ Method๋ฅผ ์ œ๊ณตํ•œ๋‹ค.
์ฒซ์งธ,๋ฆฌ์†Œ์Šค ์กฐํšŒ๋ฅผ ์œ„ํ•œ GET,๋‘˜์งธ,๋ฆฌ์†Œ์Šค ๊ฐฑ์‹ ์„ ์œ„ํ•œ PUT,์…‹์งธ,๋ฆฌ์†Œ์Šค ์ƒ
์„ฑ์„ ์œ„ํ•œ POST,๋„ท์งธ,๋ฆฌ์†Œ์Šค ์‚ญ์ œ๋ฅผ ์œ„ํ•œ DELETE๋‹ค.
HybridStorageAPI์˜ ๊ฐœ๋ฐœํ•ญ๋ชฉ ๋ฆฌ์ŠคํŠธ๋Š” ๋‹ค์Œ [ํ‘œ 5]์™€ ๊ฐ™๋‹ค.
1.OutboundHandler๊ฐœ๋ฐœํ•ญ๋ชฉ
1.1 EasyStorageFileUpload/Download
1.2 SwiftFileUpload/Download
1.3 GlusterFileWriting/Reading
2.InboundHandler๊ฐœ๋ฐœํ•ญ๋ชฉ
2.1 ์‚ฌ์šฉ์ž ์š”์ฒญ ๋ฐ ์‘๋‹ต ๊ธฐ๋Šฅ
3.HybridStorageAPI(Controller)
3.1 ์‚ฌ์šฉ์ž ์š”์ฒญ์— ๋Œ€ํ•œ ๋ถ„๊ธฐ์™€ ํ†ต๊ณ„
4.StorageCommonFunction
4.1 Storage๋ณ„ ์ธ์ฆ๋ฐฉ์‹ ๊ตฌํ˜„
[ํ‘œ 5]HybridStorageAPI๊ฐœ๋ฐœํ•ญ๋ชฉ
-21-
์ œ 3์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ
๊ตฌ๊ฐ„๋ณ„ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ์ •์˜๋ฅผ ํ•œ๋‹ค.Hybrid StorageAPI
์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 12]์™€ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 12> HybridStorageAPI์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
์ด 5๊ฐœ์˜ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ,๊ฐ๊ฐ์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 6]๊ณผ ๊ฐ™๋‹ค.
์ธํ„ฐํŽ˜์ด์Šค ์ •์˜
IF_USER_COA: Request (HTTP) /
Response(XML)
Client์™€ CloudOpenAPI์„œ๋ฒ„ ๊ตฌ๊ฐ„
IF_USER_HSA:Request(HTTP)/
Response(XML)
Client์™€ Hybrid StorageAccess ์„œ๋ฒ„ ๊ตฌ๊ฐ„,
Upload๋Š” Multipart๋กœ
IF_HSA_STRG:Request(HTTP)/
Response(XML)
Hybrid Storage Access ์„œ๋ฒ„์™€ Storage์„œ๋ฒ„
๊ตฌ๊ฐ„
IF_HSA_CC: Request (HTTP) /
Response(XML)
HybridStorageAccess์„œ๋ฒ„์™€ CloudPOC ์„œ
๋ฒ„ ๊ตฌ๊ฐ„
IF_COA_CC: Request (HTTP) /
Response(XML)
Cloud Open API์„œ๋ฒ„์™€ Cloud POC ์„œ๋ฒ„ ๊ตฌ
๊ฐ„
[ํ‘œ 6]์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ
IF_USER_HSA, IF_HSA_STRG์— ๋Œ€ํ•ด์„œ ํฌํ•จ์„ ํ•˜๋ฉฐ, IF_USER_COA,
-22-
IF_COA_CC,IF_HSA_CC์— ๋Œ€ํ•ด ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค.ํฌํ•จ๋˜์ง€ ์•Š๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋Š”
ํ•„์š”ํ•œ ์„œ๋น„์Šค๋ณ„๋กœ ๋ณ„๋„์˜ ํ”„๋กœํ† ์ฝœ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์—ฌ๊ธฐ์„œ๋Š” ๊ฐœ๋…๋งŒ์„ ๊ณต์œ ํ•œ
๋‹ค.
1.IF_USER_HSA
FILE_UP_HSA :Cloud์˜ HybridStorage์— ํŒŒ์ผ์„ Uploadํ•˜๊ธฐ ์œ„ํ•œ ์—ฐ๋™ ๊ทœ๊ฒฉ
์ด๋‹ค.์ƒ์„ธ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 7]๊ณผ ๊ฐ™๋‹ค.
Protocol REST
Resource-Catego
ryURI
/token์กฐํšŒ๋ฅผ ํ†ตํ•˜์—ฌ ์ „๋‹ฌ๋ฐ›์€ URL์„ ํ†ตํ•ด ์—…๋กœ๋“œ ํ•œ๋‹ค.
enctype="multipart/form-data", method="post"๋ฐฉ์‹์œผ๋กœ ์ „๋‹ฌํ•ด์•ผ
ํ•œ๋‹ค.
์—…๋กœ๋“œ ์š”์ฒญ์‹œ storagetype์„ ์ „๋‹ฌํ•ด์•ผ ํ•œ๋‹ค.
HTTP Method POST
Pre-Conditions N/A
Post-Conditions N/A
Idempotent Y
Security N/A
Authentication PRIVATE
Multipart Y
T hrottling
Policy
Policy Description
Application N/A
User N/A
Public N/A
Owner(email)
[ํ‘œ 7]FILE_UP_HSA Overview
-23-
FILE_UP_HSA RequestScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 8]๊ณผ ๊ฐ™๋‹ค.
Parameters
Name
Data
Type
Mandatory Description
Remar
ks
storage String
Easy storage-> ES,Switft-> SW,
Cluster-> GL
Payloads
Name
Data
Type
Mandatory Description
Remar
ks
N/A
PayloadSchema(XSD)
N/A
XML Format
N/A
[ํ‘œ 8]FILE_UP_HSA RequestDefinition
FILE_UP_HSA ResponseScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 9]์™€ ๊ฐ™๋‹ค.
Parameters
Name
Data
Type
Mandatory Description
Remar
ks
N/A
Schema(XSD)
N/A
XML Format
N/A
[ํ‘œ 9]FILE_UP_HSA ResponseDefinition
-24-
FILE_UP_HSA ErrorCode์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 10]๊ณผ ๊ฐ™๋‹ค.
Code Messages HTTP StatusCode
403 Forbidden 403Forbidden
404 NotFound 404NotFound
408 RequestTimeout 408RequestTimeout
500 InternalServerError 500InternalServerError
502 BadGateway 502BadGateway
504 GatewayTimeout 504GatewayTimeout
[ํ‘œ 10]FILE_UP_HSA ErrorCode
FILE_DW_HSA :Cloud์˜ HybridStorage์— ์กด์žฌํ•˜๋Š” ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ธฐ ์œ„
ํ•œ ๊ทœ๊ฒฉ์ด๋ฉฐ ์ƒ์„ธํ•œ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 11]๊ณผ ๊ฐ™๋‹ค.
Protocol REST
Resource-Catego
ryURI
/images,/music,/movies,/documents API๋“ฑ์„ ํ†ตํ•˜์—ฌ ํš๋“ํ•œ
downloadURL์ด๋‹ค.
HTTP Method GET
Pre-Conditions N/A
Post-Conditions N/A
Idempotent Y
Security N/A
Authentication PRIVATE
Multipart Y
T hrottling
Policy
Policy Description
Application N/A
User N/A
Public N/A
Owner(email)
[ํ‘œ 11]FILE_DW_HSA Overview
-25-
FILE_DW_HSA RequestScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 12]๊ณผ ๊ฐ™๋‹ค.
Parameters
Name
Data
Type
Mandatory Description
Remar
ks
N/A
Payloads
Name
Data
Type
Mandatory Description
Remar
ks
N/A
PayloadSchema(XSD)
N/A
XML Format
N/A
[ํ‘œ 12]FILE_DW_HSA RequestDefinition
FILE_DW_HSA ResponseScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 13]๊ณผ ๊ฐ™๋‹ค.
Parameters
Name
Data
Type
Mandatory Description Remarks
N/A
Schema(XSD)
N/A
XML Format
N/A
[ํ‘œ 13]FILE_DW_HSA ResponseDefinition
-26-
FILE_DW_HSA ErrorCode์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 14]์™€ ๊ฐ™๋‹ค.
Code Messages HTTP StatusCode
403 Forbidden 403Forbidden
404 NotFound 404NotFound
408 RequestTimeout 408RequestTimeout
500 InternalServerError 500InternalServerError
502 BadGateway 502BadGateway
504 GatewayTimeout 504GatewayTimeout
[ํ‘œ 14]FILE_DW_HSA ErrorCode
2.IF_HSA_STRG
FILE_UP_ES :EasyStorageFileUploadRequest/Response
FILE_UP_ES์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 15]์™€ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y BucketName String Object๋ฅผ Uploadํ•  Bucket์ด๋ฆ„
Y Key String Uploadํ•  Object์ด๋ฆ„
Y Object file Uploadํ•  File
[ํ‘œ 15]FILE_UP_ES RequestParameter
-RequestSyntax
PUT /KeyHTTP/1.1
Host:BucketName.es.tcloudbiz.com
Authorization:signatureValue
Date:date
Content-MD5:3+S1ojLTkRGOHQwv50kfsg==
Content-Type:application/octec-stream
Content-Length:Length
-RequestBody
-27-
ObjectData
-Responsesample
HTTP/1.1200OK
x - a m z - i d - 2 :
gyB+3jRPnrkN98ZajxHXr3u7EFM67bNgSAxexeEHndCX/7GRnfTXxReKUQF28IfP
ETag:7a7ec6062e6f7d92062811334d5ff342
Date:Mon,24Sep201207:29:34GMT
Accept-Ranges:bytes
Server:Restlet-Framework/2.0.8
x-amz-request-id:22264198756838A9
Access-Control-Allow-Origin:*
x-amz-version-id:
Content-Length:0
PUT /KeyHTTP/1.1
Host:BucketName.es.tcloudbiz.com
Authorization:signatureValue
Date:date
Content-MD5:3+S1ojLTkRGOHQwv50kfsg==
Content-Type:application/octec-stream
Content-Length:Length
-28-
FILE_DW_ES:EasyStorageFileDownloadRequest/Response
FILE_DW_ES์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 16]๊ณผ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y BucketName String Object๋ฅผ Uploadํ•  Bucket์ด๋ฆ„
Y Key String Uploadํ•  Object์ด๋ฆ„
N Range Integer ๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ ์ง€์ •
[ํ‘œ 16]FILE_DW_ES RequestParameter
-RequestSyntax
GET /KeyHTTP/1.1
Host:BucketName.es.tcloudbiz.com
Authorization:signatureValue
Date:date
Content-Type:application/x-www-form-urlencoded;charset=utf-8
-Responsesample
HTTP/1.1200OK
x-amz-id-2:
gyB+3jRPnrkN98ZajxHXr3u7EFM67bNgSAxexeEHndCX/7GRnfTXxReKUQF28IfP
Last-Modified:Mon,24Sep201207:29:34GMT
ETag:"7a7ec6062e6f7d92062811334d5ff342"
Date:Mon,24Sep201207:48:23GMT
Accept-Ranges:bytes
Server:Restlet-Framework/2.0.8
Vary:Accept-Charset,Accept-Encoding,Accept-Language,Accept
x-amz-request-id:99ED88EG5895DC46
Access-Control-Allow-Origin:*
Content-Type:application/octet-stream
Content-Length:594427
-29-
-ResponseBody
ObjectData
FILE_AUTH_SW :SWIFT AuthenticationRequest/Response
FILE_AUTH_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 17]๊ณผ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y host String ์ธ์ฆ ์„œ๋ฒ„ URL
Y X-Storage-User String UserID
Y X-Storage-Pass String APIKey
[ํ‘œ 17]FILE_AUTH_SW RequestParameter
-RequestSyntax
GET /auth/<apiversion> HTTP/1.1
Host:์ธ์ฆ ์„œ๋ฒ„
X-Storage-User:UserID
X-Storage-Pass:APIKey
FILE_AUTH_SW์— ๋Œ€ํ•œ ResponseHeader์˜ ์ •์˜๋Š” ์•„๋ž˜ [ํ‘œ 18]๊ณผ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y X-Storage-Url String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL
Y X-Auth-Token String
์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค ์‚ฌ์šฉ ์ธ์ฆ์„
์œ„ํ•œ ํ† ํฐ
[ํ‘œ 18]FILE_AUTH_SW ResponseHeaders
-30-
-Responsesample
HTTP/1.1200OK
Server:nginx/1.1.14
Date:Mon,24Sep201208:01:38GMT
Content-Length:126
Connection:keep-alive
X-Storage-Url:
https://ssproxy.ucloudbiz.olleh.com/v1/AUTH_a8b9c2b7-f6c3-4d3d-a4e9-ee04332652a5
X-Storage-Token:AUTH_tkfc98e1a2275e4d64aea58bf9295f87b3
X-Trans-Id:txbf2c8d34341a4a5497e955f2cc9d3725
X-Auth-Token:AUTH_tkfc98e1a2275e4d64aea58bf9295f87b3
FILE_UP_SW :SWIFT FileUploadRequest/Response
FILE_UP_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 19]๊ณผ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y Host String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL
Y X-Auth-Token String ์‚ฌ์šฉ์ž ์ธ์ฆ ํ† ํฐ
Y Content-Type String Objectํ˜•์‹
Y Content-Length String Objectํฌ๊ธฐ
Y Object ObjectData
[ํ‘œ 19]FILE_UP_SW RequestParameter
-31-
-RequestSyntax
PUT /<apiversion>/<account>/<container>/<object> HTTP/1.1
Host:StorageServiceServer
Date:Mon,24Sep201208:01:38GMT
X-Auth-Token:AuthenticationToken
Content-MD5:bmhiQvUStNzddyWKob4Svg==
Content-Type:application/x-www-form-urlencoded;charset=utf-8
Content-Length:590511
Connection:keep-alive
-RequestBody
ObjectData
-Responsesample
HTTP/1.1201Created
Content-Length:18
Content-Type:text/html;charset=UTF-8
ETag:6e686242f512b4dcdd77258aa1be12be
Last-Modified:Mon,24Sep201208:01:39GMT
X-Trans-Id:tx6b08892a99e9465e9067cb86c9046f2c
Date:Mon,24Sep201208:01:39GMT
Connection:keep-alive
-32-
FILE_DW_SW :SWIFT FileDownloadRequest/Response
FILE_DW_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 20]๊ณผ ๊ฐ™๋‹ค.
Required Parameter Format Description Remarks
Y Host String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL
Y
X-Auth-Toke
n
String ์‚ฌ์šฉ์ž ์ธ์ฆ ํ† ํฐ
N Range Integer ๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ ์ง€์ •
[ํ‘œ 20]FILE_DW_SW RequestParameter
-RequestSyntax
GET /<apiversion>/<account>/<container>/<object> HTTP/1.1
Host:StorageServiceServer
X-Auth-Token:AuthenticationToken
-Responsesample
HTTP/1.1200OK
Last-Modified:Mon,24Sep201208:01:39GMT
ETag:6e686242f512b4dcdd77258aa1be12be
Accept-Ranges:bytes
Content-Length:590511
Content-Type:application/x-www-form-urlencoded;charset=utf-8
X-Trans-Id:tx082bc4b037ea4cf08fa146a2593df75e
Date:Mon,24Sep201208:19:26GMT
Connection:keep-alive
-ResponseBody
ObjectData
-33-
FILE_UP_GL:POSIX๊ธฐ๋ฐ˜์˜ FileI/O์„ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•œ๋‹ค.
publicvoidwriteFile(){
Stringlocation=ConfigManager.getConfig().getGLRoot();
try{
StringfileLocationAndFileName=location+fileUpload.getFilename();
FileOutputStream fos = new
FileOutputStream(fileLocationAndFileName);
FileChannelfileChannel=fos.getChannel();
FileInputStream is=new FileInputStream(fileUpload.getFile());
//Noencryption-usezero-copy.
finalFileRegion region = new DefaultFileRegion(is.getChannel(),0,
is.available());
region.transferTo(fileChannel,region.getPosition());
fileChannel.close();
fos.close();
is.close();
listener.onStorageRequestSuccess(createObjectID(ConfigManager.getConfig().getStorage
Gluster()));
}catch(Exceptione){
e.printStackTrace();
}
}
-34-
privatevoidwriteResponseDownload(StringfileName)throwsCommonException{
try{
File file = new File(ConfigManager.getConfig().getGLRoot() +
fileName);
String lastModified = ServiceUtils.formatRfc822Date(new
Date(file.lastModified()));
Extentextent=getExtent(file.length());
HttpResponse clientResponse = new
DefaultHttpResponse(HttpVersion.HTTP_1_1,HttpResponseStatus.OK);
clientResponse.setHeader(HttpHeaders.Names.LAST_MODIFIED,
lastModified);
clientResponse.setHeader(HttpHeaders.Names.ACCEPT_RANGES,
HttpHeaders.Values.BYTES);
clientResponse.setHeader(HttpHeaders.Names.ETAG,
generateETag(lastModified,file.length()));
clientResponse.setHeader(HttpHeaders.Names.CONTENT_TYPE,
"application/octet-stream");
clientResponse.setHeader(HttpHeaders.Names.CONTENT_LENGTH,
file.length());
clientResponse.setHeader("Content-Disposition",
"attachment;filename="+file.getName());
writeResponse(channel,clientResponse);
FileInputStream fis=new FileInputStream(file);
final FileRegion region = new DefaultFileRegion(fis.getChannel(),
extent.getStart(),extent.getEnd());
ChannelFuturefuture=channel.write(region);
future.addListener(new ChannelFutureListener(){
publicvoidoperationComplete(ChannelFuturefuture){
FILE_DW_GL:POSIX๊ธฐ๋ฐ˜์˜ FileI/O์„ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•œ๋‹ค.
-35-
if(region!=null){
region.releaseExternalResources();
listener.onDownloadComplete(ResultCode.SUCCESS);
}
}
});
}catch(FileNotFoundExceptione){
e.printStackTrace();
}
}
-36-
๋„์ž…์žฅ๋น„ ์šฉ๋„ ์ฃผ์š”์ŠคํŽ™ ๋น„๊ณ 
S t o r a g e
Servers
POC ํ…Œ์ŠคํŠธ์šฉ ์Šคํ† ๋ฆฌ์ง€ ์„œ
๋ฒ„
* Open Stack ๊ธฐ์ค€
(2RU)
Xeon 2609(1 CPU),
12G RAM
3Tbyte SATA X 12
Disk (No RAID)
Dual or Quad
Ethernet(1G)
Dual Redundant
Power
* Gluster ๊ธฐ์ค€(1RU)
Xeon 2609(2 CPU),
32G RAM
500G SATA X 2
(RAID 1, OS์šฉ)
Dual Ethernet(10G)
+1 Ethernet
SAS/SATA RAID
card
Dual Redundant
Power
JBOD ๋””์Šคํฌ ์Šคํ† ๋ฆฌ์ง€ Expender 3Tbyte SATA X
[ํ‘œ 21]HybridStorageAPIํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ
์ œ 4์žฅ ์‹คํ—˜ํ™˜๊ฒฝ ๋ฐ ๊ฒฐ๊ณผ
์ œ 1์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ฐœ๋ฐœํ™˜๊ฒฝ
๋ณธ ๋…ผ๋ฌธ์—์„œ ์ œ์•ˆํ•˜๋Š” ์‹œ์Šคํ…œ์€ ํ˜„์žฌ CloudService์—์„œ ์šด์šฉ๋˜๋Š” ํ™˜๊ฒฝ๊ณผ ๋ณ„๋„๋กœ
๊ตฌ์„ฑ์„ ํ•˜๋ฉฐ ์—ฐ๊ตฌ์˜ ํŠน์„ฑ์„ ๋ฐ˜์˜ํ•˜์—ฌ ๋‹ค์Œ [ํ‘œ 21]๊ณผ ๊ฐ™๋‹ค.
-37-
*Gluster POC์—์„œ๋งŒ ๋„์ž…
12(or 24) Disk
Dual SAS
Interface(3Gbps)
Dual Storage
Controller
Dual Redundant
Power
Storage Front
Switch
Cloud Backbone(L3,
CISCO 6xxx) ์Šค์œ„์น˜์™€
cascade ์—ฐ๊ฒฐ
48 port 1G Ethernet
L2 Switch /w 4 port
SPF(up to 10G)
(Cisco 3560 ๋˜๋Š” ๋™
๊ธ‰)
* Gluster์˜ ๊ฒฝ์šฐ 10G
์ง€์› ํ•„์š”
S t o r a g e
B a c k e n d
Switch
์Šคํ† ๋ฆฌ์ง€ ์„œ๋ฒ„๊ฐ„ ์—ฐ๋™ ์ „์šฉ
์Šค์œ„์น˜
(Storage front switch
์™€ ๋™๊ธ‰)
-38-
์ œ 2์ ˆ ์—ฐ๋™๊ทœ๊ฒฉ ๋ฐ ์ ˆ์ฐจ
๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ๋ณ„๋„์˜ ํ™”๋ฉด์„ ์ œ๊ณตํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ํŠน์„ฑ์ƒ HybridStorageAPI์˜
๊ฒฐ๊ณผ ๋„์ถœ์„ ์œ„ํ•˜์—ฌ ์—ฐ๋™ ๊ทœ๊ฒฉ๋ณ„ ์ ˆ์ฐจ ๋ฐ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๋ฅผ ๋„์ถœํ•˜์˜€๋‹ค.
1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ
ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 13]๊ณผ ๊ฐ™๋‹ค.
<๊ทธ๋ฆผ 13> ํŒŒ์ผ ์—…๋กœ๋“œ SequenceDiagram
-39-
2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ
ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 14]์™€ ๊ฐ™
๋‹ค.
<๊ทธ๋ฆผ 14> ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ SequenceDiagram
-40-
3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ
ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 15]์™€ ๊ฐ™
๋‹ค.
<๊ทธ๋ฆผ 15> ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ SequenceDiagram
-41-
์ œ 3์ ˆ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ
ApacheJmeter๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ€ํ‹ฐ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ๋ฅผ ํ…Œ์ŠคํŠธํ•˜์˜€๋‹ค.ํ…Œ์ŠคํŠธ๋ฅผ
์œ„ํ•œ ์Šค๋ ˆ๋“œ ์ˆ˜์™€ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ,๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ๊ฐœ์š”๋Š” ๋‹ค์Œ [ํ‘œ 22]์™€ ๊ฐ™๋‹ค.
StorageType ์Šค๋ ˆ๋“œ์ˆ˜ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ๊ฒฐ๊ณผ
Easystorage 30 Upload Success:30,Failed:0
Swift 30 Upload Success:30,Failed:0
Gluster 30 Upload Success:30,Failed:0
3๊ฐœ Storage๋™์‹œ ์š”์ฒญ 20:20:20 Upload Success:60,Failed:0
EasyStorage 20 Download Success:20,Failed:0
Swift 20 Download Success:20,Failed:0
Gluster 20 Download Success:20,Failed:0
3๊ฐœ Storage๋™์‹œ ์š”์ฒญ 20:20:20 Download Success:60,Failed:0
[ํ‘œ 22]์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ ๊ฐœ์š”
-42-
1.์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ
UploadTest๋Š” 30๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ํ†ตํ•ด ์‹œํ—˜ ํ•˜์˜€๋‹ค.
EazyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 23]๊ณผ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sampletime(ms) Status Bytes
1 16:46:53.478 ThreadGroup1-8 HTTPRequest 80098 Success 80
2 16:46:53.509 ThreadGroup1-9 HTTPRequest 81683 Success 80
3 16:46:53.422 ThreadGroup1-2 HTTPRequest 82177 Success 80
4 16:46:53.644 ThreadGroup1-13 HTTPRequest 83790 Success 80
5 16:46:53.424 ThreadGroup1-4 HTTPRequest 89792 Success 80
6 16:46:54.078 ThreadGroup1-26 HTTPRequest 93046 Success 80
7 16:46:53.611 ThreadGroup1-12 HTTPRequest 99682 Success 80
8 16:46:54.183 ThreadGroup1-29 HTTPRequest 100846 Success 80
9 16:46:53.811 ThreadGroup1-18 HTTPRequest 102768 Success 80
10 16:46:53.419 ThreadGroup1-1 HTTPRequest 108101 Success 80
โ€ฆ.
30 16:46:53.779 ThreadGroup1-17 HTTPRequest 139153 Success 80
[ํ‘œ 23]EasyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ
-43-
SwiftUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 24]์™€ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sample time(ms) Status Bytes
1 14:50:56.927 Thread Group 1-10 HTTP Request 87023 Success 80
2 14:50:57.055 Thread Group 1-14 HTTP Request 87616 Success 80
3 14:50:57.356 Thread Group 1-23 HTTP Request 89397 Success 80
4 14:50:56.735 Thread Group 1-4 HTTP Request 103701 Success 80
5 14:50:56.787 Thread Group 1-6 HTTP Request 106928 Success 80
6 14:50:57.489 Thread Group 1-27 HTTP Request 106892 Success 80
7 14:50:57.522 Thread Group 1-28 HTTP Request 109318 Success 80
8 14:50:57.456 Thread Group 1-26 HTTP Request 110433 Success 80
9 14:50:57.121 Thread Group 1-16 HTTP Request 113515 Success 80
10 14:50:57.155 Thread Group 1-17 HTTP Request 116175 Success 80
โ€ฆ
30 14:50:56.655 Thread Group 1-2 HTTP Request 137524 Success 80
[ํ‘œ 24] Swift Upload ์‹œํ—˜๊ฒฐ๊ณผ
-44-
GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 25]์™€ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sampletime(ms) Status Bytes
1 16:56:07.238 ThreadGroup1-29 HTTPRequest 67274 Success 80
2 16:56:07.103 ThreadGroup1-25 HTTPRequest 69159 Success 80
3 16:56:07.171 ThreadGroup1-27 HTTPRequest 70934 Success 80
4 16:56:06.770 ThreadGroup1-15 HTTPRequest 76745 Success 80
5 16:56:06.802 ThreadGroup1-16 HTTPRequest 78992 Success 80
6 16:56:06.736 ThreadGroup1-14 HTTPRequest 91113 Success 80
7 16:56:06.838 ThreadGroup1-17 HTTPRequest 96463 Success 80
8 16:56:07.036 ThreadGroup1-23 HTTPRequest 97736 Success 80
9 16:56:06.969 ThreadGroup1-21 HTTPRequest 97848 Success 80
10 16:56:07.271 ThreadGroup1-30 HTTPRequest 98956 Success 80
โ€ฆ
30 16:56:06.915 ThreadGroup1-19 HTTPRequest 133709 Success 80
[ํ‘œ 25]GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ
25MB ์šฉ๋Ÿ‰์˜ ๋™์˜์ƒ ํŒŒ์ผ์„ ํ†ตํ•ด ์—…๋กœ๋“œ๋ฅผ ์š”์ฒญํ•œ ๊ฒฐ๊ณผ์ด๋ฉฐ,Sampletime(ms)
๋ฅผ ํ™•์ธํ•ด ๋ณด๋ฉด OutboundHandler๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๋Š” GLUSTER์˜ ์†๋„๊ฐ€ ๋” ๋น ๋ฅธ ๊ฒƒ
์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
-45-
DownloadTest๋Š” 20๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ํ†ตํ•ด ์‹œํ—˜ ํ•˜์˜€๋‹ค.
EazyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 26]๊ณผ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sample time(ms) Status Bytes
1 16:52:54.258 Thread Group 1-16 HTTP Request 2600 Success 594636
2 16:52:54.278 Thread Group 1-17 HTTP Request 3200 Success 594636
3 16:52:54.096 Thread Group 1-8 HTTP Request 3413 Success 594636
4 16:52:54.700 Thread Group 1-38 HTTP Request 3029 Success 594636
5 16:52:54.517 Thread Group 1-29 HTTP Request 3325 Success 594636
6 16:52:54.460 Thread Group 1-26 HTTP Request 3590 Success 594636
7 16:52:54.660 Thread Group 1-36 HTTP Request 3713 Success 594636
8 16:52:54.680 Thread Group 1-37 HTTP Request 3718 Success 594636
9 16:52:54.841 Thread Group 1-45 HTTP Request 3793 Success 594636
10 16:52:53.970 Thread Group 1-2 HTTP Request 4702 Success 594636
โ€ฆ
20 16:52:54.760 Thread Group 1-41 HTTP Request 4391 Success 594636
[ํ‘œ 26]EasyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ
-46-
SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 27]๊ณผ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sampletime(ms) Status Bytes
1 15:55:58.787 ThreadGroup1-2 HTTPRequest 1189 Success 594636
2 15:55:58.768 ThreadGroup1-1 HTTPRequest 3088 Success 594636
3 15:55:58.899 ThreadGroup1-7 HTTPRequest 3026 Success 594636
4 15:55:59.442 ThreadGroup1-34 HTTPRequest 2523 Success 594636
5 15:55:58.921 ThreadGroup1-8 HTTPRequest 3320 Success 594636
6 15:55:58.807 ThreadGroup1-3 HTTPRequest 3456 Success 594636
7 15:55:59.647 ThreadGroup1-44 HTTPRequest 2682 Success 594636
8 15:55:59.341 ThreadGroup1-29 HTTPRequest 3117 Success 594636
9 15:55:59.039 ThreadGroup1-14 HTTPRequest 3453 Success 594636
10 15:55:58.941 ThreadGroup1-9 HTTPRequest 3570 Success 594636
โ€ฆ
20 15:55:59.547 ThreadGroup1-39 HTTPRequest 3467 Success 594636
[ํ‘œ 27]SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ
-47-
GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 28]๊ณผ ๊ฐ™๋‹ค.
Sample
no
Start
Time
Thread
name
Label Sample time(ms) Status Bytes
1 18:10:25.638 Thread Group 1-4 HTTP Request 578 Success 594687
2 18:10:25.537 Thread Group 1-2 HTTP Request 1033 Success 594687
3 18:10:25.992 Thread Group 1-11 HTTP Request 1110 Success 594687
4 18:10:25.484 Thread Group 1-1 HTTP Request 1731 Success 594687
5 18:10:26.092 Thread Group 1-13 HTTP Request 1360 Success 594687
6 18:10:26.194 Thread Group 1-15 HTTP Request 1536 Success 594687
7 18:10:26.441 Thread Group 1-20 HTTP Request 1325 Success 594687
8 18:10:25.739 Thread Group 1-6 HTTP Request 2370 Success 594687
9 18:10:25.692 Thread Group 1-5 HTTP Request 2451 Success 594687
10 18:10:25.837 Thread Group 1-8 HTTP Request 2333 Success 594687
โ€ฆ
20 18:10:26.241 Thread Group 1-16 HTTP Request 3392 Success 594687
[ํ‘œ 28]GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ
1MB ๋ฏธ๋งŒ์˜ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๋Œ€์ƒ์œผ๋กœ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธํ•œ ๊ฒฐ๊ณผ์ด๋ฉฐ,์—…๋กœ๋“œ์™€ ๋งˆ
์ฐฌ๊ฐ€์ง€๋กœ OutboundHandler๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๋Š” GLUSTER์˜ ์†๋„๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋น ๋ฅธ
์„ฑ๋Šฅ์„ ๋ณด์˜€๋‹ค.
-48-
2.HybridStorageAPI์˜ ๊ธฐ์ˆ  ๊ฒ€์ฆ ๊ฒฐ๊ณผ
Storage์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 29]์™€ ๊ฐ™๋‹ค.
RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹ ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹
EMC ATMOSStorage
EasyStorage
SwiftStorage
GLUSTER
[ํ‘œ 29]Storages์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต
ATMOS,Easy,SwiftStorages๋Š” RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š”
๊ณตํ†ต์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์€ ์ „ํ†ต์ ์ธ HTTP๊ธฐ๋ฐ˜
์—ฐ๋™์„ ํ†ตํ•œ ์ „๋ฌธ๊ตํ™˜ ๋ฐฉ์‹์— ๋น„ํ•ด ๋” ๊ฐ„๊ฒฐํ•œ ์ „๋ฌธ๋ฐฉ์‹๊ณผ POST,GET,PUT,
DELETE์™€ ๊ฐ™์€ HTTP๋ช…๋ น์„ INSERT,SELECT,UPDATE,DELETE๊ณผ ๋™์ผํ•œ
๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค.
GLUSTER๋Š” SAN(StorageAreaNetwork)๊ณผ ์œ ์‚ฌํ•œ ์—ฐ๋™๋ฐฉ์‹์œผ๋กœ Storage์„ ์šด
์˜์ฒด์ œ์— mount์‹œํ‚ด์œผ๋กœ์จ ๋กœ์ปฌ ๋“œ๋ผ์ด๋ธŒ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹
์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค.
RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์œผ๋กœ ์ œ๊ณต๋˜๋Š” Storages๊ฐ€ ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ
๋™๋ฐฉ์‹์ธ GLUSTER์— ๋น„ํ•ด ๋ณด๋‹ค ๋Š์Šจํ•œ ํ˜•ํƒœ(Decoupled)์˜ ์‹œ์Šคํ…œ ํ†ตํ•ฉ์„ฑ์„ ์ œ๊ณต
ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ‰๊ฐ€๋œ๋‹ค.
์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์œ ์‚ฌ์„ฑ ๋ฐ ์ฐจ์ด์  ๊ธฐ์ˆ ๊ฒ€์ฆ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง„ํ–‰ํ•˜์˜€๋‹ค.์ฒซ์งธ
HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด์  ๋น„๊ต,๋‘˜์งธ ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด
์  ๋น„๊ต,์…‹์งธ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์  ๋น„๊ต,๋„ท์งธ
Signature์ƒ์„ฑ๋ฐฉ์‹ ๋น„๊ต,๋‹ค์„ฏ์งธ ์‚ฌ์šฉ์ž ์ธ์ฆ๋ฐฉ์‹ ๋น„๊ต,์—ฌ์„ฏ์งธ Signature์„ธ์…˜์œ 
-49-
ATMOS -Upload Swift-Upload Easystorage-Upload
POST /rest/objects/
HTTP/1.1
Host:storage.tcloud.co.kr
Date: Thu, 27 Sep 2012
01:58:01GMT
C on ten t- T y p e:
application/octet-stream
Content-Length:594427
Connection:keep-alive
x-emc-uid:UID
x-emc-listable-meta:
Metadata
x-emc-signature:Signature
P U T
/version/account/container/file
nameHTTP/1.1
Host:10.10.76.55
Date: Fri, 12 Oct 2012
08:01:12GMT
C o n te n t- M D 5 :
bmhiQvUStNzddyWKob4Svg=
=
X-Auth-Token:Signature
Content-Length:590511
Connection:keep-alive
PUT /filenameHTTP/1.1
H o s t :
bucketName.es.tcloudbiz.com
Date: Mon, 24 Sep 2012
07:29:32GMT
C o n te n t- M D 5 :
en7GBi5vfZIGKBEzTV/zQg==
C o n ten t- T y p e:
application/octet-stream
Content-Length:594427
Connection:keep-alive
Authorization:Signature
ATMOS -Download Swift-Download
Easystorage-
Download
GET /rest/objects/objectID
HTTP/1.1
Host:storage.tcloud.co.kr
Date: Thu, 27 Sep 2012
02:00:14GMT
x-emc-uid:UID
x-emc-signature:Signature
G E T
/version/account/container/file
nameHTTP/1.1
Host:10.10.76.55
Date: Fri, 12 Oct 2012
07:59:31GMT
X-Auth-Token:Signature
C on ten t- T y p e:
application/octet-stream
Connection:keep-alive
GET /filenameHTTP/1.1
H o s t :
bucketName.es.tcloudbiz.com
Date: Mon, 24 Sep 2012
07:48:22GMT
C o n ten t- T y p e:
application/octet-stream
Connection:keep-alive
Authorization:Signature
[ํ‘œ 30]Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์ฐจ์ด์ 
ํšจ์‹œ๊ฐ„์˜ ๊ด€์ ์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€๋‹ค.
Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ์˜ ์ฐจ์ด์ ์€ ๋‹ค์Œ [ํ‘œ 30]๊ณผ ๊ฐ™๋‹ค(GLUSTER ์ œ์™ธ).
-50-
ATMOS Storage SwiftStorage Easystorage
POST /rest/objects/
HTTP/1.1
Host:storage.tcloud.co.kr
PUT
/version/account/container/f
ilenameHTTP/1.1
PUT /filenameHTTP/1.1
H o s t :
bucketName.es.tcloudbiz.co
m
ํŒŒ์ผ Upload์„ฑ๊ณต ํ›„
ATMOS Storage๋กœ๋ถ€ํ„ฐ ํšŒ
์‹ ํ•˜๋Š” ๋งคํšŒ ๋ฐœ๊ธ‰๋œ Object
ID๊ฐ€ ํ•ด๋‹น ํŒŒ์ผ์„ ๋Œ€ํ‘œํ•˜๊ธฐ
๋•Œ๋ฌธ์— ๋™์ผ ์œ„์น˜์— ๋™์ผํŒŒ
์ผ์„ ์˜ฌ๋ฆฌ๋ฉด ๋งค๋ฒˆ ์‹ ๊ทœํŒŒ์ผ
๋กœ ์ธ์‹๋จ
๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ
๋™์ผ ํŒŒ์ผ์ €์žฅ์œ„์น˜์— ๋™์ผ
ํŒŒ์ผ๋ช…์„ Uploadํ•˜๋ฉด
Overwrite๋จ
/container๋Š” Upload ๋Œ€์ƒ
folder๋ช…์ž„
๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ
๋™์ผ ํŒŒ์ผ์ €์žฅ์œ„์น˜์— ๋™์ผ
ํŒŒ์ผ๋ช…์„ Uploadํ•˜๋ฉด
Overwrite๋จ
bucketName์€ Upload๋Œ€์ƒ
folder๋ช…์ž„
๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ
[ํ‘œ 32]ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์ 
RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ์ฐจ์ด์ ์€ ์—†์œผ๋ฉฐ
(์—…๋กœ๋“œ ๊ธฐ๋Šฅ์— ์žˆ์–ด HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ์— ๋”ฐ๋ฅธ ์ฐจ์ด์ ์€ RESTful์‚ฌ์šฉ๋ฒ”์œ„์—์„œ
์ธ์ •๊ฐ€๋Šฅ)์ฐจ์ด์  ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 31]๊ณผ ๊ฐ™๋‹ค.
ATMOS Storage SwiftStorage Easystorage
POST๋ช…๋ น (์—…๋กœ๋“œ)
GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ)
PUT๋ช…๋ น (์—…๋กœ๋“œ)
GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ)
PUT๋ช…๋ น (์—…๋กœ๋“œ)
GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ)
[ํ‘œ 31]RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์ 
ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ํŒŒ์ผ์ €์žฅ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜์—ฌ Uploadํ•˜๋Š”
๋ฐฉ์‹์€ ์œ ์‚ฌํ•˜์ง€๋งŒ ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์— ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฉฐ,์ฐจ์ด์  ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 32]์™€
๊ฐ™๋‹ค.
-51-
ATMOS Storage SwiftStorage Easystorage
x-emc-uid:UID
x-emc-signature:Signature
P U T
/version/account/container/f
ilenameHTTP/1.1
X-Auth-Token:Signature
Authorization:Signature
Cloud ๊ธฐ์กด ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ
ํš๋“ํ•œ ์‚ฌ์šฉ์ž ์ •๋ณด(UID,
Password)์™€ HTTPํ—ค๋”๋ฅผ
์•”ํ˜ธํ™”ํ•ด์„œ Signature๊ฐ’์„
์ƒ์„ฑ
Swift Storage๋กœ๋ถ€ํ„ฐ ์ธ์ฆ
๊ณผ์ •(ํ•˜๊ธฐ ์ธ์ฆ์ ˆ์ฐจ ์ฐธ๊ณ )์—
์„œ ํš๋“ํ•œ ์‚ฌ์šฉ์ž ์ •๋ณด
(Account๊ฐ’)๊ณผ Signature๊ฐ’
์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•จ
Easy Storage๋กœ๋ถ€ํ„ฐ ํš๋“ํ•œ
์‚ฌ์šฉ์ž ์ •๋ณด(Access Key
ID,SecretAccess Key)์™€
HTTP ํ—ค๋”๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ
Signature๊ฐ’์„ ์ƒ์„ฑ
[ํ‘œ 33]์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์ 
์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š”
Signature์ƒ์„ฑ ๋ฐ ํš๋“๋ฐฉ์‹์— ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฉฐ(UID๋Š” UserID๋ฅผ ์ง€์นญํ•จ)์ฐจ์ด์  ๋น„
๊ต๋Š” ๋‹ค์Œ [ํ‘œ 33]๊ณผ ๊ฐ™๋‹ค.
Signature์ƒ์„ฑ๋ฐฉ์‹ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ATMOS Storage์™€ Easy Storage๋Š” ๋งค ์š”
์ฒญ๋งˆ๋‹ค HTTP Header์˜ ์š”์ฒญ ์ •๋ณด ๋ฌธ์ž์—ด์„ HmacSHA1 ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด์„œ
byte๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ณ  Base64 Encoding์„ ํ†ตํ•ด ์ƒ์„ฑํ•œ Signature ๊ฐ’์„ ํŠธ๋žœ์žญ์…˜์—
ํฌํ•จํ•ด์•ผ ํ•˜์ง€๋งŒ,์ด์™€๋Š” ๋‹ค๋ฅด๊ฒŒ SwiftStorage๋Š” ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ํ†ตํ•ด ํš๋“ํ•œ
Signature๊ฐ’์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ATMOS Storage๋Š” ์„œ๋น„์Šค ์„œ๋ฒ„์—์„œ ์ œ๊ณตํ•˜๋Š”
HTTP๊ทœ๊ฒฉ์— ์˜ํ•ด ์ˆ˜ํ–‰ ํ•˜์—ฌ์•ผ ํ•˜๋ฉฐ,EasyStorage๋Š” EasyStorage์›น ๊ด€๋ฆฌ์ž ํŽ˜
์ด์ง€์—์„œ ํ‘œ์ถœ๋œ AccessKey ID์™€ SecretAccessKey๋ฅผ UserID์™€ Password์„
์‚ฌ์šฉํ•ด์„œ ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ํ–ฅํ›„ AccessKey ID,SecretAccessKey
ํš๋“์„ ์œ„ํ•œ ์—ฐ๋™์ด ํ•„์ˆ˜์ ์œผ๋กœ ์š”๊ตฌ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
-52-
Request
POST /v2.0/tokensHTTP/1.1
Host:10.10.76.55
Content-Type:application/json
Accept:application/json
Connection:keep-alive
Content-Length:106
[Body-json]
{"auth": {"tenantName": "openstack", "passwordCredentials": {"username": "admin",
"password":"crowbar"}}}
Response
HTTP/1.1200OK
Content-Type:application/json
Vary:X-Auth-Token
Date:Fri,12Oct201207:54:05GMT
Transfer-Encoding:chunked
Connection:keep-alive
[Body-json]
{"access": {"token": {"expires": "2012-10-13T08:51:01Z", "id":
"af929499b80547e2bfafd5490102b6c5", "tenant": {"enabled": true, "id":
"3eee71dae03947709b1be1f1dfffc9e8", "name": "openstack"}}, "serviceCatalog":
[{"endpoints":[{"adminURL":"https://192.168.124.87:8080/v1/","region":"RegionOne",
" i n t e r n a l U R L " :
"https://192.168.124.87:8080/v1/AUTH_3eee71dae03947709b1be1f1dfffc9e8", "publicURL":
"https://10.10.76.55:8080/v1/AUTH_3eee71dae03947709b1be1f1dfffc9e8"}],
"endpoints_links": [], "type": "object-store", "name": "swift"}, {"endpoints":
[{"adminURL":"http://192.168.124.87:35357/v2.0","region":"RegionOne","internalURL":
"http://192.168.124.87:5000/v2.0", "publicURL": "http://10.10.76.55:5000/v2.0"}],
"endpoints_links":[],"type":"identity","name":"keystone"}],"user":{"username":
"admin","roles_links":[],"id":"0a5b2037771a4b09a5ba03438b5291cb","roles":[{"id":
SwiftStorage์ธ์ฆ์ ˆ์ฐจ๋Š” SwiftStorage์™€์˜ JSON์ „๋ฌธ์„ ์‚ฌ์šฉํ•œ HTTP๊ทœ๊ฒฉ์€
๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
-53-
"df79097e3b6f41b7a35e99ab605dfae1","name":"admin"}],"name":"admin"}}}
Signature๊ฐ’์„ ๊ฐ€์ ธ์™€ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ
๋žœ์žญ์…˜์—์„œ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ
(af929499b80547e2bfafd5490102b6c5)
Account๊ฐ’์„ ๊ฐ€์ ธ์™€ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ
๋žœ์žญ์…˜์—์„œ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ
(AUTH_3eee71dae03947709b1be1f1dfffc9e8)
[ํ‘œ 34]์ธ์ฆ์ •๋ณด Parsing์˜ˆ์‹œ
์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ์ˆ˜ํ–‰์‹œ ํ•„์š”ํ•œ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ Parsing์ •๋ณด์˜ ์˜ˆ์‹œ๋Š” ๋‹ค์Œ
[ํ‘œ 34]์™€ ๊ฐ™๋‹ค.
Signature์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์€ ATMOS Storage์™€ EasyStorage๋Š” ์ตœ์ดˆ์— ํ•œ๋ฒˆ ์ธ์ฆ
์ ˆ์ฐจ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉฐ,๊ทธ ์ด์œ ๋Š” ์ธ์ฆ ํ›„ ์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์ด ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
๊ทธ๋ ‡์ง€๋งŒ SwiftStorage๋Š” ์ธ์ฆ ํ›„ 24์‹œ๊ฐ„๋งˆ๋‹ค ์„ธ์…˜์ด ๋งŒ๋ฃŒ๋˜๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•œ
๋‹ค.๋”ฐ๋ผ์„œ ์ธ์ฆ์œ ํšจ์‹œ๊ฐ„(์„ธ์…˜๋งŒ๋ฃŒ์‹œ๊ฐ„)์„ ๊ณ ๋ คํ•ด์„œ ๋งค 6์‹œ๊ฐ„์ด ์ง€๋‚œ ์š”์ฒญ์— ๋Œ€ํ•ด
์žฌ ์ธ์ฆ์„ ์š”์ฒญํ•˜๋„๋ก ๊ตฌํ˜„ ํ•˜์˜€๋‹ค.
์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ๋น„๊ต์— ๋”ฐ๋ฅธ ๊ฒฐ๋ก ์€ HybridStorageAccess์„œ๋ฒ„์˜ ์„ค๊ณ„์—์„œ๋Š”
Storage๋ณ„ ์—ฐ๋™๊ธฐ๋Šฅ์„ Adaptationํ˜•ํƒœ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด
๋‹ค.
๋น„๋ก ๋„์ž… Storagesํ›„๋ณด๊ฐ€ ์ƒ์ดํ•œ ์—ฐ๋™๋ฐฉ์‹๊ณผ ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ ํŒŒ์ผ
์ฒ˜๋ฆฌ๋ฐฉ์‹,์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ์ˆ˜ํ–‰๋ฐฉ์‹,Signature์ƒ์„ฑ๋ฐฉ์‹ ๋ฐ ์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์— ๋Œ€ํ•œ
์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด์ ์„ ์ƒ์†๊ณผ ๋‹คํ˜•์„ฑ์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ž‘์„ฑํ•จ์œผ๋กœ์จ Storage๋ณ„ ์—ฐ๋™๊ธฐ๋Šฅ์„
Adaptorํ˜•ํƒœ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ์‹์ธ Adaptationํ˜•ํƒœ์˜ ์ œ๊ณต์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒฐ๋ก ์„ ๋‚ด๋ ธ
๋‹ค.
-54-
์ œ 5์žฅ ๊ฒฐ๋ก  ๋ฐ ํ–ฅํ›„๊ณผ์ œ
Hybrid Storage Access์„œ๋ฒ„๋ฅผ ์—ฐ๋™์ธก๋ฉด์—์„œ ๋ถ„ํ•ดํ•˜๋ฉด ํฌ๊ฒŒ Front-end์™€
Back-end์—ฐ๋™์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.
Front-end์—์„œ ์„œ๋ฒ„์™€ ๋‹จ๋ง ๊ฐ„ ํ‘œ์ค€ํ™”๋œ ํ†ต์‹ ๊ทœ์•ฝ์€ ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ต์‹ ๋ฐฉ์‹์„
์ •์˜ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๊ธฐ๊ฐ„๊ณ„ ์‹œ์Šคํ…œ ์—ฐ๋™๊ทœ๊ฒฉ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•  ๊ฒƒ์ด๋‹ค.๊ทธ๋ ‡
์ง€๋งŒ ์„œ๋ฒ„์™€ ์„œ๋ฒ„ ๊ฐ„ ํ†ต์‹ ๋ฐฉ์‹๊ณผ ๊ฐ™์€ ์ด๊ธฐ์ข…๊ฐ„ ํ†ต์‹ ๊ทœ์•ฝ์€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š”
CP(ContentsProveder)์˜ ๊ธฐ๊ฐ„๊ณ„ ์‹œ์Šคํ…œ ์—ฐ๋™๊ทœ๊ฒฉ์— ํ˜ธํ™˜๋˜๋„๋ก ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”
๋žŒ์งํ•˜๋‹ค.๊ทธ๋Ÿฌํ•œ Front-end์—์„œ์˜ ์ž˜ ์ •์˜๋œ ํ†ต์‹ ๊ทœ์•ฝ์€ ๋ณด๋‹ค ์‰ฝ๊ณ  ์‹ ์†ํžˆ Cloud
์„œ๋น„์Šค์˜ ํ™•์žฅ์„ ๋ณด์žฅํ•œ๋‹ค.
๋ฐ˜๋ฉด์— Back-end์—์„œ ์„œ๋ฒ„์™€ Storages๊ฐ„ ์„œ๋ฒ„์™€ ๋‚ด๋ถ€์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹ ๊ทœ์•ฝ์€ ํ™•์žฅ
์„ฑ๋ณด๋‹ค ํ†ตํ•ฉ์„ฑ์— ์ฃผ๋ชฉํ•ด์•ผ ํ•œ๋‹ค.ํŠน๋ณ„ํžˆ ์„œ๋ฒ„์™€ Storage๊ฐ„ ์—ฐ๋™์€ Storage์—ฐ๋™๊ทœ
๊ฒฉ์— ์ข…์†์ ์ด๋ฏ€๋กœ Adaptation๋ฐฉ์‹์œผ๋กœ ๊ทœ๊ฒฉํ™”๋œ StorageAdaptor์— ๊ด€ํ•œ ์ธํ„ฐํŽ˜์ด
์Šค๋ฅผ ๊ทœ์•ฝํ•˜๊ณ  ๊ตฌํ˜„ํ•จ์œผ๋กœ์จ HybridStorageAPI์„œ๋ฒ„์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ณผ์ •์ด ๋งค์šฐ ์ค‘
์š”ํ•˜๋‹ค.
๊ฒฐ๋ก ์ ์œผ๋กœ ํ–ฅํ›„ HybridStorageAPI์„œ๋ฒ„์˜ ์ƒ์šฉํ™”๋ฅผ ์œ„ํ•ด ํ•„์š”ํ•œ ํ–ฅํ›„ ๊ณผ์ œ๋Š”
๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
๊ตฌ์กฐ์  ์ธก๋ฉด์—์„œ HybridStorageAPI์„œ๋ฒ„ ๊ตฌํ˜„์œผ๋กœ ๋„คํŠธ์›Œํฌ ๋ฐ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ
์— ์ตœ์ ํ™”๋œ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ๋งˆ๋ จํ•˜์˜€์ง€๋งŒ ๊ฐ Storage ์—ฐ๋™์— ์žˆ์–ด์„œ ID,
Password์‚ฌ์šฉ์— ๊ด€ํ•ด ํ•˜๋“œ์ฝ”๋”ฉ ๋œ ๋งค์ง ๋„˜๋ฒ„๊ฐ€ ์กด์žฌํ•ด ์™”๋‹ค.
์˜ˆ๋ฅผ ๋“ค๋ฉด EasyStorage์˜ ๊ฒฝ์šฐ ID,Password๋ฅผ ํš๋“ํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์—ฐ๋™
๊ทœ์•ฝ์ด ์กด์žฌํ•˜์ง€ ์•Š์€ ๊ฒƒ์œผ๋กœ ํ™•์ธ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— Easy Storage์›น ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€
์— ํ‘œ์ถœ๋œ AccessKeyID์™€ SecretAccessKey์„ ๊ณ ์ •ํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ์ˆ˜
ํ–‰ํ•˜์—ฌ ์™”๋‹ค.ํ–ฅํ›„ AccessKeyID,SecretAccessKeyํš๋“์„ ์œ„ํ•œ ์—ฐ๋™์€ ํ•„์ˆ˜์ 
์œผ๋กœ ์š”๊ตฌ๋œ๋‹ค.
๊ตฌ์กฐ์  ์ธก๋ฉด์—์„œ Back-end๋ฅผ ์œ„ํ•ด Adaptation ๋ฐฉ์‹์œผ๋กœ ๊ทœ๊ฒฉํ™”๋œ Storage
Adaptor์— ๊ด€ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ๊ทœ์•ฝ์˜ ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.Storage์ ‘๊ทผ์— ๊ด€ํ•œ ์ธ์ฆ ๋ฐ
-55-
๊ถŒํ•œ,Storage์‹ค์‚ฌ์šฉ์— ๊ด€ํ•œ ๊ตฌํ˜„๊ณผ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ์™€ ๊ฐ™์€ ์‹ค์ œ์  ๊ธฐ๋Šฅ๊ตฌํ˜„์ด ์š”๊ตฌ๋œ
๋‹ค.
์—ญํ•™์  ์ธก๋ฉด์—์„œ Front-end์ƒ์—์„œ ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™์„ ์œ„ํ•ด OpenAPI์˜ ํ•œ
์ข…๋ฅ˜๋กœ์จ HybridStorageAccess๊ธฐ๋Šฅ์˜ ์ œ๊ณต์„ ์œ„ํ•œ ํ†ต์‹ ๊ทœ์•ฝ์˜ ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.
ํ˜„์žฌ๋Š” CloudopenAPI์— ํŒŒ์ผ ๋ฆฌ์ŠคํŠธ ์กฐํšŒ,์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ์™€ ๊ฐ™์€ ์ผ๋ถ€๊ธฐ๋Šฅ
์— ํ•œ์ •์ ์œผ๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ๋‹ค.
์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™์„ ์œ„ํ•œ OpenAPI๋Š” ๋‹จ๋ง๊ณผ ์„œ๋ฒ„๊ฐ„,์„œ๋ฒ„์™€ ์„œ๋ฒ„๊ฐ„์„ ๋ถ„๋ฆฌ
ํ•˜์—ฌ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•  ๊ฒƒ์ด๋‹ค.๊ทธ๋ ‡์ง€๋งŒ ํ†ต์‹ ๊ทœ์•ฝ์˜ ๊ธฐ์ดˆ๋Š” ๋™์ผํ•˜๊ฒŒ ๊ฐ€์ ธ
๊ฐ์œผ๋กœ์จ ํ˜ธํ™˜์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ์š”๊ตฌ๋œ๋‹ค.
๋ฐœ์ „์  ์ธก๋ฉด์—์„œ HybridStorageAccess์„œ๋ฒ„๋Š” Cloud์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋‚ด๋ถ€์™€
์™ธ๋ถ€ ์‹œ์Šคํ…œ์œผ๋กœ ์œ„์น˜ํ•˜๊ณ  CloudopenAPI์„œ๋ฒ„์™€ ํ•จ๊ป˜ ์ œ๊ณต๋จ์œผ๋กœ์จ Storage์˜ ์ ‘
๊ทผ๋ฐฉ๋ฒ•์„ ๋‚ด๋ถ€์™€ ์™ธ๋ถ€ ์‹œ์Šคํ…œ์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋ฐฐ์น˜ํ•ด์•ผ ํ•  ๊ฒƒ์ด
๋‹ค.
ํ•œํŽธ ๊ฐ€์ž…์ž ์ˆœ์ฆ๊ณผ ๊ฒฝ์Ÿ์ž์™€์˜ ๊ฒฝ์Ÿ๋ ฅ์˜ ํ™•๋ณด๋ฅผ ์œ„ํ•ด Storage์šฉ๋Ÿ‰ ์ฆ์„ค์ด ๋ถˆ๊ฐ€
ํ”ผํ•œ ์‹œ๊ธฐ๊ฐ€ ๋„๋ž˜ํ•˜์˜€๋‹ค.
๋ณธ ๋…ผ๋ฌธ์„ ํ†ตํ•ด HybridStorageAccess์„œ๋ฒ„์— ๊ด€ํ•œ ProofofConcept์„ ๊ตฌํ˜„ํ•˜
๊ณ  ๊ฒ€์ฆํ•˜๋Š” ๊ณผ์ •์—์„œ ๋„์ถœ๋œ ๋ฌธ์ œ์ ์„ ๊ธฐ์ดˆ๋กœ HybridStorageAccess์„œ๋ฒ„์˜ ํ•„
์š”์„ฑ์„ ์ฆ๋ช…ํ•˜์˜€๋‹ค.๊ทธ๋ฆฌ๊ณ  ์ด ์ง€์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹จ๋ง ๋ฐ ์™ธ๋ถ€์‹œ์Šคํ…œ์—์„œ ์„œ๋ฒ„ ์ ‘์†
์‹œ ๋‹จ์ผ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ๋‹ค์ค‘ Storages๋กœ์˜ ์ ‘๊ทผ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ์‹์ด ํ˜„ํ–‰ Storage
์ข…์†์— ๊ด€ํ•œ ๋ฌธ์ œ์ ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ Storage์šฉ๋Ÿ‰์ฆ์„ค์— ๊ด€ํ•œ ์‹œ์Šคํ…œ ํ†ตํ•ฉ ๋ฐ
ํ™•์žฅ์„ ๋™์‹œ์— ๋งŒ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ํŒ๋‹จ๋œ๋‹ค.
-56-
์ฐธ๊ณ ๋ฌธํ—Œ
[1]http://blog.naver.com/PostView.nhn?blogId=4900789&logNo=140167478314
[2]๊น€ํ˜•์ค€,์กฐ์ค€ํ˜ธ,์•ˆ์„ฑํ™”,๊น€๋ณ‘์ค€,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๊ตฌํ˜„ ๊ธฐ์ˆ โ€,์—์ด์ฝ˜.
[3]๊น€์ผ์ˆ˜,๊น€์žฌ์˜,๊น€์ƒˆ์ด,โ€œHybridStorageAPI๊ฐœ๋ฐœ ์™„๋ฃŒ ๋ณด๊ณ ์„œโ€,2012.
[4]๋ฐฐ๋ฆฌ ์†Œ์‹ ์Šคํ‚ค,์ •์›์ฒœ,๊น€์–‘์ˆ˜,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ฐ”์ด๋ธ”โ€,๊ธธ๋ฒ—.
[5]๊น€์˜์ฒ ,์ฐจ๋ช…ํ›ˆ,์ด์ƒ๋ฏผ,๊น€์˜๊ท ,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์—์„œ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ 
๋™ํ–ฅโ€,์ „์žํ†ต์‹ ๋™ํ–ฅ๋ถ„์„ ์ œ24๊ถŒ ์ œ4ํ˜ธ,2009.
[6]๊น€์˜ํƒ,โ€œCloud์ตœ์ ํ™” StoragePlatform EMC Atmosโ€,DataCenterofthe
Future,2010.
[7]SK telecom,โ€œEasyStorageโ€,2012.
[8]์ •๊ธฐ์˜,โ€œOpenStackObjectStorageServiceโ€,2011.
[9]Gluster.com,โ€œIntroductiontoGlusterโ€,2010.
[10]๊น€์ข…๋Œ€,โ€œ์ง„ํ™”ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๋ชจ๋ฐ”์ผ์˜ ๋ณ€ํ™”๋ฅผ ์ด๋ˆ๋‹คโ€,2011.
[11]์ „์„ฑ์›,์ฃผ์œค์ฒ ,๊น€ํƒœ์›…,โ€œํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ์œ„ํ•œ ๋Œ€๊ทœ๋ชจ ๋ถ„์‚ฐ ์ €์žฅ ์‹œ์Šคํ…œโ€,
TelecommunicationsReview ์ œ21๊ถŒ 3ํ˜ธ,2011.
[12]๊ณ ๋Œ€์‹,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ์œ„ํ•œ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™”โ€,์ „์ž์‹ ๋ฌธ.
[13]์ตœ์™„,โ€œSaaSํ”Œ๋žซํผ ๋ฐ ํŽ˜ํƒ€์Šค์ผ€์ผ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ๊ธฐ์ˆ  ๋™ํ–ฅโ€,ํ•œ๊ตญ์ „์žํ†ต
์‹  ์—ฐ๊ตฌ์›,2012.
[14]ํ™ฉ์ง„๊ฒฝ,โ€œCloudObjectStorageServicebasedonOpenstackโ€,2011.
[15]๊น€์˜์ฒ ,๋ฐ•๊ทผํƒœ,์ด์ƒ๋ฏผ,๊น€ํ™์—ฐ,๊น€์˜๊ท ,โ€œํด๋Ÿฌ์Šคํ„ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ธฐ์ˆ  ๋™ํ–ฅโ€,
์ „์žํ†ต์‹ ๋™ํ–ฅ๋ถ„์„ ์ œ22๊ถŒ ์ œ6ํ˜ธ,2007.
[16]ํฌ๋ฆฌ์ˆ˜ํ† ํผ M.๋ชจ์ด์–ด,์ •์œค์ง„ โ€œ๊ฐœ๋…,ํŒจํ„ด,๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์ ํŠธ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์• 
ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœโ€,์ œ์ดํŽ.
[17]http://www.ciokorea.com
-57-
[18]http://www.itworld.co.kr
[19]http://dev.kthcorp.com
[20]http://developer.ucloudbiz.olleh.com
[21]http://bcho.tistory.com
[22]http://www.ddaily.co.kr/cloud
[23]http://www.seagate.com/kr/ko/tech-insights
[24]http://www.ibm.com/developerworks/kr/cloud
[25]http://soooprmx.com
[26]http://www.betanews.net
[27]http://www.openstack.or.kr
[28]http://www.gluster.org
-58-
ABSTRACT
TheDesignofHybridStorageAPI
forCloudStorageExtension
Bock-Chool,Lim
DepartmentofInformationScience
GraduateSchoolOf
JoongbuUniversity
SupervisedbyProf.Soon-GohnKim
Asfastaschangesoccurinthebusinessenvironmentandinadvancementsof
informationtechnology thecostofIT forcorporationshasalsobeenincreasing.
Assuch,reducing IT costwhileresponding appropriately tothefastchanging
environmenthasbecomeasurvivalrelationshipforallcorporateentities.Sucha
burdenhasbroughtaboutachangetothecorporationsparadigm forIT assets.
Thefactisthattheexisting paradigm ofownershipforIT assetsischanging
tooneofusage.
Sincethelate1980stheemergenceofoutsourcing SM ofIT operation,web
hosting,application serviceprovideretchasplayed arolein such achangein
the paradigm.In particular after 2007,as cloud computing service has been
introduced to the marketplace the trend ofIT assets being transformed from
havingownershipintoreceivingservicehasgraduallyproliferated.
As if to prove such a tendency,major IT companies,including Amazon,
-59-
Google,IBM,Microsoft,Yahooandothersareofferingcloudserviceafteranther
cloud service; recently, companies like Salesforce, Facebook, Youtube and
MyspacehavestartedofferingcloudcomputingservicetotheInternetusers.
Toexplainbrieflythefunctionalityandservicesthatthesecompaniesofferin
termsofcloud computing,Googlehasthetechnologiestomanagehundredsof
thousandsofserversandstoreandanalyzetensofpetabytesofdata,andparts
ofthesetechnologieshavebeen madeavailabletotheoutsideworldandsome
successful cases of cloud-based technology are currently being shared.In
addition,services,such as mail,calendar,documents,etc.,thatare used by
generalusersareoffered,andbyprovidingacloud-basedplatform servicecalled
โ€˜AppEngine,โ€™theplatform thatenablesimplementationofapplicationsdeveloped
by theusersundercloudenvironmentisbeing provided.Amazon offersvirtual
machines,storageetcthatarea partofan infrastructuresupportserviceand
Salesforce.com provides to corporate enterprises a customer relationship
managementCRM webapplicationservice.
Inthispaper,by introducing theconceptofhybridstorageasanideaforan
efficientoffering and operation ofstorage(IaaS,PaaS)among many areas of
computing we willattemptto proceed with the design ofAPIin order to
facilitatetheoffering ofvarioustypesofstoragesuch asOpen Stack,Gluster,
Atmosetcthatareprovided by cloud storagesystems.By designing ahybrid
storageAPIandpresentingresultsthroughabasicsystem flow wewillenable
theofferingofstorageunderacloudcomputingenvironment.
-60-
๊ฐ์‚ฌ์˜ ๊ธ€
ํ•œ์ฐฝ ๊ณต๋ถ€์— ๋ชฉ๋งˆ๋ฆ„์ด ์žˆ์„ ๋•Œ ์šฐ์—ฐ์ฐฎ์€ ๊ธฐํšŒ์— ๊น€์ˆœ๊ณค ๊ต์ˆ˜๋‹˜์„ ๋งŒ๋‚˜ ๋ต™๊ฒŒ ๋˜์—ˆ
๊ณ ,์ด๋กœ์จ ๋ชฉ๋ง๋ž๋˜ ๊ณต๋ถ€๋ฅผ ๊ต์ˆ˜๋‹˜์˜ ์ง€๋„ํ•˜์— ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.๊ทธ ์‹œ๊ฐ„
์ด ํ˜๋Ÿฌ ๋ฒŒ์จ 2๋…„์ด ์ง€๋‚ฌ์Šต๋‹ˆ๋‹ค.์‹œ๊ฐ„์ด ์–ด๋–ป๊ฒŒ ํ˜๋Ÿฌ๊ฐ”๋Š”์ง€๋„ ๋ชจ๋ฅด๊ฒŒ ๋„ˆ๋ฌด ๋น ๋ฅด๊ฒŒ
ํ˜๋Ÿฌ ๊ฐ„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.์ €์—๊ฒŒ ์ด๋Ÿฐ ๊ธฐํšŒ๋ฅผ ์ฃผ์‹  ๊น€์ˆœ๊ณค ๊ต์ˆ˜๋‹˜๊ณผ ์ €๋ฅผ ์ง€๋„ํ•ด ์ฃผ์‹ 
๋งŽ์€ ๋ถ„๋“ค๊ฒŒ ์ง€๋ฉด์„ ๋นŒ์–ด ๊ฐ์‚ฌ์˜ ๋งˆ์Œ์„ ์ „ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.
๋Š˜ ๋ถ€์กฑํ–ˆ๋˜ ์ €์—๊ฒŒ ๋”ฐ๋œปํ•œ ๊ด€์‹ฌ๊ณผ ์• ์ • ์–ด๋ฆฐ ์งˆํƒ€๋กœ ๋ฐฐ์›€์˜ ๊ธธ์„ ์ธ๋„ํ•ด ์ฃผ์‹œ๋ฉฐ
๊ฟˆ๊ณผ ํฌ๋ง์„ ์•ˆ๊ฒจ ์ฃผ์‹  ๊น€์ˆœ๊ณค ์ง€๋„๊ต์ˆ˜๋‹˜๊ป˜ ์กด๊ฒฝํ•˜๋Š” ๋งˆ์Œ๊ณผ ๋”๋ถˆ์–ด ๊นŠ์€ ๊ฐ์‚ฌ๋ฅผ
๋“œ๋ฆฝ๋‹ˆ๋‹ค.
๊ทธ๋ฆฌ๊ณ  ๋ฐ”์˜์‹  ์™€์ค‘์—๋„ ์ €์˜ ๋…ผ๋ฌธ์‹ฌ์‚ฌ๋ฅผ ๋งก์•„์ฃผ์‹œ๊ณ ,์†Œ์ค‘ํ•œ ์ถฉ๊ณ ๋ฅผ ์•„๋ผ์ง€ ์•Š
์œผ์…จ๋˜ ๋ฐ•์ธ๊ทœ ๊ต์ˆ˜๋‹˜,๋ฐ•์ข…ํ›ˆ ๊ต์ˆ˜๋‹˜๊ป˜ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์—ฌ๋Ÿฌ๋ชจ๋กœ ๋ถ€์กฑํ•œ ์ €์—๊ฒŒ ๋ณธ ๋…ผ๋ฌธ์ด ์™„์„ฑ๋˜๊ธฐ๊นŒ์ง€ ๋ฏธ๋น„์ ์„ ์ง€์ ํ•˜์—ฌ ์ฃผ์‹œ๊ณ ,๋งŽ
์€ ๊ด€์‹ฌ์œผ๋กœ ์ง€๋„์™€ ์กฐ์–ธ์„ ์•„๋ผ์ง€ ์•Š์œผ์…จ๋˜ ์ •๋ณตํฌ ์„ ๋ฐฐ๋‹˜๊ณผ ์ตœ์›์˜ ๊ต์ˆ˜๋‹˜๊ป˜ ์ง„
์‹ฌ์œผ๋กœ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์ €์—๊ฒŒ ํ•™์—…์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์‹  ์ž„ํ˜•๋„ ์ˆ˜์„๋‹˜๊ณผ ํ•ญ์ƒ
์–ด๋ ค์›€์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ์ •์‹ ์ ์œผ๋กœ ๋„์™€์ฃผ์‹  ๊น€์ผ์ˆ˜ ๋ณธ๋ถ€์žฅ๋‹˜๊ป˜๋„ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์‹œ๊ฐ„์ ,์ •์‹ ์ ์œผ๋กœ ํ•™๋ฌธ์˜ ์–ด๋ ค์›€์— ์ฒ˜ํ–ˆ์„ ๋•Œ ํ•ญ์ƒ ๊ณ์—์„œ ๋งŽ์€ ์•„์ด๋””์–ด์™€ ์šฉ
๊ธฐ๋กœ ๊ฒฉ๋ ค์™€ ์กฐ์–ธ์„ ์•„๋ผ์ง€ ์•Š์œผ์…จ๋˜ ๋งŽ์€ ์„ ๋ฐฐ๋‹˜๊ณผ ๋™๊ธฐ ์„์‚ฌ๊ณผ์ •์˜ ๋งŽ์€ ๋ถ„๋“ค๊ป˜
๋„ ๊นŠ์€ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
๋ณธ ๋…ผ๋ฌธ์„ ์ž‘์„ฑํ•˜๋Š”๋ฐ ์žˆ์–ด,Sํ†ต์‹ ์‚ฌ์˜ PM๋ถ„๋“ค๊ณผ ๊ฐ™์ด ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•˜์—ฌ ๋งŽ
์€ ๋„์›€์„ ์ฃผ์‹  ๊น€์žฌ์˜์ฑ…์ž„,๊น€์ƒˆ์ด์ฃผ์ž„๊ป˜๋„ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
ํ•ญ์ƒ ์‹œ๊ฐ„์ด ์—†์–ด ํ•™์—…๊ณผ ํšŒ์‚ฌ ์ƒํ™œ์„ ํ•˜๋Š” ๋ฐ์—๋„ ๋ถˆํŽธํ•จ์ด ์—†๋„๋ก ๋„์™€์ฃผ์‹  ํšŒ
์‚ฌ ๋™๋ฃŒ๋ถ„๋“ค๊ณผ ๊ทธ๋ฃน์žฅ๋‹˜,๊ทธ๋ฆฌ๊ณ  ์‚ฌ์žฅ๋‹˜๊ป˜๋„ ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ๋ง์”€์„ ์ง€๋ฉด์„ ๋นŒ์–ด ์ „ํ•˜
๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
-61-
๋˜ํ•œ ํ•ญ์ƒ ์–ด๋ ค์›€์—๋„ ์ €์˜ ๊ณ์—์„œ ๋ถˆํ‰ ๋ถˆ๋งŒ ์—†์ด ํ•™์—…์— ์ •์ง„ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„
์™€์ค€ ์•„๋‚ด ๊น€์ •์•„,๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ ๋‘ ์•„๋“ค์—๊ฒŒ๋„ ๊ฐ์‚ฌ์˜ ๋งˆ์Œ์„ ์ „ํ•ฉ๋‹ˆ๋‹ค.๋ง์”€์€ ์•ˆ
ํ•˜์‹œ์ง€๋งŒ ์ €์—๊ฒŒ ํ•ญ์ƒ ํž˜์ด ๋˜์–ด ์ฃผ์‹œ๋Š” ํ˜•๋‹˜๋“ค,์ฒ˜์ œ๋“ค,์–ด๋จธ๋‹ˆ,์žฅ๋ชจ๋‹˜,์žฅ์ธ์–ด๋ฅธ
๊ป˜๋„ ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ๋ง์”€์„ ๋“œ๋ฆฝ๋‹ˆ๋‹ค.
์ด์™ธ์—๋„ ์ œ๊ฐ€ ๋ฏธ์ฒ˜ ์–ธ๊ธ‰ํ•˜์ง€ ๋ชปํ•œ ๊ณ ๋งˆ์šด ๋ถ„๋“ค์ด ๋„ˆ๋ฌด๋‚˜ ๋งŽ์Šต๋‹ˆ๋‹ค.๊ทธ๋ถ„๋“ค์˜ ์ด
๋ฆ„ ํ•˜๋‚˜ ํ•˜๋‚˜๋ฅผ ๋˜์ƒˆ๊ธฐ์ง€ ๋ชปํ•จ์„ ์ฃ„์†กํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฉฐ,์•ž์œผ๋กœ ๋ฐ•์‚ฌ๊ณผ์ •์—์„œ๋„ ๋”์šฑ
๋” ํ•™๋ฌธ์— ์ •์ง„ํ•˜์—ฌ ์ €๋ฅผ ์ง€์ผœ๋ด ์ฃผ์‹œ๋Š” ๋ชจ๋“  ๋ถ„๋“ค์˜ ๊ธฐ๋Œ€์— ์–ด๊ธ‹๋‚˜์ง€ ์•Š๋„๋ก ์ตœ์„ 
์„ ๋‹คํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

More Related Content

Viewers also liked

FCM์•Œ์•„๋ณด๊ธฐ
FCM์•Œ์•„๋ณด๊ธฐFCM์•Œ์•„๋ณด๊ธฐ
FCM์•Œ์•„๋ณด๊ธฐSeongSik Choi
ย 
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐSeongSik Choi
ย 
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐ
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐFirebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐ
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐSeongSik Choi
ย 
000001871277_1425351249536_0.35266743797617006
000001871277_1425351249536_0.35266743797617006000001871277_1425351249536_0.35266743797617006
000001871277_1425351249536_0.35266743797617006GeniNetworks
ย 
HTTPS, ์›๊ฒฉ์ œ์–ด
HTTPS, ์›๊ฒฉ์ œ์–ดHTTPS, ์›๊ฒฉ์ œ์–ด
HTTPS, ์›๊ฒฉ์ œ์–ดSeongSik Choi
ย 
AR tool - Vuforia
AR tool - VuforiaAR tool - Vuforia
AR tool - VuforiaSeongSik Choi
ย 

Viewers also liked (8)

FCM์•Œ์•„๋ณด๊ธฐ
FCM์•Œ์•„๋ณด๊ธฐFCM์•Œ์•„๋ณด๊ธฐ
FCM์•Œ์•„๋ณด๊ธฐ
ย 
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ
๋ฆฌ๋ˆ…์Šค๋ฅผ ์ด์šฉํ•œ Nas๋งŒ๋“ค๊ธฐ
ย 
Linebot
LinebotLinebot
Linebot
ย 
RokSeoul
RokSeoulRokSeoul
RokSeoul
ย 
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐ
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐFirebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐ
Firebase Database ๋‘˜๋Ÿฌ๋ณด๊ธฐ
ย 
000001871277_1425351249536_0.35266743797617006
000001871277_1425351249536_0.35266743797617006000001871277_1425351249536_0.35266743797617006
000001871277_1425351249536_0.35266743797617006
ย 
HTTPS, ์›๊ฒฉ์ œ์–ด
HTTPS, ์›๊ฒฉ์ œ์–ดHTTPS, ์›๊ฒฉ์ œ์–ด
HTTPS, ์›๊ฒฉ์ œ์–ด
ย 
AR tool - Vuforia
AR tool - VuforiaAR tool - Vuforia
AR tool - Vuforia
ย 

Similar to 000001560595_1425351208416_0.5687465614331808

๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ
๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ
๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผJM code group
ย 
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”CiscoKorea
ย 
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)YOO SE KYUN
ย 
Openstack Usecase(2018)
Openstack Usecase(2018)Openstack Usecase(2018)
Openstack Usecase(2018)Gasida Seo
ย 
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ianIan Choi
ย 
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTONAVER CLOUD PLATFORMใ…ฃ๋„ค์ด๋ฒ„ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ
ย 
[slideshare]k8s.pptx
[slideshare]k8s.pptx[slideshare]k8s.pptx
[slideshare]k8s.pptxssuserb8551e
ย 
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›BESPIN GLOBAL
ย 
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•rockplace
ย 
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ๋ณต์—ฐ ์ด
ย 
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žต
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žตํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žต
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žตOpen Source Consulting
ย 
Cloud for Kubernetes : Session2
Cloud for Kubernetes : Session2Cloud for Kubernetes : Session2
Cloud for Kubernetes : Session2WhaTap Labs
ย 
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)uEngine Solutions
ย 
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธNAVER CLOUD PLATFORMใ…ฃ๋„ค์ด๋ฒ„ ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ
ย 
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3Heejong Lee
ย 
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€rockplace
ย 
Deployment techniques for cloud native
Deployment techniques for cloud nativeDeployment techniques for cloud native
Deployment techniques for cloud nativeAlex Jeong
ย 
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒrockplace
ย 
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„Cloud-Barista Community
ย 
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ๊ณ ํฌ๋ฆฟ default
ย 

Similar to 000001560595_1425351208416_0.5687465614331808 (20)

๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ
๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ
๊ณ ๋ ค๋Œ€ ๊ต์œก์ •๋ณด ์„œ๋น„์Šค ํŠน๋ก  7์ฃผ
ย 
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”
์™œ ํด๋ฆฌ์ปค์ผ๊นŒ์š”
ย 
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)
201011 ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ ์šฉ๊ฐ€๋Šฅ ๋ถ„์•ผ๋ณ„ ํ™˜๊ฒฝ ๋ถ„์„ ๋ฐ ์ •์ฑ…๋ฐฉํ–ฅ ์—ฐ๊ตฌ(์ตœ์ข…)
ย 
Openstack Usecase(2018)
Openstack Usecase(2018)Openstack Usecase(2018)
Openstack Usecase(2018)
ย 
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian
๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ์›จ์–ด2014๋…„1์›” s dx_ian
ย 
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO
๋ฉ€ํ‹ฐยทํ•˜์ด๋ธŒ๋ฆฌ๋“œ ํด๋ผ์šฐ๋“œ ๊ตฌ์ถ• ์ „๋žต - ๋„ค์ด๋ฒ„๋น„์ฆˆ๋‹ˆ์Šคํ”Œ๋žซํผ ๋ฐ•๊ธฐ์€ CTO
ย 
[slideshare]k8s.pptx
[slideshare]k8s.pptx[slideshare]k8s.pptx
[slideshare]k8s.pptx
ย 
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›
Session 1. ๋””์ง€ํ„ธ ํŠธ๋ Œ์Šคํฌ๋ฉ”์ด์…˜์˜ ํ•ต์‹ฌ, ํด๋ผ์šฐ๋“œ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ A to Z - ๋ฒ ์Šคํ•€๊ธ€๋กœ๋ฒŒ ์ด๊ทผ์šฐ ์œ„์›
ย 
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
Azure Red Hat OpenShift ๋ฅผ ํ†ตํ•œ ๋” ๋น ๋ฅด๊ณ  ์‰ฌ์šด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ•
ย 
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ
ใ€Žแ„ˆแ…กแ„…แ…ณแ„€แ…ฆ แ„’แ…ฎแ†ดแ„‹แ…ฅแ„‡แ…ฉแ„‚แ…ณแ†ซ แ„€แ…ฎแ„€แ…ณแ†ฏ แ„แ…ณแ†ฏแ„…แ…กแ„‹แ…ฎแ„ƒแ…ณ แ„‘แ…ณแ†ฏแ„…แ…ขแ†บแ„‘แ…ฉแ†ทใ€ - ๋ง›๋ณด๊ธฐ
ย 
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žต
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žตํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žต
ํด๋ผ์šฐ๋“œ ๋„ค์ดํ‹ฐ๋ธŒ ์ „ํ™˜ ์š”์†Œ ๋ฐ ์„ฑ๊ณต์ ์ธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋„์ž… ์ „๋žต
ย 
Cloud for Kubernetes : Session2
Cloud for Kubernetes : Session2Cloud for Kubernetes : Session2
Cloud for Kubernetes : Session2
ย 
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)
์œ ์—”์ง„ ์˜คํ”ˆ์†Œ์Šค ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ (uEngine Microservice architecture Platform)
ย 
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ
[์›จ๋น„๋‚˜] Follow me! ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ๊ตฌ์ถ• ๊ธฐ๋ณธํŽธ - ๊ฐ•์ง€๋‚˜ ํ…Œํฌ ์—๋ฐ˜์ ค๋ฆฌ์ŠคํŠธ
ย 
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3
์˜ค๋ผํด ํด๋ผ์šฐ๋“œ์™€ ํ•จ๊ป˜ ๋– ๋‚˜๋Š” ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ์•„ํ‚คํ…์ฒ˜๋กœ์˜ ์—ฌํ–‰ V3
ย 
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€
๊ณต๊ฐœ์†Œํ”„ํŠธ์›จ์–ด DBMS์— ๋Œ€ํ•œ ์ฃผ์š” ๋„์ž… ๋ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์‚ฌ๋ก€
ย 
Deployment techniques for cloud native
Deployment techniques for cloud nativeDeployment techniques for cloud native
Deployment techniques for cloud native
ย 
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ
๋ฝํ”Œ๋ ˆ์ด์Šค OpenShift Q&A ํ† ํฌ์‡ผ ๋ฐœํ‘œ์ž๋ฃŒ
ย 
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„
Cloud-Barista ์ œ7์ฐจ ์ปจํผ๋Ÿฐ์Šค : ๋ฉ€ํ‹ฐํด๋ผ์šฐ๋“œ, ์ปดํ“จํŒ… ์ธํ”„๋ผ์— ์ œ์•ฝ์—†๋Š” ์„œ๋น„์Šค ์ƒํƒœ๊ณ„
ย 
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ
๋น„ํŠธ๊ต์œก์„ผํ„ฐ-AWSํ™œ์šฉ 1์ฃผ์ฐจ: EC2, S3, Elastic Beanstalks ์‚ฌ์šฉ
ย 

000001560595_1425351208416_0.5687465614331808

  • 1. ์ €์ž‘์žํ‘œ์‹œ-๋น„์˜๋ฆฌ-๋ณ€๊ฒฝ๊ธˆ์ง€ 2.0 ๋Œ€ํ•œ๋ฏผ๊ตญ ์ด์šฉ์ž๋Š” ์•„๋ž˜์˜ ์กฐ๊ฑด์„ ๋”ฐ๋ฅด๋Š” ๊ฒฝ์šฐ์— ํ•œํ•˜์—ฌ ์ž์œ ๋กญ๊ฒŒ l ์ด ์ €์ž‘๋ฌผ์„ ๋ณต์ œ, ๋ฐฐํฌ, ์ „์†ก, ์ „์‹œ, ๊ณต์—ฐ ๋ฐ ๋ฐฉ์†กํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์กฐ๊ฑด์„ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค: l ๊ท€ํ•˜๋Š”, ์ด ์ €์ž‘๋ฌผ์˜ ์žฌ์ด์šฉ์ด๋‚˜ ๋ฐฐํฌ์˜ ๊ฒฝ์šฐ, ์ด ์ €์ž‘๋ฌผ์— ์ ์šฉ๋œ ์ด์šฉํ—ˆ๋ฝ์กฐ๊ฑด ์„ ๋ช…ํ™•ํ•˜๊ฒŒ ๋‚˜ํƒ€๋‚ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. l ์ €์ž‘๊ถŒ์ž๋กœ๋ถ€ํ„ฐ ๋ณ„๋„์˜ ํ—ˆ๊ฐ€๋ฅผ ๋ฐ›์œผ๋ฉด ์ด๋Ÿฌํ•œ ์กฐ๊ฑด๋“ค์€ ์ ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ €์ž‘๊ถŒ๋ฒ•์— ๋”ฐ๋ฅธ ์ด์šฉ์ž์˜ ๊ถŒ๋ฆฌ๋Š” ์œ„์˜ ๋‚ด์šฉ์— ์˜ํ•˜์—ฌ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ด์šฉํ—ˆ๋ฝ๊ทœ์•ฝ(Legal Code)์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์š”์•ฝํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. Disclaimer ์ €์ž‘์žํ‘œ์‹œ. ๊ท€ํ•˜๋Š” ์›์ €์ž‘์ž๋ฅผ ํ‘œ์‹œํ•˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋น„์˜๋ฆฌ. ๊ท€ํ•˜๋Š” ์ด ์ €์ž‘๋ฌผ์„ ์˜๋ฆฌ ๋ชฉ์ ์œผ๋กœ ์ด์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ณ€๊ฒฝ๊ธˆ์ง€. ๊ท€ํ•˜๋Š” ์ด ์ €์ž‘๋ฌผ์„ ๊ฐœ์ž‘, ๋ณ€ํ˜• ๋˜๋Š” ๊ฐ€๊ณตํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
  • 2. ํด ๋ผ ์šฐ ๋“œ ์Šค ํ†  ๋ฆฌ ์ง€ ํ™• ์žฅ ์„ ์œ„ ํ•œ ํ•˜ ์ด ๋ธŒ ๋ฆฌ ๋“œ ์Šค ํ†  ๋ฆฌ ์ง€ A P I ์˜ ์„ค ๊ณ„ ์ž„ ๋ณต ์ถœ ์„์‚ฌ ํ•™์œ„๋…ผ๋ฌธ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„ TheDesignofHybridStorageAPI forCloudStorageExtension 2013๋…„ 02์›” ์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์› ์ • ๋ณด ๊ณผ ํ•™ ๊ณผ ์ž„ ๋ณต ์ถœ
  • 3.
  • 4. ์„์‚ฌ ํ•™์œ„๋…ผ๋ฌธ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„ TheDesignofHybridStorageAPI forCloudStorageExtension 2013๋…„ 02์›” ์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์› ์ • ๋ณด ๊ณผ ํ•™ ๊ณผ ์ž„ ๋ณต ์ถœ
  • 5. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํ™•์žฅ์„ ์œ„ํ•œ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šคํ† ๋ฆฌ์ง€ API์˜ ์„ค๊ณ„ TheDesignofHybridStorageAPI forCloudStorageExtension ์ง€๋„๊ต์ˆ˜ ๊น€ ์ˆœ ๊ณค ์ด ๋…ผ๋ฌธ์„ ์„์‚ฌํ•™์œ„ ๋…ผ๋ฌธ์œผ๋กœ ์ œ์ถœํ•จ. 2013๋…„ 02์›” ์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์› ์ • ๋ณด ๊ณผ ํ•™ ๊ณผ ์ž„ ๋ณต ์ถœ
  • 6. ์ž„๋ณต์ถœ์˜ ์„์‚ฌํ•™์œ„ ๋…ผ๋ฌธ์„ ์ธ์ค€ํ•จ. ์‹ฌ์‚ฌ์œ„์›์žฅ ์ธ ์‹ฌ ์‚ฌ ์œ„ ์› ์ธ ์‹ฌ ์‚ฌ ์œ„ ์› ์ธ 2012๋…„ 12์›” ์ผ ์ค‘ ๋ถ€ ๋Œ€ ํ•™ ๊ต ์ธ ๋ฌธ ์‚ฐ ์—… ๋Œ€ ํ•™ ์›
  • 7. -i- โ—† ๋ชฉ ์ฐจ โ—† ๋ชฉ ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ฐ ํ‘œ ๋ชฉ ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ฒ ๊ทธ๋ฆผ๋ชฉ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง โ…ด ์ œ 1์žฅ ์„œ ๋ก  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 1 ์ œ 1์ ˆ ์—ฐ๊ตฌ ๋ฐฐ๊ฒฝ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 1 ์ œ 2์ ˆ ์—ฐ๊ตฌ ๋‚ด์šฉ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 2 ์ œ 2์žฅ ๊ด€๋ จ์—ฐ๊ตฌ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3 ์ œ 1์ ˆ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3 ์ œ 2์ ˆ ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 6 ์ œ 3์ ˆ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 11 ์ œ 3์žฅ HybridStorageAPI์˜ ์„ค๊ณ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13 ์ œ 1์ ˆ ์ „์ฒด์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13 1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 15 2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 16 3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 17 ์ œ 2์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 18 1.InboundHandler๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19
  • 8. -ii- 2.OutboundHandler๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19 3.Controller๊ตฌ๊ฐ„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20 4.์—ฐ๋™ ํ”„๋กœํ† ์ฝœ ๋ฐฉ์‹ ๋ฐ ์†ก์ˆ˜์‹  ์ „๋ฌธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20 ์ œ 3์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21 1.IF_USER_HSA โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 22 2.IF_HSA_STRG โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26 ์ œ 4์žฅ ์‹คํ—˜ํ™˜๊ฒฝ ๋ฐ ๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36 ์ œ 1์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ฐœ๋ฐœํ™˜๊ฒฝ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36 ์ œ 2์ ˆ ์—ฐ๋™๊ทœ๊ฒฉ ๋ฐ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38 1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38 2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 39 3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 40 ์ œ 3์ ˆ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 41 1.์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 42 2.HybridStorageAPI์˜ ๊ธฐ์ˆ  ๊ฒ€์ฆ ๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 48 ์ œ 5์žฅ ๊ฒฐ๋ก  ๋ฐ ํ–ฅํ›„๊ณผ์ œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 54 ์ฐธ๊ณ ๋ฌธํ—Œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 56 Abstract โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 58 ๊ฐ์‚ฌ์˜ ๊ธ€ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 60
  • 9. -iii- โ—† ํ‘œ ๋ชฉ ์ฐจ โ—† [ํ‘œ 1]์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™” โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 3 [ํ‘œ 2]ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 4 [ํ‘œ 3]์•„ํ‚คํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 6 [ํ‘œ 4]HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ์š”์†Œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 14 [ํ‘œ 5]HybridStorageAPI๊ฐœ๋ฐœํ•ญ๋ชฉ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 20 [ํ‘œ 6]์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21 [ํ‘œ 7]FILE_UP_HSA Overview โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 22 [ํ‘œ 8]FILE_UP_HSA RequestDefinition โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 23 [ํ‘œ 9]FILE_UP_HSA ResponseDefinition โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 23 [ํ‘œ 10]FILE_UP_HSA ErrorCodeโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 24 [ํ‘œ 11]FILE_DW_HSA Overview โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 24 [ํ‘œ 12]FILE_DW_HSA RequestDefinitionโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 25 [ํ‘œ 13]FILE_DW_HSA ResponseDefinitionโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 25 [ํ‘œ 14]FILE_DW_HSA ErrorCode โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26 [ํ‘œ 15]FILE_UP_ES RequestParameter โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 26 [ํ‘œ 16]FILE_DW_ESRequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 28 [ํ‘œ 17]FILE_AUTH_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 29 [ํ‘œ 18]FILE_AUTH_SW ResponseParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 29 [ํ‘œ 19]FILE_UP_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 30 [ํ‘œ 20]FILE_DW_SW RequestParameterโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 32
  • 10. -iv- [ํ‘œ 21]HybridStorageAPIํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 36 [ํ‘œ 22]์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ ๊ฐœ์š” โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 41 [ํ‘œ 23]EasyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 42 [ํ‘œ 24]SwiftUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 43 [ํ‘œ 25]GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 44 [ํ‘œ 26]EasyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 45 [ํ‘œ 27]SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 46 [ํ‘œ 28]GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 47 [ํ‘œ 29]Storages์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 48 [ํ‘œ 30]Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 49 [ํ‘œ 31]RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 50 [ํ‘œ 32]ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 50 [ํ‘œ 33]์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์  โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 51 [ํ‘œ 34]์ธ์ฆ์ •๋ณด Parsing์˜ˆ์‹œ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 53
  • 11. -v- โ—† ๊ทธ ๋ฆผ ๋ชฉ ์ฐจ โ—† [๊ทธ๋ฆผ 1] CloudArchitectureโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 7 [๊ทธ๋ฆผ 2] SoftwareasaService โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 8 [๊ทธ๋ฆผ 3] InfrastructureasaServiceโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 9 [๊ทธ๋ฆผ 4] Platform asaServiceโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 10 [๊ทธ๋ฆผ 5] CloudStorage โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 12 [๊ทธ๋ฆผ 6] HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 13 [๊ทธ๋ฆผ 7] ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 15 [๊ทธ๋ฆผ 8]ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 16 [๊ทธ๋ฆผ 9]ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 17 [๊ทธ๋ฆผ 10]HybridStorageAPI๊ฐœ๋…๋„ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 18 [๊ทธ๋ฆผ 11]HybridStorageAccess์„œ๋ฒ„ ๊ตฌ์กฐ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 19 [๊ทธ๋ฆผ 12]HybridStorageAPI์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 21 [๊ทธ๋ฆผ 13]ํŒŒ์ผ ์—…๋กœ๋“œ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 38 [๊ทธ๋ฆผ 14]ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 39 [๊ทธ๋ฆผ 15]ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ SequenceDiagram โ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€งโ€ง 40
  • 12. -1- ์ œ 1์žฅ ์„œ ๋ก  ์ œ 1์ ˆ ์—ฐ๊ตฌ๋ฐฐ๊ฒฝ ๋น„์ฆˆ๋‹ˆ์Šค ํ™˜๊ฒฝ๊ณผ IT ๋ฐœ์ „์˜ ๋น ๋ฅธ ๋ณ€ํ™”๋งŒํผ์ด๋‚˜ ๊ธฐ์—…๋“ค์˜ IT ๋น„์šฉ์€ ๋Š˜์–ด๋‚˜๊ณ  ์žˆ ๋‹ค.๋”ฐ๋ผ์„œ ๊ธ‰๋ณ€ํ•˜๋Š” ํ™˜๊ฒฝ์— ์ ์ ˆํ•˜๊ฒŒ ๋Œ€์‘ํ•˜๋ฉฐ IT ๋น„์šฉ์„ ์ ˆ๊ฐํ•˜๋Š” ๊ฒƒ์€ ๋ชจ๋“  ๊ธฐ ์—…๋“ค์˜ ์ƒ์กด ๊ด€๊ณ„๊ฐ€ ๋˜๊ณ  ์žˆ๋‹ค.์ด๋Ÿฌํ•œ ๋ถ€๋‹ด์€ IT ์ž์‚ฐ์— ๋Œ€ํ•œ ๊ธฐ์—…๋“ค์˜ ํŒจ๋Ÿฌ๋‹ค์ž„ ์— ๋ณ€ํ™”๋ฅผ ๊ฐ€์ ธ ์˜ค๊ณ  ์žˆ๋‹ค.IT ์ž์‚ฐ์— ๋Œ€ํ•œ ๊ธฐ์กด์˜ ํŒจ๋Ÿฌ๋‹ค์ž„์ธ ์†Œ์œ ์—์„œ ์ด์ œ๋Š” ์‚ฌ ์šฉ์œผ๋กœ ๋ฐ”๋€Œ๊ณ  ์žˆ๋Š” ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์—๋Š” 1980๋…„๋Œ€ ํ›„๋ฐ˜๋ถ€ํ„ฐ IT ์šด์˜์˜ ์•„์›ƒ์†Œ์‹ฑ(SM), ์›นํ˜ธ์ŠคํŒ…, ASP(ApplicationServiceProvider)๋“ฑ์˜ ๋“ฑ์žฅ์€ ์ด๋Ÿฌํ•œ ํŒจ๋Ÿฌ๋‹ค์ž„์˜ ๋ณ€ํ™”์— ํ•œ ๋ชซ์„ ํ•˜์˜€์œผ๋ฉฐ,ํŠนํžˆ 2007๋…„ ์ดํ›„์—๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค๊ฐ€ ์‹œ์žฅ์— ๋“ฑ์žฅํ•จ์— ๋”ฐ๋ผ IT ์ž์‚ฐ์€ ์†Œ์œ ๋ณด๋‹ค๋Š” ์„œ๋น„์Šค ๋ฐ›๋Š”๋‹ค๋Š” ์ถ”์„ธ๊ฐ€ ์ ์  ํ™•์‚ฐ๋˜๊ณ  ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝํ–ฅ์„ ๋ฐ˜์ฆํ•˜๋“ฏ ์•„๋งˆ์กด,๊ตฌ๊ธ€,IBM,MS,Yahoo๋“ฑ ์ฃผ์š” IT ๊ธฐ์—…๋“ค์€ ์† ์† ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ์œผ๋ฉฐ,์ตœ๊ทผ ๋“ค์–ด Salesforce,Facebook,Youtube, Myspace๊ฐ™์€ ๊ธฐ์—…๋“ค๋„ ์ธํ„ฐ๋„ท ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์ƒ์œผ๋กœ ํ•œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์žˆ๋‹ค[1]. ์ด๋Ÿฐ ๊ธฐ์—…๋“ค์ด ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์— ์–ด๋–ค ์—ญํ• ๊ณผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š”์ง€ ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค ๋ช…ํ•˜๋ฉด,๊ตฌ๊ธ€์€ ์ˆ˜์‹ญ๋งŒ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„ ๊ด€๋ฆฌ ๊ธฐ์ˆ ,์ˆ˜์‹ญ ํŽ˜ํƒ€๋ฐ”์ดํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ € ์žฅํ•˜๊ณ  ๋ถ„์„ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ์ˆ  ๋“ฑ์„ ๋ณด์œ ํ•˜๊ณ  ์žˆ์œผ๋ฉฐ,์ด๋Ÿฐ ๊ธฐ์ˆ  ์ค‘ ์ผ๋ถ€๋ฅผ ๋…ผ๋ฌธ์œผ๋กœ ์™ธ๋ถ€์— ๊ณต๊ฐœํ•ด ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ๊ธฐ์ˆ ์˜ ์„ฑ๊ณต ์‚ฌ๋ก€๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์žˆ๋‹ค.๋˜ํ•œ ๋ฉ”์ผ,์ผ์ •, Docs๋“ฑ๊ณผ ๊ฐ™์€ ์ผ๋ฐ˜ ์‚ฌ์šฉ์ž๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์˜ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ ์•ฑ์—” ์ง„(AppEngine)์ด๋ผ๋Š” ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜์˜ ํ”Œ๋žซํผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ด ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐœ๋ฐœํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์„ ์ œ๊ณตํ•œ๋‹ค. ์•„๋งˆ์กด์€ ๊ฐ€์ƒ ๋จธ์‹ ,์Šคํ† ๋ฆฌ์ง€ ๋“ฑ ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ ์ž์› ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ,์„ธ์ผ ์ฆˆํฌ์Šค๋‹ท์ปด์€ ๊ธฐ์—… ๋Œ€์ƒ CRM ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค[2]. ๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์—ฌ๋Ÿฌ ๋ถ„์•ผ ์ค‘ ์Šคํ† ๋ฆฌ์ง€(IaaS,PaaS)์˜ ํšจ์œจ์ 
  • 13. -2- ์ธ ์ œ๊ณต๊ณผ ์—ฐ๋™์„ ์œ„ํ•œ ๋ฐฉ์•ˆ์œผ๋กœ HybridStorage๊ฐœ๋…์„ ๋„์ž…ํ•˜์—ฌ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ ์ง€ ์‹œ์Šคํ…œ์—์„œ ์ œ๊ณตํ•˜๋Š” OpenStack,Gluster,Atmos๋“ฑ์˜ ๋‹ค์–‘ํ•œ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต์ด ๊ฐ€๋Šฅํ•˜๋„๋ก API์˜ ์„ค๊ณ„๋ฅผ ์ง„ํ–‰ ํ•˜์˜€๋‹ค.HybridStorageAPI๋ฅผ ์„ค๊ณ„ํ•˜๊ณ  ๊ธฐ๋ณธ์ ์ธ ์‹œ์Šคํ…œ ํ”Œ๋กœ์šฐ๋ฅผ ํ†ตํ•œ ๊ฒฐ๊ณผ๋ฅผ ์ œ์‹œํ•˜์—ฌ,ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ์˜ ์Šคํ† ๋ฆฌ์ง€ ์ œ ๊ณต์ด ๊ฐ€๋Šฅ ํ•˜๋„๋ก ํ•˜์˜€๋‹ค. ์ œ 2์ ˆ ์—ฐ๊ตฌ๋‚ด์šฉ ๋ณธ ์—ฐ๊ตฌ๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ์—์„œ Storage์˜ ์ œ๊ณต ์šฉ๋Ÿ‰ ํ™•๋Œ€์— ๋”ฐ๋ผ Storage ์˜ ์ฆ์„ค ๋น„์šฉ์ด์Šˆ๋ฅผ ํ•ด๊ฒฐํ•˜๊ณ ,์ € ๋น„์šฉ์˜ ์šด์šฉ ๊ฐ€๋Šฅํ•œ Storage ๊ธฐ์ˆ ์„ ํ™•๋ณดํ•˜๊ณ  Open Source๊ธฐ๋ฐ˜์˜ StorageSolution์„ ๋„์ž…ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์‚ฌ์—… ํ™•์žฅ์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ฐ˜์„ ๋งˆ๋ จํ•˜๊ธฐ ์œ„ํ•ด HybridStorageAPI์˜ ์„ค๊ณ„๋ฅผ ์ง„ํ–‰ํ•˜์˜€๋‹ค.์„ค๊ณ„ ๋ฐฉ๋ฒ•์„ ์ œ์‹œํ•œ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ์ฒซ์งธ,ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์— ๋Œ€ํ•œ ๊ธฐ์ˆ  ๋ฐ ์›๋ฆฌ,๋“ฑ์žฅ๋ฐฐ๊ฒฝ์„ ์‚ดํŽด๋ณธ๋‹ค.๋‘˜์งธ,ํด๋ผ์šฐ ๋“œ ์ปดํ“จํŒ… ํ™˜๊ฒฝ ๊ตฌ์„ฑ๊ณผ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ ์—ฐ๊ตฌ ์ž๋ฃŒ๋ฅผ ํ™œ์šฉํ•œ๋‹ค.์…‹์งธ,์Šคํ† ๋ฆฌ์ง€์˜ ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ๊ณผ HybridStorageAPI๋ฅผ ์œ„ํ•ด ํด ๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ์‹œ์Šคํ…œ์—์„œ ์Šคํ† ๋ฆฌ์ง€ ์ œ๊ณต๋ฐฉ์‹์„ ์—ฐ๊ตฌํ•œ๋‹ค.๋„ท์งธ,๋‹ค์–‘ํ•œ ์„œ๋น„์Šค์— ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•œ OpenAPIํ˜•ํƒœ์˜ ์„œ๋น„์Šค ํ”„๋กœํ† ์ฝœ์„ ์ œ์•ˆํ•œ๋‹ค. ๋ณธ ๋…ผ๋ฌธ์˜ ๊ตฌ์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.์ œ1์žฅ์—์„œ๋Š” ๋ณธ ์—ฐ๊ตฌ๋ฐฐ๊ฒฝ,์—ฐ๊ตฌ๋‚ด์šฉ์„ ์„ค๋ช…ํ•œ๋‹ค. ์ œ2์žฅ์—์„œ๋Š” ๋…ผ๋ฌธ์˜ ๊ด€๋ จ์—ฐ๊ตฌ์— ๋Œ€ํ•˜์—ฌ ์„ค๋ช…ํ•œ๋‹ค.์ œ3์žฅ์—์„œ๋Š” ์ œ์‹œํ•œ ์‹œ์Šคํ…œ์˜ ์ „ ์ฒด์ ์ธ ๊ตฌ์„ฑ๊ณผ ์„ธ๋ถ€๊ตฌ์„ฑ,๊ฐ ๋ชจ๋“ˆ์˜ ๊ธฐ๋Šฅ์„ ์ƒ์„ธํžˆ ์„ค๋ช…ํ•œ๋‹ค.์ œ4์žฅ์—์„œ๋Š” ์ œ์•ˆ๋œ ๋ฐฉ์‹์˜ ์‹คํ—˜ํ™˜๊ฒฝ์„ ์„ค๋ช…ํ•˜๊ณ ,๊ฒฐ๊ณผ์˜ ํšจ์œจ์„ฑ์„ ์ฆ๋ช…ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์—ฐ๊ณ„ํ•œ API์˜ ์‹œํ—˜๊ฒฐ๊ณผ๋ฅผ ์ œ์‹œํ•œ๋‹ค.๋งˆ์ง€๋ง‰์œผ๋กœ ์ œ5์žฅ์—์„œ๋Š” ๋ณธ ๋…ผ๋ฌธ์— ๋Œ€ํ•œ ๊ฒฐ๋ก  ๊ณผ ํ–ฅํ›„๊ณผ์ œ๋ฅผ ์ œ์‹œํ•œ๋‹ค.
  • 14. -3- ์ œ 2์žฅ ๊ด€๋ จ ์—ฐ๊ตฌ ์ œ 1์ ˆ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ๋„คํŠธ์›Œํฌ์ƒ์— ๋ถ„์‚ฐ๋˜์–ด ์žˆ๋Š” ์ปดํ“จํ„ฐ๋ฅผ ๊ฐ€์ƒํ™”(virtualization) ์‹œํ‚จ ํ›„ ์ธํ„ฐ๋„ท๊ณผ ๋„คํŠธ์›Œํฌ ํ™˜๊ฒฝ์— ์ ‘๊ทผํ•˜์—ฌ ์‹คํ–‰ํ•˜๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค๋ฅผ ๋ง ํ•œ๋‹ค.ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‹คํ–‰ํ•˜๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ํ•ญ๋ชฉ์ธ ์ปดํ“จ ํ„ฐ ์ž์›์˜ ๊ฐ€์ƒํ™”,๋ฌด์ œํ•œ์ ์ธ ์‚ฌ์šฉ,๋ฌผ๋ฆฌ์ ์ธ ์ปดํ“จํ„ฐ ์‹œ์Šคํ…œ๋“ค์˜ ์„ธ๋ถ„ํ™” ๋“ฑ์— ์˜ํ•ด ๋‹ค์‹œ ๊ตฌ๋ถ„๋œ๋‹ค[4]. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ํฐ ๊ฐœ๋…์—์„œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์น˜ (deployment)๋ชจ๋ธ๊ณผ ์„œ๋น„์Šค(service)๋ชจ๋ธ๋กœ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋ฐฐ์น˜ ๋ชจ๋ธ์€ ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์ด ๋„คํŠธ์›Œํฌ์ƒ์—์„œ ์–ด๋–ค ์œ„์น˜์— ์žˆ๋Š”์ง€,์–ด๋–ค ๋ชฉ์  ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์ •์˜์ด๋ฉฐ ๊ณต๊ณต(public), ๊ฐœ์ธ(private), ์ปค๋ฎค๋‹ˆํ‹ฐ (community),ํ•˜์ด๋ธŒ๋ฆฌ๋“œ(hybrid)ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์œผ๋กœ ๋‚˜๋‰˜์–ด์ง„๋‹ค[2,4]. ์‹œ๋น„์Šค ๋ชจ๋ธ์€ ๊ณต๊ธ‰์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ์ข…๋ฅ˜์— ๋”ฐ๋ผ ๊ตฌ๋ถ„๋œ๋‹ค.๊ฐ€์žฅ ์ž˜ ์•Œ๋ ค์ง„ ์„œ๋น„์Šค ๋ชจ๋ธ์—๋Š” SPI(Software product improvement) ๋ชจ๋ธ์ธ SaaS(SoftwareasaService),PaaS(Platform asaService),IaaS(Infrastructureas aService)๊ฐ€ ์žˆ๋‹ค.์ฆ‰,์„œ๋น„์Šค ๋ชจ๋ธ์€ ๊ตฌ์ถ•ํ•œ ์„œ๋น„์Šค ์ข…๋ฅ˜์— ๋”ฐ๋ผ ๋ฒค๋”๊ฐ€ ๋ฌด์—‡์„ ๊ด€๋ฆฌํ•ด์•ผ ํ•˜๋Š”์ง€์™€ ์‚ฌ์šฉ์ž์˜ ๊ถŒํ•œ์ด ๋ฌด์—‡์ธ์ง€์— ๋”ฐ๋ผ ๊ตฌ๋ถ„๋œ๋‹ค[2]. ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์ •์˜๋ฅผ ์ข€ ๋” ๊นŠ๊ฒŒ ์‚ดํŽด๋ณด๋ฉด,์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™”์˜ ๋‘ ๊ฐ€์ง€ ๊ฐœ ๋…์„ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ,๋‹ค์Œ [ํ‘œ 1]๊ณผ ๊ฐ™๋‹ค[4].
  • 15. -4- ์ถ”์ƒํ™” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ช…์‹œ๋˜์ง€ ์•Š์€ ๋ฌผ๋ฆฌ์ ์ธ ์‹œ์Šคํ…œ์—์„œ ์‹คํ–‰๋˜๊ณ ,๋ฐ์ดํ„ฐ๋„ ์•Œ๋ ค์ง€์ง€ ์•Š์€ ์œ„์น˜์— ์ €์žฅ๋˜๊ณ ,์‹œ์Šคํ…œ ๊ด€๋ฆฌ๋Š” ์™ธ๋ถ€์— ์œ„ํƒํ•˜๊ณ ,์‚ฌ์šฉ์ž๋Š” ์–ด๋””์„œ๋‚˜ ์‹œ์Šคํ…œ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.์ฆ‰,์‹œ์Šคํ…œ์˜ ์ƒ์„ธํ•œ ์‚ฌํ•ญ๋“ค์„ ์‚ฌ ์šฉ์ž์™€ ๊ฐœ๋ฐœ์ž๋Š” ๋ชฐ๋ผ๋„ ์‹œ์Šคํ…œ์„ ์ด์šฉํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ ๊ฐ€์ƒํ™” ์‹œ์Šคํ…œ๊ณผ ์ €์žฅ์žฅ์น˜(storage)๋Š” ์ค‘์•™์— ์ง‘์ค‘๋œ ํด๋ผ์šฐ์‹œ ์‹œ์Šคํ…œ์˜ ์ธํ”„๋ผ (instrastructure)๋กœ๋ถ€ํ„ฐ ํ•„์š”ํ•œ ๋งŒํผ ๊ณต๊ธ‰๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.์š”๊ธˆ์€ ์‚ฌ์šฉํ•œ ๋งŒ ํผ ์ง€๋ถˆํ•˜๊ณ ,๋‹ค์ค‘ ์†Œ์œ (multi-tenany)๊ฐ€ ๊ฐ€๋Šฅํ•˜๊ณ ,์‹œ์Šคํ…œ ์ž์›๋“ค์€ ๋น ๋ฅด ๊ฒŒ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.์ฆ‰,ํ’€๋ง๊ณผ ๊ณต์œ ๋˜๋Š” ์‹œ์Šคํ…œ ์ž์›์„ ํ†ตํ•ด ํ•˜๋‚˜์˜ ์‹œ์Šค ํ…œ์„ ๊ณต์œ ํ•ด์„œ ๋ˆ„๊ตฌ๋‚˜ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ [ํ‘œ 1]์ถ”์ƒํ™”์™€ ๊ฐ€์ƒํ™” ์žฅ์  -์ฃผ๋ฌธํ˜• ์…€ํ”„์„œ๋น„์Šค :์‚ฌ์šฉ์ž๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž์™€ ๊ฐœ์ธ์ ์ธ ์ ‘์ด‰ ์—†์ด๋„ ์ปดํ“จํ„ฐ ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. - ๊ด‘๋Œ€์—ญ ๋„คํŠธ์›Œํฌ ์ ‘๊ทผ :ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ์˜ ์ž์›์— ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ ์ž๋“ค์ด ํ”Œ๋žซํผ์— ๋…๋ฆฝ์ ์œผ๋กœ ์ ‘๊ทผํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•˜๋ฉฐ ํ‘œ์ค€์ ์ธ ์ฒด๊ณ„์˜ ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.์ด๋Š” ๋‹ค๋ฅธ ์šด์˜์ฒด์ œ ๊ฐ„์˜ ํ˜ธํ™˜์„ฑ์„ ๋ณด์žฅํ•˜๋ฉฐ ๋žฉํƒ‘,ํœด๋Œ€ํฐ,PDA ๊ฐ™์€ ์”ฌ/ํŒป ํ”Œ๋žซํผ์„ ์ง€์›ํ•œ๋‹ค๋Š” ๋œป์ด๋‹ค. - ์ž์›ํ’€๋ง :ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ๋ฉ€ํ‹ฐํ…Œ๋„ŒํŠธ(multi-tenant)์‚ฌ์šฉ์„ ์ง€์›ํ•˜๋Š” ์‹œ์Šคํ…œ์—์„œ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๋Š” ์ž์›์„ ์ƒ์„ฑํ•˜๋ฉฐ,๋ฌผ๋ฆฌ์  ์‹œ์Šคํ…œ๊ณผ ๊ฐ€์ƒ ์‹œ์Šคํ…œ์€ ํ•„์š”์— ๋”ฐ๋ผ์„œ ์œ ๋™์ ์œผ๋กœ ํ• ๋‹น ํ˜น์€ ์žฌํ• ๋‹น๋œ๋‹ค.ํ’€๋ง์˜ ์ด๋Ÿฌํ•œ ๊ฐœ๋…์€ ๊ฐ€์ƒ ๋จธ์‹ ,ํ”„๋กœ์„ธ์‹ฑ,๋ฉ”๋ชจ๋ฆฌ,์ €์žฅ ์žฅ์น˜,๋„คํŠธ์›Œํฌ ๋Œ€์—ญ๊ณผ ์—ฐ๊ฒฐ ๊ฐ™์€ ์ž์›๋“ค์˜ ์œ„์น˜๋ฅผ ์ˆจ๊ธฐ๊ธฐ ์œ„ํ•œ ์ถ”์ƒํ™”์—์„œ ์•„์ด๋””์–ด๋ฅผ ์–ป์€ ๊ฒƒ์ด ๋‹ค. -๋ฏผ์ฒฉํ•œ ํƒ„๋ ฅ์„ฑ :์ž์›๋“ค์€ ๋น ๋ฅด๊ณ  ํƒ„๋ ฅ์ ์œผ๋กœ ์ค€๋น„๋  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.๋˜ ํ•œ ๊ฐ€์ƒ ๋จธ์‹ ์€ ์ž์›์„ ๋” ๋‚˜์€ ์„ฑ๋Šฅ์˜ ์ปดํ“จํ„ฐ ๋˜๋Š” ๊ฐ™์€ ์„ฑ๋Šฅ์˜ ์ปดํ“จํ„ฐ [ํ‘œ 2]ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์  ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ์žฅ์ ๊ณผ ๋‹จ์ ์€ ๋‹ค์Œ [ํ‘œ 2]์™€ ๊ฐ™๋‹ค[4].
  • 16. -5- ๋‘˜ ์ค‘์—์„œ ์–ด๋–ค ํ˜•ํƒœ๋กœ๋“  ์ž๋™ ๋˜๋Š” ์ˆ˜๋™์œผ๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.์™œ ๋ƒํ•˜๋ฉด ์‚ฌ์šฉ์ž ๊ด€์ ์—์„œ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์ž์›์€ ๋ฌด์ œํ•œ์ด์–ด์•ผ ํ•˜๊ณ ,์–ธ์ œ ๋‚˜ ์–ผ๋งˆ๋“ ์ง€ ๊ตฌ๋งคํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. -์ข…๋Ÿ‰์ œ ์„œ๋น„์Šค :ํด๋ผ์šฐ๋“œ ์‹œ์Šคํ…œ ์ž์›์˜ ์‚ฌ์šฉ๋Ÿ‰์€ ์ธก์ •์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ ๋กœ ํ•ด์„œ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ธก์ •๋˜๊ณ  ๊ฒ€์‚ฌ๋˜๊ณ  ๋ณด๊ณ ๋œ๋‹ค.์ฆ‰,์‚ฌ์šฉ์ž๋Š” ์ €์žฅ์žฅ์น˜ ์‚ฌ์šฉ๋Ÿ‰,ํŠธ๋žœ์žญ์…˜์˜ ์ˆ˜,๋„คํŠธ์›Œํฌ I/O ๋˜๋Š” ๋Œ€์—ญํญ,์‚ฌ์šฉ๋œ ํ”„๋กœ์„ธ์‹ฑ์˜ ์–‘ ๋“ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋น„์šฉ์„ ์ง€๋ถˆํ•œ๋‹ค.์•„๋‹ˆ๋ฉด ์‚ฌ์šฉ์ž๋Š” ์ œ๊ณต๋œ ์„œ๋น„์Šค์˜ ์ˆ˜์ค€์— ๋”ฐ๋ผ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๊ธฐ๋„ ํ•œ๋‹ค. ๋‹จ์  - ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ,๋ณธ์ธ์ด ์›ํ•˜๋Š” ๋งŒํผ ์‚ฌ์šฉ์žํ™”๋˜์ง€ ์•Š์€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์ฆ‰,๋งŽ์€ ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์œ ์šฉํ•˜๋‹ค๊ณ  ํ• ์ง€๋ผ๋„ ์‚ฌ์šฉ์ž ์‹œ์Šคํ…œ์˜ ๋‚ด๋ถ€์— ์„ค์น˜๋˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค์ด ๋” ๋งŽ์€ ๊ธฐ๋Šฅ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. - ๋ชจ๋“  ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ WAN ์—ฐ๊ฒฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•˜๋Š” ๊ณ ์œ ์˜ ๋Œ€ ๊ธฐ์‹œ๊ฐ„์„ ๊ธฐ๋‹ค๋ ค์•ผ ํ•˜๋Š” ์–ด๋ ค์›€์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋Œ€์šฉ๋Ÿ‰ ํ”„๋กœ์„ธ์‹ฑ ์ž‘์—…์— ๋›ฐ์–ด๋‚˜๋‹ค ํ• ์ง€๋ผ๋„ ์‚ฌ์šฉ์ž์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๋งŽ์€ ์–‘์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•ด์•ผ ํ•œ๋‹ค๋ฉด ํด๋ผ์šฐ๋“œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ตœ๊ณ  ์˜ ๋ชจ๋ธ์€ ์•„๋‹ˆ๋‹ค. -ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์€ ์ธํ„ฐ๋„ท์ฒ˜๋Ÿผ ๊ตญ์ ์ด ์—†๋Š” ๋ฌด๊ตญ์  ์‹œ์Šคํ…œ์ด๋‹ค.๋˜ํ•œ ๋ถ„ ์‚ฐ๋œ ์‹œ์Šคํ…œ์ƒ์—์„œ ํ†ต์‹ ์„ ์š”์ฒญํ•˜๋Š” ๊ฒƒ์€ ํ•„์ˆ˜์ ์œผ๋กœ ๋‹จ๋ฐฉํ–ฅ์ด๋‹ค. - ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์•ˆ์—์„œ '๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ์™€ ๋ณด์•ˆ'์„ ์Šค์Šค๋กœ ๊ด€ ๋ฆฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์‚ฌ์šฉ์ž์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์‹œ์Šคํ…œ์ƒ์—์„œ ์ด๋™ํ•˜๊ณ  ๋จธ๋ฌด๋ฅธ ๋‹ค๋ฉด ๋” ์ด์ƒ ์‚ฌ์šฉ์ž์˜ ๊ด€๋ฆฌ ์˜์—ญ์— ์žˆ์ง€ ์•Š๋‹ค.๊ทธ๋Ÿฐ๋ฐ ์‚ฌ์šฉ์ž๋Š” ๋ฒ•์ ์ธ ์กฐ์น˜๊ฐ€ ์‹œํ–‰๋œ๋‹ค๊ณ  ํ• ์ง€๋ผ๋„ ๊ธฐ์ˆ ์ ์ธ ๋ฌธ์ œ๋กœ ์ธํ•ด ์Šค์Šค๋กœ์˜ ๊ฐœ์ธ ์ •๋ณด ๋ณด ํ˜ธ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๊ณต๊ธ‰์ž๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์—†๋‹ค.๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ฐ์ดํ„ฐ๋Š” ๋ˆ„ ๊ตฐ๊ฐ€๊ฐ€ ๊ฐ€๋กœ์ฑ„๊ฑฐ๋‚˜ ๋ถˆ๋ฒ•์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์œ„ํ—˜์ด ์ปค์ง„๋‹ค.
  • 17. -6- ํƒ„๋ ฅ์  ํ™•์žฅ์„ฑ ๋Œ€๋ถ€๋ถ„์˜ ๋””๋ฐ”์ด์Šค๋“ค์ด ์ธํ„ฐ๋„ท์— ์ ‘์†๋˜๋Š” ์ง€๊ธˆ์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ์„œ๋ฒ„ ๋กœ์˜ ์‚ฌ์šฉ์ž ์š”์ฒญ์„ ์˜ˆ์ธกํ•˜๊ธฐ ์–ด๋ ต๋‹ค.๊ทธ๋ฆฌ๊ณ  ์„œ๋น„์Šค ๊ณ„ํš ๋‹จ๊ณ„์—์„œ ์ •ํ™•ํ•œ ์šฉ๋Ÿ‰ ์‚ฐ์ •์ด ์–ด๋ ต๋‹ค.๋”ฐ๋ผ์„œ ์‹œ์Šคํ…œ์€ ๊ฐ‘์ž๊ธฐ ๋ถ€ํ•˜๊ฐ€ ์ฆ๊ฐ€ํ•˜ ๊ฑฐ๋‚˜ ์ดˆ๊ธฐ ๊ณ„ํš ๋Œ€๋น„ ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ์ด ๋งŽ์œผ๋ฉด ๋น ๋ฅด๊ณ  ๊ธฐ๋ฏผํ•˜๊ฒŒ ์‹œ์Šคํ…œ์„ ํ™•์žฅ,์ถ•์†Œํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๊ณ ๊ฐ€์šฉ์„ฑ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋Š” ๋ชจ๋“  ์ž์›(์„œ๋ฒ„,๋ฐ์ดํ„ฐ,ํŒŒ์ผ ๋“ฑ)์ด ์ค‘์•™ ์ง‘์ค‘๋ผ ์žˆ๋Š” ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋‚ด์— ์กด์žฌํ•œ๋‹ค.๋”ฐ๋ผ์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค์˜ ์•ˆ ์ •์„ฑ์— ๋ฌธ์ œ๊ฐ€ ์žˆ์œผ๋ฉด ๋ฌธ์„œ,๋ฉ”์ผ ๋“ฑ ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ „ํ˜€ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋Š” ์ƒํ™ฉ์ด ๋ฐœ์ƒํ•œ๋‹ค.๋”ฐ๋ผ์„œ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค๋Š” ๊ธฐ์กด ์„œ ๋น„์Šค๋ณด๋‹ค ํ›จ์”ฌ ๋†’์€ ๊ณ ๊ฐ€์šฉ์„ฑ์„ ํ•„์š”๋กœ ํ•œ๋‹ค. ์ž๋™ํ™”๋œ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ ๊ตฌ๊ธ€์€ ์ˆ˜์‹ญ๋งŒ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„๋ฅผ ์šด์˜ ์ค‘์ด๋‹ค.์ด๋Ÿฐ ์„œ๋ฒ„๋ฅผ ์ˆ˜์ž‘์—…์œผ ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ๋งŽ์€ ๋น„์šฉ์ด ์†Œ์š”๋œ๋‹ค.ํด๋ผ์šฐ๋“œ ์„œ ๋น„์Šค๋Š” ์ตœ์†Œ ์ˆ˜์‹ญโˆผ์ˆ˜๋ฐฑ ๋Œ€ ์ด์ƒ์˜ ์„œ๋ฒ„๋‚˜ ์Šคํ† ๋ฆฌ์ง€ ๋“ฑ์„ ํ•„์š”๋กœ ํ•˜ ๋ฉฐ,์ด๋“ค ๋ฆฌ์†Œ์Šค๋Š” ์ž๋™์œผ๋กœ ๊ด€๋ฆฌ๋˜์–ด์•ผ ํ•œ๋‹ค. ์ž๋™ ๋ณต๊ตฌ/์น˜๋ฃŒ ๊ณ ๊ฐ€์šฉ์„ฑ์„ ํ™•๋ณดํ•˜๊ณ  ์ž๋™ํ™”๋œ ๋ฆฌ์†Œ์Šค ๊ด€๋ฆฌ๊ฐ€ ๋˜๊ธฐ ์œ„ํ•ด ์†Œํ”„ํŠธ์›จ์–ด ์ž์ฒด์ ์œผ๋กœ ๋ณต๊ตฌ,์น˜๋ฃŒํ•  ์ˆ˜ ์žˆ๋Š” ๋Šฅ๋ ฅ์€ ํ•ต์‹ฌ ์š”๊ตฌ ์‚ฌํ•ญ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.์ด๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•ด ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ์€ ๋” ์–ด๋ ค์›Œ์กŒ๋‹ค๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ๋Š” ๊ธฐ์กด์˜ ํ•˜๋“œ์›จ์–ด์—์„œ ํ•ด๊ฒฐํ•˜๋˜ ๋งŽ์€ ๋ฌธ์ œ๋ฅผ ์†Œ ํ”„ํŠธ์›จ์–ด๋กœ ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ํ•œ๋‹ค.ํ•˜๋“œ์›จ์–ด๋Š” ๋ง ๊ทธ๋ž˜๋„ ์ƒํ™ฉ์— ๋”ฐ๋ผ ์œ  ์—ฐํ•˜๊ฒŒ ์„ค์ •์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ์–ด๋ ต๋‹ค.์ž๋™ํ™”๋œ ๊ด€๋ฆฌ,์œ ์—ฐํ•œ ํ™•์žฅ์„ฑ [ํ‘œ 3]์•„์ผ€ํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ ์ œ 2์ ˆ ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์˜ ๊ตฌํ˜„์ ์ธ ๊ธฐ์ˆ ์„ ๋ณด๋ฉด ๊ฐ€์ƒํ™”์™€ ๋ถ„์‚ฐ ๊ธฐ์ˆ ์˜ ํšจ๊ณผ์ ์ธ ์‚ฌ์šฉ์— ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜๋Š” ๋ถ„์‚ฐ ๊ธฐ์ˆ ์„ ํ•„์š”๋กœ ํ•˜๋Š” ๋ชจ๋“  ์‹œ์Šคํ…œ์— ์ ์šฉ ๊ฐ€๋Šฅํ•œ ์•„ํ‚คํ…์ฒ˜์ด๋‹ค.์ด๋Ÿฐ ๊ด€์ ์—์„œ ์•„ํ‚คํ…์ฒ˜์ ์ธ ์š”๊ตฌ ์‚ฌํ•ญ์€ ๋‹ค์Œ [ํ‘œ 3]๊ณผ ๊ฐ™๋‹ค[4].
  • 18. -7- ๋“ฑ์„ ์ œ๊ณตํ•˜๋ ค๋ฉด ์†Œํ”„ํŠธ์›จ์–ด๋กœ ๋Œ€์‹ ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๋‹ค.๋”ฐ๋ผ์„œ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ ์  ๋” ๋˜‘๋˜‘ํ•ด์ ธ์•ผ ํ•˜๋ฉฐ,์ด๋Ÿฐ ์‹œ์Šคํ…œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด๋„ ๋˜‘๋˜‘ํ•ด์ ธ์•ผ ํ•œ๋‹ค ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜์˜ ๊ฐœ๋…์€ ๋‹ค์Œ [๊ทธ๋ฆผ 1]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 1> CloudArchitecture
  • 19. -8- ํด๋ผ์šฐ๋“œ ์•„ํ‚คํ…์ฒ˜๋ฅผ ์„œ๋น„์Šค ๋ชจ๋ธ์— ๋”ฐ๋ผ ๊ตฌ๋ถ„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. SaaS(SoftwareasaService)๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜,๊ด€๋ฆฌ,์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํฌํ•จํ•˜ ๋Š” ์„œ๋น„์Šค ๋ชจ๋ธ์ด๋‹ค.SaaS ๋ชจ๋ธ์€ ์”ฌ(thin)ํด๋ผ์ด์–ธํŠธ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•ด์„œ ์‚ฌ์šฉ์ž ์—๊ฒŒ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ œ๊ณตํ•˜๊ณ ,์‚ฌ์šฉ์ž๋Š” ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์‚ฌ์šฉ์ž๊ฐ„์˜ ์ƒํ˜ธ์ž‘์šฉ์„ ์‹œ์ž‘ํ•˜๋ฉด์„œ ๋งˆ์น  ๋•Œ๊นŒ์ง€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ฑ…์ž„์ด ์ฃผ์–ด์ง„๋‹ค.์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋‹ค์šด๋กœ๋“œ ๋ถ€ํ„ฐ ์ธํ”„๋ผ ๊ตฌ์ถ•๊นŒ์ง€ ๋ชจ๋“  ๊ณผ์ •์ด ๋ฒค๋”์˜ ์ฑ…์ž„์ด๋‹ค[2,3]. SaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 2]์™€ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 2> SoftwareasaService
  • 20. -9- IaaS(InfrastructureasaService)๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ๊ฐ€์ƒ ๋จธ์‹ ,๊ฐ€์ƒ ์ €์žฅ์žฅ์น˜,๊ฐ€์ƒ ์ธ ํ”„๋ผ(Infrastructure)์™€ ๊ฐ™์€ ํ•˜๋“œ์›จ์–ด ์ž์›์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. IaaS ์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ์‚ฌ์šฉ์ž๋“ค์ด ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ ๋ชฉ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์–ด๋„ ๋ชจ๋“  ์ธํ”„ ๋ผ๋ฅผ ๊ด€๋ฆฌํ•ด ์ค€๋‹ค.์ฆ‰,์šด์˜์ฒด์ œ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜,์‹œ์Šคํ…œ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ๋“ฑ์„ ๋ชจ๋‘ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค[2,3]. IaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 3]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 3> InfrastructureasaService
  • 21. -10- PaaS(Platform asa Service)๋Š” ์‚ฌ์šฉ์ž์—๊ฒŒ ๊ฐ€์ƒ ๋จธ์‹ ,์šด์˜์ฒด์ œ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜, ์„œ๋น„์Šค,๊ฐœ๋ฐœ ํ”„๋ ˆ์ž„์›Œํฌ,ํŠธ๋žœ์žญ์…˜,๊ด€๋ฆฌ๊ตฌ์กฐ ๋“ฑ์„ ์ œ๊ณตํ•œ๋‹ค.์‚ฌ์šฉ์ž๋Š” ์žˆ๋Š” ์• ํ”Œ๋ฆฌ ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.์„œ๋น„์Šค ๊ณต๊ธ‰์ž๋Š” ํด๋ผ์šฐ๋“œ ์ธํ”„๋ผ,์šด์˜์ฒด์ œ,์‚ฌ์šฉ ๊ฐ€๋Šฅ ํ•œ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ๊ด€๋ฆฌํ•˜๋ฉฐ ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋™์•ˆ ํ•ด๋‹น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜,๊ด€ ๋ฆฌํ•˜๋Š” ์ฑ…์ž„์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ง„๋‹ค[2]. PaaS์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 4]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 4> Platform asaService
  • 22. -11- ์ œ 3์ ˆ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค ์ค‘์—์„œ ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€(Cloud Storage)๋˜๋Š” DaaS(DataasaService)๋ผ๋Š” ์šฉ์–ด๋กœ ํ‘œํ˜„๋œ๋‹ค.ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ๋Š” ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•˜์—ฌ ๊ฐ€์ƒํ™”๋œ ์Šคํ† ๋ฆฌ์ง€ ์ž์›์„ ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์— ๋”ฐ๋ผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ผ๋ฐ˜์ ์œผ๋กœ ๋Œ€๊ทœ๋ชจ ํ™•์žฅ์ด ๊ฐ€๋Šฅํ•˜๊ณ ,ํŠน์ • ์ง€๋ฆฌ์  ์œ„์น˜์— ๊ณ ์ •๋˜์ง€ ์•Š์œผ๋ฉฐ, ์‚ฌ์šฉ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๊ณ ,์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋˜๋Š” ํ• ๋‹น๋œ ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์— ๋”ฐ๋ฅธ ๊ฐ€๊ฒฉ ์ •์ฑ…์„ ์‚ฌ์šฉํ•˜๋ฉฐ,์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์œ ์—ฐํ•œ ํŠน์ง• ๋“ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. Symantec์—์„œ ๋ฐœํ‘œํ•œ โ€œStateoftheDataCenterReport2008โ€์— ๋”ฐ๋ฅด๋ฉด ์ „ ์„ธ๊ณ„ 21๊ฐœ๊ตญ์˜ 1,600๊ฐœ ๊ธฐ์—…์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋ฅผ ๋Œ€์ƒ์œผ๋กœ ์‹ค์‹œํ•œ ์กฐ์‚ฌ์—์„œ ๊ธฐ์—…์˜ ERP(Enterprise Resource Planning),CRM(Customer Relationship Management), ๋ฐ์ดํ„ฐ ๋งˆ์ด๋‹๊ณผ ๋ถ„์„ ๋“ฑ๊ณผ ๊ฐ™์€ ๊ธฐ์—… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๋“ค๊ณผ ํŠนํžˆ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์˜ํ•ด ์š”๊ตฌํ•˜๋Š” ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์ด ๊ณ„์†ํ•ด์„œ ์ฆ๊ฐ€ํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ๋‚˜ํƒ€๋‚œ ๋ฐ˜๋ฉด,์‹ค์ œ ๋กœ ์Šคํ† ๋ฆฌ์ง€ ํ™œ์šฉ๋ฅ ์€ 55% ์ •๋„๋กœ ์ธก์ •๋˜๊ณ  ์žˆ๋‹ค.๋”ฐ๋ผ์„œ ์ด๋Ÿฌํ•œ ์Šคํ† ๋ฆฌ์ง€ ํ™œ์šฉ๋ฅ  ์„ ๋†’์ด๊ธฐ ์œ„ํ•œ ๋ฐฉ์•ˆ์œผ๋กœ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๋˜๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ๋“ฑ์„ ๊ณ ๋ คํ•˜๊ณ  ์žˆ๋Š” ๊ฒƒ์œผ๋กœ ์กฐ์‚ฌ๋˜์—ˆ๋‹ค. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ๊ตฌ์ถ•ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์ด ํ•„์š”ํ•˜๋‹ค.๋”ฐ๋ผ ์„œ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ์ด๊ธฐ์ข… ์Šคํ† ๋ฆฌ์ง€ ํ†ตํ•ฉ,๋ฐ์ดํ„ฐ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜,๋ฐฑ์—…,์ค‘๋ณต ๋ฐ์ดํ„ฐ ์ œ๊ฑฐ,์žฅ์•  ๋ณต๊ตฌ ๋“ฑ๊ณผ ๊ฐ™์€ ์„œ๋น„์Šค๋ฅผ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•˜์—ฌ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•˜ ๋Š” ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ๋ณดํ†ต ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์„ฑ์„ ๊ฐ€์ง„๋‹ค.์ฒซ์งธ,๋Œ€๊ทœ๋ชจ ํ™•์žฅ์ด ๊ฐ€๋Šฅ ํ•˜๋‹ค.๋‘˜์งธ,์ง€๋ฆฌ์  ์œ„์น˜์— ๊ณ ์ •๋˜์ง€ ์•Š๋Š”๋‹ค.์…‹์งธ,์ƒ์šฉ ์‹œ์Šคํ…œ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ๋‹ค. ๋„ท์งธ,์‚ฌ์šฉํ•˜๊ฑฐ๋‚˜ ๋˜๋Š” ํ• ๋‹น๋œ ์Šคํ† ๋ฆฌ์ง€ ์šฉ๋Ÿ‰์— ๋”ฐ๋ฅธ ๊ฐ€๊ฒฉ ์ •์ฑ…์„ ๊ฐ–๋Š”๋‹ค.๋‹ค์„ฏ์งธ, ์‘์šฉ์— ์ ์šฉํ•˜๊ธฐ ์‰ฝ๋‹ค. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ํŠธ๋žœ์žญ์…˜ ๊ธฐ๋ฐ˜์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋˜๋Š” ์ผ์‹œ์ ์ธ ์ €์žฅ์†Œ ๋ณด๋‹ค
  • 23. -12- ๋Š” ์˜ˆ์ธกํ•  ์ˆ˜ ์—†๋Š” ์ €์žฅ ๊ณต๊ฐ„ ํ™•์žฅ๊ณผ ๊ฐ’์‹ธ๊ณ  ์˜ค๋žซ๋™์•ˆ ์ €์žฅํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ ‘๊ทผํ•˜๊ธฐ ๊ฐ„๋‹จํ•œ ์ €์žฅ์†Œ๋กœ ์ ๋‹นํ•˜๋‹ค. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ด์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค์—์„œ ์ œ๊ณตํ•˜๋Š” API๋ฅผ ๊ฐ€์ง€๊ณ  ์š”๊ตฌํ•˜๋Š” ์‘์šฉ์„ ๊ฐœ๋ฐœํ•ด์•ผ ํ•˜๋Š” ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค.ํ•˜์ง€๋งŒ ์ตœ๊ทผ์—๋Š” NFS,CIFS,FTP์™€ ๊ฐ™์€ ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ์„ ํ†ตํ•˜์—ฌ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ๋„ ํ•œ๋‹ค.๋˜๋Š” ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€์™€ CDN์„ ํ†ตํ•ฉํ•จ์œผ๋กœ์จ CDN์ƒ์˜ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์œ„์น˜์—์„œ ์Šคํ† ๋ฆฌ์ง€๋ฅผ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€์˜ ์žฅ์ ์€ ๋น„์šฉ์„ ์ ˆ์•ฝํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.์ž„๋Œ€ํ•˜์—ฌ ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ์˜ ์šฉ๋Ÿ‰๋งŒํผ์˜ ๋น„์šฉ์„ ์ง€๋ถˆํ•˜๋Š” ์„œ๋น„์Šค์™€ ๋ฐ์ดํ„ฐ ์ด๋™๋Ÿ‰์— ๋”ฐ๋ผ ๋น„์šฉ์„ ์ง€๋ถˆ ํ•˜๋Š” ์„œ๋น„์Šค๊ฐ€ ์žˆ๋‹ค.ํด๋ผ์ด์–ธํŠธ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฑ์—…์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, WAN์„ ํ†ตํ•ด ๋ฐ์ดํ„ฐ๋ฅผ ์ „์†กํ•  ์ˆ˜ ์žˆ๋‹ค.๋‹จ์ ์œผ๋กœ๋Š” ๋Œ€์—ญํญ์— ๋”ฐ๋ผ ์„ฑ๋Šฅ์ด ์ขŒ์šฐ๋  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์Šคํ† ๋ฆฌ์ง€์˜ ๊ฐ€์šฉ์„ฑ์— ์‹ฌ๊ฐํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€๋Š” ์Šคํ† ๋ฆฌ์ง€ ๊ณต๊ธ‰์ž๊ฐ„์˜ ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ์— ์˜์กดํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋„คํŠธ์›Œํฌ ์—ฐ๊ฒฐ ๋“ฑ ๊ธ€๋กœ๋ฒŒ ๋„คํŠธ์›Œํฌ ์ค‘๋‹จ ๋“ฑ์˜ ๋ฌธ์ œ์— ์˜ํ–ฅ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค[5,6]. CloudStorage์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 5]์™€ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 5> CloudStorage
  • 24. -13- ์ œ 3์žฅ HybridStorageAPI์˜ ์„ค๊ณ„ ์ œ 1์ ˆ ์ „์ฒด์‹œ์Šคํ…œ์˜ ๊ตฌ์„ฑ ๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ์ € ๋น„์šฉ์œผ๋กœ ์šด์˜ ๊ฐ€๋Šฅํ•œ Storage๊ธฐ์ˆ ์„ ํ™•๋ณดํ•˜๊ณ  OpenSource ๊ธฐ๋ฐ˜์˜ StorageSolution์„ ๋„์ž…ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์‚ฌ์—… ํ™•์žฅ์— ์ ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋ฐ˜์„ ๋งˆ๋ จํ•˜๊ธฐ ์œ„ํ•ด ์—ฐ๊ตฌ๋ฅผ ์‹œ์ž‘ํ•˜์˜€๋‹ค. POC(ProofofConcept)๋ฅผ ์œ„ํ•œ ์ตœ์†Œ ์‹œ์Šคํ…œ ๊ตฌ์„ฑ์„ ์›์น™์œผ๋กœ ํ•˜๋ฉฐ,์„ฑ๋Šฅ ๋ฐ ์•ˆ์ • ์„ฑ ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•ด ๊ธฐ์กด CloudSystem,์ƒ์šฉ Network๋ฐ ์šด์˜ ์žฅ๋น„๋ฅผ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ตฌ ์„ฑํ•˜์˜€๋‹ค. Hybrid Storage Access Server(HSAS)๋Š” ์ „๋ฉด์— ํด๋ผ์ด์–ธํŠธ๋ฅผ ์œ„ํ•œ ๋‹จ์ผ API(HTTP ๊ธฐ๋ฐ˜ Request/Response๋ฐฉ์‹)๋ฅผ ์ œ๊ณตํ•˜๊ณ  ์ด๋ฉด์—๋Š” ๋‹ค์ค‘ Storage๊ณ ์œ  ์˜ StorageAdaptor๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. HSAS๋Š” RESTful๋ฐฉ์‹ ๋˜๋Š” POSIX ๋ฐฉ์‹์œผ๋กœ ์ œ๊ณต๋˜๋Š” ์ด๊ธฐ์ข… Storage๋ฅผ ํ•œ๋ฐ ๋ฌถ์–ด ํด๋ผ์ด์–ธํŠธ์— ๋‹จ์ผํ•œ ๊ณต์šฉ์˜ API๋ฅผ ์ œ๊ณตํ•˜๋Š” HybridStorageGateway ์—ญํ•  ์„ ์ˆ˜ํ–‰ํ•œ๋‹ค. HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 6]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 6> HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ๋„
  • 25. -14- HybridStorage์‹œ์Šคํ…œ์„ ๊ตฌ์„ฑํ•˜๋Š” ๊ตฌ์„ฑ์š”์†Œ๋Š” ๋‹ค์Œ [ํ‘œ 4]์™€ ๊ฐ™๋‹ค. ๊ตฌ์„ฑ์š”์†Œ ์„ค ๋ช… ๋น„๊ณ  SKT EasyStorage ์•„๋งˆ์กด S3 API์™€ ํ˜ธํ™˜๋˜๋Š” RESTful๊ธฐ๋ฐ˜์˜ API ์ œ๊ณตํ•˜๋Š” Storage์„œ๋น„์Šค[7] OpenStackSwift ์•„๋งˆ์กด S3์™€ ์œ ์‚ฌํ•˜๋ฉฐ ์ž์ฒด ์ด์ค‘ํ™”์™€ Failover๊ธฐ ๋Šฅ ์ง€์›ํ•˜๋Š” Storage[8] RedhatGluster ์˜คํ”ˆ ์†Œ์Šค ๊ธฐ๋ฐ˜์˜ ScaleOut๋ฐฉ์‹์˜ NAS MetaServer๊ฐ€ ํ•„์š”์—†๊ณ  Scale-outํ•œ ํŒŒ์ผ ์‹œ์Šคํ…œ ์œผ๋กœ ๋ชจ๋“ˆ ๊ตฌ์กฐ[9] HybridStorageAccess Server StorageGateway๊ธฐ๋Šฅ๊ณผ HybridAPI๋ฅผ ํ†ตํ•ด ์„œ๋น„ ์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ์„œ๋ฒ„ CloudOpenAPIServer Open Platform์„ ์œ„ํ•œ South Bound์„ ๊ตฌํ˜„ํ•œ OpenAPI์„œ๋ฒ„ CloudOpenAPIDB OpenAPI์ฒ˜๋ฆฌ๋ฅผ ์œ„ํ•œ Database CloudPOC Server Open API๋ฐ Hybrid Storage Access Server์™€ Cloud์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™ CloudMetaDB CloudMeta์ •๋ณด๋ฅผ ์ €์žฅํ•˜๊ณ  ์žˆ๋Š” Database Client Storage๋ฐ API์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ ํˆด ํ˜น์€ Hybrid Storage Access Server๋ฅผ ์—ฐ๋™๋˜๋Š” ์‹œ์Šคํ…œ [ํ‘œ 4]HybridStorage์‹œ์Šคํ…œ ๊ตฌ์„ฑ์š”์†Œ
  • 26. -15- 1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ User๋Š” HSAS์— ํŒŒ์ผ ์—…๋กœ๋“œ ์š”์ฒญ์„ ํ•˜๊ณ  ํŒŒ์ผ์„ Storage์— ์—…๋กœ๋“œ ํ•œ๋‹ค.ํŒŒ์ผ ์—…๋กœ๋“œ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด HSAS๋Š” Cloud POC ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์—…๋กœ๋“œ๋œ ํŒŒ์ผ์— ๋Œ€ํ•œ Metadata๋ฅผ ์ €์žฅํ•œ๋‹ค.ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 7]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 7> ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค
  • 27. -16- 2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ User๋Š” CloudOpenAPI์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์œ„ํ•œ token์„ ๋ฐœ๊ธ‰ ๋ฐ›๋Š”๋‹ค. ๋ฐœ๊ธ‰๋ฐ›์€ token์„ ์ด์šฉํ•˜์—ฌ USER๋Š” HSAS์— ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ๋ฅผ ์š”์ฒญํ•˜๊ณ  storage์— ์„œ ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•œ ํ›„ ์ข…๋ฃŒํ•œ๋‹ค.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 8]๊ณผ ๊ฐ™ ๋‹ค. <๊ทธ๋ฆผ 8> ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค
  • 28. -17- 3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ User๋Š” Cloud Open API์„œ๋ฒ„์— ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์š”์ฒญ์„ ํ•œ๋‹ค.Cloud Open API ์„œใ…“๋Š” CloudPOC์„œ๋ฒ„๋ฅผ ํ†ตํ•ด MetaDatabase๋ฅผ ์กฐํšŒํ•˜์—ฌ ํŒŒ์ผ ๋ชฉ๋ก์„ ํš๋“ํ•œ ํ›„ User์—๊ฒŒ ์ „๋‹ฌํ•œ๋‹ค.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 9]์™€ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 9> ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค
  • 29. -18- ์ œ 2์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ตฌ์„ฑ HybridStorageAPI์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 10]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 10> HybridStroageAPI๊ฐœ๋…๋„ Hybrid Storage API๋Š” ๋‹ค์ˆ˜์˜ Storage์—ฐ๋™์ ˆ์ฐจ๋ฅผ Wrappingํ•˜๊ณ  ๊ธฐ๋Šฅ์„ Encapsulationํ•˜๊ณ  User์—๊ฒŒ ๋‹จ์ผํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ Storage์— ๋Œ€ํ•œ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ ํŠน์ • Storage์— ์˜์กด์„ฑ์—์„œ ๋ฒ—์–ด๋‚˜ ํ™•์žฅ ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ๋ฅผ ์ œ๊ณตํ•˜๊ฒŒ ๋œ๋‹ค. Hybrid Storage Access Server(HSAS)๋Š” Hybrid Storage API์„ ๊ธฐ๋ฐ˜์œผ๋กœ InboundHandler,Controller๋ฐ OutboundHandler๊ฐœ๋…์„ ์‚ฌ์šฉํ•ด์„œ ๊ฐ Storage๋ณ„ Adaptation์„ ์ง€์›ํ•จ์œผ๋กœ์จ ํŒŒ์ผ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. ๊ทธ๋ฆฌ๊ณ  Storage๊ฐ€ ์ œ๊ณตํ•˜๋Š” APIํ˜ธ์ถœ์„ ์œ„ํ•œ ๊ณผ์ •์„ ๋‹จ์ˆœํ™”์‹œ์ผœ Storage๋ณ„ ์„œ
  • 30. -19- ๋น„์Šค ์ถ”๊ฐ€๊ฐ€ ์šฉ์ดํ•œ ๊ตฌ์กฐ๋ฅผ ๊ฐ–์ถ”๋Š”๋ฐ ์ดˆ์ ์„ ๋งž์ถ”์–ด ์„ค๊ณ„ ๋˜์—ˆ๋‹ค. HybridStorageAccess์„œ๋ฒ„์˜ ๊ตฌ์กฐ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 11]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 11> HybridStorageAccess์„œ๋ฒ„ ๊ตฌ์กฐ 1.InboundHandler๊ตฌ๊ฐ„ User์™€ HSAS๊ฐ„ ์—ฐ๋™์€ Inbound Handler์—์„œ ์ฒ˜๋ฆฌํ•œ๋‹ค. User๊ฐ€ Inbound Handler์„ ํ†ตํ•ด ์—…๋กœ๋“œ๊ฐ€ ์„ฑ๊ณตํ•œ ํŒŒ์ผ์€ OutboundHandler์— ์˜ํ•ด ์ง€์ •๋œ Storage ์— ์ €์žฅ๋œ๋‹ค.User๊ฐ€ ์š”์ฒญํ•œ ๋‹ค์šด๋กœ๋“œ๋Š” InboundHandler์— ์˜ํ•ด 1์ฐจ์ ์œผ๋กœ ๋ถ„๊ธฐ๋˜ ๊ณ  ์ง€์ •๋œ Storage๋ฅผ ํ†ตํ•ด ํŒŒ์ผ์„ ํš๋“ํ•˜๋ฉด์„œ ๋™์‹œ์— User๋กœ ๋‹ค์šด๋กœ๋“œ ์‹œํ‚จ๋‹ค. 2.OutboundHandler๊ตฌ๊ฐ„ ๊ฐ Storage๋ณ„ Handler๊ฐ€ Adaptationํ˜•ํƒœ๋กœ ์กด์žฌํ•œ๋‹ค.User๊ฐ€ ์ง€์ •ํ•œ Storage๋กœ
  • 31. -20- ์—…๋กœ๋“œ ํ•˜๊ฑฐ๋‚˜ ์ง€์ •๋œ Storage๋กœ๋ถ€ํ„ฐ ๋‹ค์šด๋กœ๋“œํ•œ๋‹ค. 3.Controller๊ตฌ๊ฐ„ Controller๋Š” InboundHandler์™€ OutboundHandler์‚ฌ์ด์˜ ๋ฐ์ดํ„ฐ ํ๋ฆ„์„ ๊ด€๋ฆฌ ํ•˜๊ณ  ํ†ต์ œํ•œ๋‹ค. 4.์—ฐ๋™ ํ”„๋กœํ† ์ฝœ ๋ฐฉ์‹ ๋ฐ ์†ก์ˆ˜์‹  ์ „๋ฌธ User ์—ฐ๋™ ํ”„๋กœํ† ์ฝœ๋กœ์จ REST ๋ฉ”์‹œ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•œ๋‹ค.REST(Representational StateTransfer)๋Š” ROA(ResourceOriented Architecture)๋ฅผ ๋”ฐ๋ฅธ ์›น์„œ๋น„์Šค ๋””์ž์ธ ํ‘œ์ค€์ด๋‹ค. HTTP๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹ค์Œ๊ณผ ๊ฐ™์€ Method๋ฅผ ์ œ๊ณตํ•œ๋‹ค. ์ฒซ์งธ,๋ฆฌ์†Œ์Šค ์กฐํšŒ๋ฅผ ์œ„ํ•œ GET,๋‘˜์งธ,๋ฆฌ์†Œ์Šค ๊ฐฑ์‹ ์„ ์œ„ํ•œ PUT,์…‹์งธ,๋ฆฌ์†Œ์Šค ์ƒ ์„ฑ์„ ์œ„ํ•œ POST,๋„ท์งธ,๋ฆฌ์†Œ์Šค ์‚ญ์ œ๋ฅผ ์œ„ํ•œ DELETE๋‹ค. HybridStorageAPI์˜ ๊ฐœ๋ฐœํ•ญ๋ชฉ ๋ฆฌ์ŠคํŠธ๋Š” ๋‹ค์Œ [ํ‘œ 5]์™€ ๊ฐ™๋‹ค. 1.OutboundHandler๊ฐœ๋ฐœํ•ญ๋ชฉ 1.1 EasyStorageFileUpload/Download 1.2 SwiftFileUpload/Download 1.3 GlusterFileWriting/Reading 2.InboundHandler๊ฐœ๋ฐœํ•ญ๋ชฉ 2.1 ์‚ฌ์šฉ์ž ์š”์ฒญ ๋ฐ ์‘๋‹ต ๊ธฐ๋Šฅ 3.HybridStorageAPI(Controller) 3.1 ์‚ฌ์šฉ์ž ์š”์ฒญ์— ๋Œ€ํ•œ ๋ถ„๊ธฐ์™€ ํ†ต๊ณ„ 4.StorageCommonFunction 4.1 Storage๋ณ„ ์ธ์ฆ๋ฐฉ์‹ ๊ตฌํ˜„ [ํ‘œ 5]HybridStorageAPI๊ฐœ๋ฐœํ•ญ๋ชฉ
  • 32. -21- ์ œ 3์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ ๊ตฌ๊ฐ„๋ณ„ ์—ฐ๋™ ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ํ”„๋กœํ† ์ฝœ์— ๋Œ€ํ•œ ์ •์˜๋ฅผ ํ•œ๋‹ค.Hybrid StorageAPI ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ฐœ๋…๋„๋Š” ๋‹ค์Œ [๊ทธ๋ฆผ 12]์™€ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 12> HybridStorageAPI์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ ์ด 5๊ฐœ์˜ ์ธํ„ฐํŽ˜์ด์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ,๊ฐ๊ฐ์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 6]๊ณผ ๊ฐ™๋‹ค. ์ธํ„ฐํŽ˜์ด์Šค ์ •์˜ IF_USER_COA: Request (HTTP) / Response(XML) Client์™€ CloudOpenAPI์„œ๋ฒ„ ๊ตฌ๊ฐ„ IF_USER_HSA:Request(HTTP)/ Response(XML) Client์™€ Hybrid StorageAccess ์„œ๋ฒ„ ๊ตฌ๊ฐ„, Upload๋Š” Multipart๋กœ IF_HSA_STRG:Request(HTTP)/ Response(XML) Hybrid Storage Access ์„œ๋ฒ„์™€ Storage์„œ๋ฒ„ ๊ตฌ๊ฐ„ IF_HSA_CC: Request (HTTP) / Response(XML) HybridStorageAccess์„œ๋ฒ„์™€ CloudPOC ์„œ ๋ฒ„ ๊ตฌ๊ฐ„ IF_COA_CC: Request (HTTP) / Response(XML) Cloud Open API์„œ๋ฒ„์™€ Cloud POC ์„œ๋ฒ„ ๊ตฌ ๊ฐ„ [ํ‘œ 6]์ธํ„ฐํŽ˜์ด์Šค ๊ตฌ์„ฑ IF_USER_HSA, IF_HSA_STRG์— ๋Œ€ํ•ด์„œ ํฌํ•จ์„ ํ•˜๋ฉฐ, IF_USER_COA,
  • 33. -22- IF_COA_CC,IF_HSA_CC์— ๋Œ€ํ•ด ํฌํ•จํ•˜์ง€ ์•Š๋Š”๋‹ค.ํฌํ•จ๋˜์ง€ ์•Š๋Š” ์ธํ„ฐํŽ˜์ด์Šค๋Š” ํ•„์š”ํ•œ ์„œ๋น„์Šค๋ณ„๋กœ ๋ณ„๋„์˜ ํ”„๋กœํ† ์ฝœ์„ ๊ฐœ๋ฐœํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์—ฌ๊ธฐ์„œ๋Š” ๊ฐœ๋…๋งŒ์„ ๊ณต์œ ํ•œ ๋‹ค. 1.IF_USER_HSA FILE_UP_HSA :Cloud์˜ HybridStorage์— ํŒŒ์ผ์„ Uploadํ•˜๊ธฐ ์œ„ํ•œ ์—ฐ๋™ ๊ทœ๊ฒฉ ์ด๋‹ค.์ƒ์„ธ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 7]๊ณผ ๊ฐ™๋‹ค. Protocol REST Resource-Catego ryURI /token์กฐํšŒ๋ฅผ ํ†ตํ•˜์—ฌ ์ „๋‹ฌ๋ฐ›์€ URL์„ ํ†ตํ•ด ์—…๋กœ๋“œ ํ•œ๋‹ค. enctype="multipart/form-data", method="post"๋ฐฉ์‹์œผ๋กœ ์ „๋‹ฌํ•ด์•ผ ํ•œ๋‹ค. ์—…๋กœ๋“œ ์š”์ฒญ์‹œ storagetype์„ ์ „๋‹ฌํ•ด์•ผ ํ•œ๋‹ค. HTTP Method POST Pre-Conditions N/A Post-Conditions N/A Idempotent Y Security N/A Authentication PRIVATE Multipart Y T hrottling Policy Policy Description Application N/A User N/A Public N/A Owner(email) [ํ‘œ 7]FILE_UP_HSA Overview
  • 34. -23- FILE_UP_HSA RequestScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 8]๊ณผ ๊ฐ™๋‹ค. Parameters Name Data Type Mandatory Description Remar ks storage String Easy storage-> ES,Switft-> SW, Cluster-> GL Payloads Name Data Type Mandatory Description Remar ks N/A PayloadSchema(XSD) N/A XML Format N/A [ํ‘œ 8]FILE_UP_HSA RequestDefinition FILE_UP_HSA ResponseScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 9]์™€ ๊ฐ™๋‹ค. Parameters Name Data Type Mandatory Description Remar ks N/A Schema(XSD) N/A XML Format N/A [ํ‘œ 9]FILE_UP_HSA ResponseDefinition
  • 35. -24- FILE_UP_HSA ErrorCode์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 10]๊ณผ ๊ฐ™๋‹ค. Code Messages HTTP StatusCode 403 Forbidden 403Forbidden 404 NotFound 404NotFound 408 RequestTimeout 408RequestTimeout 500 InternalServerError 500InternalServerError 502 BadGateway 502BadGateway 504 GatewayTimeout 504GatewayTimeout [ํ‘œ 10]FILE_UP_HSA ErrorCode FILE_DW_HSA :Cloud์˜ HybridStorage์— ์กด์žฌํ•˜๋Š” ํŒŒ์ผ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ธฐ ์œ„ ํ•œ ๊ทœ๊ฒฉ์ด๋ฉฐ ์ƒ์„ธํ•œ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 11]๊ณผ ๊ฐ™๋‹ค. Protocol REST Resource-Catego ryURI /images,/music,/movies,/documents API๋“ฑ์„ ํ†ตํ•˜์—ฌ ํš๋“ํ•œ downloadURL์ด๋‹ค. HTTP Method GET Pre-Conditions N/A Post-Conditions N/A Idempotent Y Security N/A Authentication PRIVATE Multipart Y T hrottling Policy Policy Description Application N/A User N/A Public N/A Owner(email) [ํ‘œ 11]FILE_DW_HSA Overview
  • 36. -25- FILE_DW_HSA RequestScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 12]๊ณผ ๊ฐ™๋‹ค. Parameters Name Data Type Mandatory Description Remar ks N/A Payloads Name Data Type Mandatory Description Remar ks N/A PayloadSchema(XSD) N/A XML Format N/A [ํ‘œ 12]FILE_DW_HSA RequestDefinition FILE_DW_HSA ResponseScheme์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 13]๊ณผ ๊ฐ™๋‹ค. Parameters Name Data Type Mandatory Description Remarks N/A Schema(XSD) N/A XML Format N/A [ํ‘œ 13]FILE_DW_HSA ResponseDefinition
  • 37. -26- FILE_DW_HSA ErrorCode์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 14]์™€ ๊ฐ™๋‹ค. Code Messages HTTP StatusCode 403 Forbidden 403Forbidden 404 NotFound 404NotFound 408 RequestTimeout 408RequestTimeout 500 InternalServerError 500InternalServerError 502 BadGateway 502BadGateway 504 GatewayTimeout 504GatewayTimeout [ํ‘œ 14]FILE_DW_HSA ErrorCode 2.IF_HSA_STRG FILE_UP_ES :EasyStorageFileUploadRequest/Response FILE_UP_ES์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 15]์™€ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y BucketName String Object๋ฅผ Uploadํ•  Bucket์ด๋ฆ„ Y Key String Uploadํ•  Object์ด๋ฆ„ Y Object file Uploadํ•  File [ํ‘œ 15]FILE_UP_ES RequestParameter -RequestSyntax PUT /KeyHTTP/1.1 Host:BucketName.es.tcloudbiz.com Authorization:signatureValue Date:date Content-MD5:3+S1ojLTkRGOHQwv50kfsg== Content-Type:application/octec-stream Content-Length:Length -RequestBody
  • 38. -27- ObjectData -Responsesample HTTP/1.1200OK x - a m z - i d - 2 : gyB+3jRPnrkN98ZajxHXr3u7EFM67bNgSAxexeEHndCX/7GRnfTXxReKUQF28IfP ETag:7a7ec6062e6f7d92062811334d5ff342 Date:Mon,24Sep201207:29:34GMT Accept-Ranges:bytes Server:Restlet-Framework/2.0.8 x-amz-request-id:22264198756838A9 Access-Control-Allow-Origin:* x-amz-version-id: Content-Length:0 PUT /KeyHTTP/1.1 Host:BucketName.es.tcloudbiz.com Authorization:signatureValue Date:date Content-MD5:3+S1ojLTkRGOHQwv50kfsg== Content-Type:application/octec-stream Content-Length:Length
  • 39. -28- FILE_DW_ES:EasyStorageFileDownloadRequest/Response FILE_DW_ES์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 16]๊ณผ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y BucketName String Object๋ฅผ Uploadํ•  Bucket์ด๋ฆ„ Y Key String Uploadํ•  Object์ด๋ฆ„ N Range Integer ๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ ์ง€์ • [ํ‘œ 16]FILE_DW_ES RequestParameter -RequestSyntax GET /KeyHTTP/1.1 Host:BucketName.es.tcloudbiz.com Authorization:signatureValue Date:date Content-Type:application/x-www-form-urlencoded;charset=utf-8 -Responsesample HTTP/1.1200OK x-amz-id-2: gyB+3jRPnrkN98ZajxHXr3u7EFM67bNgSAxexeEHndCX/7GRnfTXxReKUQF28IfP Last-Modified:Mon,24Sep201207:29:34GMT ETag:"7a7ec6062e6f7d92062811334d5ff342" Date:Mon,24Sep201207:48:23GMT Accept-Ranges:bytes Server:Restlet-Framework/2.0.8 Vary:Accept-Charset,Accept-Encoding,Accept-Language,Accept x-amz-request-id:99ED88EG5895DC46 Access-Control-Allow-Origin:* Content-Type:application/octet-stream Content-Length:594427
  • 40. -29- -ResponseBody ObjectData FILE_AUTH_SW :SWIFT AuthenticationRequest/Response FILE_AUTH_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 17]๊ณผ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y host String ์ธ์ฆ ์„œ๋ฒ„ URL Y X-Storage-User String UserID Y X-Storage-Pass String APIKey [ํ‘œ 17]FILE_AUTH_SW RequestParameter -RequestSyntax GET /auth/<apiversion> HTTP/1.1 Host:์ธ์ฆ ์„œ๋ฒ„ X-Storage-User:UserID X-Storage-Pass:APIKey FILE_AUTH_SW์— ๋Œ€ํ•œ ResponseHeader์˜ ์ •์˜๋Š” ์•„๋ž˜ [ํ‘œ 18]๊ณผ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y X-Storage-Url String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL Y X-Auth-Token String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค ์‚ฌ์šฉ ์ธ์ฆ์„ ์œ„ํ•œ ํ† ํฐ [ํ‘œ 18]FILE_AUTH_SW ResponseHeaders
  • 41. -30- -Responsesample HTTP/1.1200OK Server:nginx/1.1.14 Date:Mon,24Sep201208:01:38GMT Content-Length:126 Connection:keep-alive X-Storage-Url: https://ssproxy.ucloudbiz.olleh.com/v1/AUTH_a8b9c2b7-f6c3-4d3d-a4e9-ee04332652a5 X-Storage-Token:AUTH_tkfc98e1a2275e4d64aea58bf9295f87b3 X-Trans-Id:txbf2c8d34341a4a5497e955f2cc9d3725 X-Auth-Token:AUTH_tkfc98e1a2275e4d64aea58bf9295f87b3 FILE_UP_SW :SWIFT FileUploadRequest/Response FILE_UP_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 19]๊ณผ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y Host String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL Y X-Auth-Token String ์‚ฌ์šฉ์ž ์ธ์ฆ ํ† ํฐ Y Content-Type String Objectํ˜•์‹ Y Content-Length String Objectํฌ๊ธฐ Y Object ObjectData [ํ‘œ 19]FILE_UP_SW RequestParameter
  • 43. -32- FILE_DW_SW :SWIFT FileDownloadRequest/Response FILE_DW_SW์— ๋Œ€ํ•œ RequestParameter์˜ ์ •์˜๋Š” ๋‹ค์Œ [ํ‘œ 20]๊ณผ ๊ฐ™๋‹ค. Required Parameter Format Description Remarks Y Host String ์Šคํ† ๋ฆฌ์ง€ ์„œ๋น„์Šค URL Y X-Auth-Toke n String ์‚ฌ์šฉ์ž ์ธ์ฆ ํ† ํฐ N Range Integer ๋ถ€๋ถ„ ๋ฐ์ดํ„ฐ ์ง€์ • [ํ‘œ 20]FILE_DW_SW RequestParameter -RequestSyntax GET /<apiversion>/<account>/<container>/<object> HTTP/1.1 Host:StorageServiceServer X-Auth-Token:AuthenticationToken -Responsesample HTTP/1.1200OK Last-Modified:Mon,24Sep201208:01:39GMT ETag:6e686242f512b4dcdd77258aa1be12be Accept-Ranges:bytes Content-Length:590511 Content-Type:application/x-www-form-urlencoded;charset=utf-8 X-Trans-Id:tx082bc4b037ea4cf08fa146a2593df75e Date:Mon,24Sep201208:19:26GMT Connection:keep-alive -ResponseBody ObjectData
  • 44. -33- FILE_UP_GL:POSIX๊ธฐ๋ฐ˜์˜ FileI/O์„ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•œ๋‹ค. publicvoidwriteFile(){ Stringlocation=ConfigManager.getConfig().getGLRoot(); try{ StringfileLocationAndFileName=location+fileUpload.getFilename(); FileOutputStream fos = new FileOutputStream(fileLocationAndFileName); FileChannelfileChannel=fos.getChannel(); FileInputStream is=new FileInputStream(fileUpload.getFile()); //Noencryption-usezero-copy. finalFileRegion region = new DefaultFileRegion(is.getChannel(),0, is.available()); region.transferTo(fileChannel,region.getPosition()); fileChannel.close(); fos.close(); is.close(); listener.onStorageRequestSuccess(createObjectID(ConfigManager.getConfig().getStorage Gluster())); }catch(Exceptione){ e.printStackTrace(); } }
  • 45. -34- privatevoidwriteResponseDownload(StringfileName)throwsCommonException{ try{ File file = new File(ConfigManager.getConfig().getGLRoot() + fileName); String lastModified = ServiceUtils.formatRfc822Date(new Date(file.lastModified())); Extentextent=getExtent(file.length()); HttpResponse clientResponse = new DefaultHttpResponse(HttpVersion.HTTP_1_1,HttpResponseStatus.OK); clientResponse.setHeader(HttpHeaders.Names.LAST_MODIFIED, lastModified); clientResponse.setHeader(HttpHeaders.Names.ACCEPT_RANGES, HttpHeaders.Values.BYTES); clientResponse.setHeader(HttpHeaders.Names.ETAG, generateETag(lastModified,file.length())); clientResponse.setHeader(HttpHeaders.Names.CONTENT_TYPE, "application/octet-stream"); clientResponse.setHeader(HttpHeaders.Names.CONTENT_LENGTH, file.length()); clientResponse.setHeader("Content-Disposition", "attachment;filename="+file.getName()); writeResponse(channel,clientResponse); FileInputStream fis=new FileInputStream(file); final FileRegion region = new DefaultFileRegion(fis.getChannel(), extent.getStart(),extent.getEnd()); ChannelFuturefuture=channel.write(region); future.addListener(new ChannelFutureListener(){ publicvoidoperationComplete(ChannelFuturefuture){ FILE_DW_GL:POSIX๊ธฐ๋ฐ˜์˜ FileI/O์„ ์‚ฌ์šฉํ•ด์„œ ๊ตฌํ˜„ํ•œ๋‹ค.
  • 47. -36- ๋„์ž…์žฅ๋น„ ์šฉ๋„ ์ฃผ์š”์ŠคํŽ™ ๋น„๊ณ  S t o r a g e Servers POC ํ…Œ์ŠคํŠธ์šฉ ์Šคํ† ๋ฆฌ์ง€ ์„œ ๋ฒ„ * Open Stack ๊ธฐ์ค€ (2RU) Xeon 2609(1 CPU), 12G RAM 3Tbyte SATA X 12 Disk (No RAID) Dual or Quad Ethernet(1G) Dual Redundant Power * Gluster ๊ธฐ์ค€(1RU) Xeon 2609(2 CPU), 32G RAM 500G SATA X 2 (RAID 1, OS์šฉ) Dual Ethernet(10G) +1 Ethernet SAS/SATA RAID card Dual Redundant Power JBOD ๋””์Šคํฌ ์Šคํ† ๋ฆฌ์ง€ Expender 3Tbyte SATA X [ํ‘œ 21]HybridStorageAPIํ•˜๋“œ์›จ์–ด ๊ตฌ์„ฑ ์ œ 4์žฅ ์‹คํ—˜ํ™˜๊ฒฝ ๋ฐ ๊ฒฐ๊ณผ ์ œ 1์ ˆ HybridStorageAPI์‹œ์Šคํ…œ ๊ฐœ๋ฐœํ™˜๊ฒฝ ๋ณธ ๋…ผ๋ฌธ์—์„œ ์ œ์•ˆํ•˜๋Š” ์‹œ์Šคํ…œ์€ ํ˜„์žฌ CloudService์—์„œ ์šด์šฉ๋˜๋Š” ํ™˜๊ฒฝ๊ณผ ๋ณ„๋„๋กœ ๊ตฌ์„ฑ์„ ํ•˜๋ฉฐ ์—ฐ๊ตฌ์˜ ํŠน์„ฑ์„ ๋ฐ˜์˜ํ•˜์—ฌ ๋‹ค์Œ [ํ‘œ 21]๊ณผ ๊ฐ™๋‹ค.
  • 48. -37- *Gluster POC์—์„œ๋งŒ ๋„์ž… 12(or 24) Disk Dual SAS Interface(3Gbps) Dual Storage Controller Dual Redundant Power Storage Front Switch Cloud Backbone(L3, CISCO 6xxx) ์Šค์œ„์น˜์™€ cascade ์—ฐ๊ฒฐ 48 port 1G Ethernet L2 Switch /w 4 port SPF(up to 10G) (Cisco 3560 ๋˜๋Š” ๋™ ๊ธ‰) * Gluster์˜ ๊ฒฝ์šฐ 10G ์ง€์› ํ•„์š” S t o r a g e B a c k e n d Switch ์Šคํ† ๋ฆฌ์ง€ ์„œ๋ฒ„๊ฐ„ ์—ฐ๋™ ์ „์šฉ ์Šค์œ„์น˜ (Storage front switch ์™€ ๋™๊ธ‰)
  • 49. -38- ์ œ 2์ ˆ ์—ฐ๋™๊ทœ๊ฒฉ ๋ฐ ์ ˆ์ฐจ ๋ณธ ๋…ผ๋ฌธ์—์„œ๋Š” ๋ณ„๋„์˜ ํ™”๋ฉด์„ ์ œ๊ณตํ•˜๋Š” ์‹œ์Šคํ…œ์˜ ํŠน์„ฑ์ƒ HybridStorageAPI์˜ ๊ฒฐ๊ณผ ๋„์ถœ์„ ์œ„ํ•˜์—ฌ ์—ฐ๋™ ๊ทœ๊ฒฉ๋ณ„ ์ ˆ์ฐจ ๋ฐ ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๋ฅผ ๋„์ถœํ•˜์˜€๋‹ค. 1.ํŒŒ์ผ ์—…๋กœ๋“œ ์ ˆ์ฐจ ํŒŒ์ผ ์—…๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 13]๊ณผ ๊ฐ™๋‹ค. <๊ทธ๋ฆผ 13> ํŒŒ์ผ ์—…๋กœ๋“œ SequenceDiagram
  • 50. -39- 2.ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์ ˆ์ฐจ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 14]์™€ ๊ฐ™ ๋‹ค. <๊ทธ๋ฆผ 14> ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ SequenceDiagram
  • 51. -40- 3.ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์ ˆ์ฐจ ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ ์‹œ๋‚˜๋ฆฌ์˜ค ๊ตฌํ˜„์„ ์œ„ํ•œ SequenceDiagram์€ ๋‹ค์Œ [๊ทธ๋ฆผ 15]์™€ ๊ฐ™ ๋‹ค. <๊ทธ๋ฆผ 15> ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ SequenceDiagram
  • 52. -41- ์ œ 3์ ˆ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ ApacheJmeter๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฉ€ํ‹ฐ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ๋ฅผ ํ…Œ์ŠคํŠธํ•˜์˜€๋‹ค.ํ…Œ์ŠคํŠธ๋ฅผ ์œ„ํ•œ ์Šค๋ ˆ๋“œ ์ˆ˜์™€ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ,๊ฒฐ๊ณผ์— ๋Œ€ํ•œ ๊ฐœ์š”๋Š” ๋‹ค์Œ [ํ‘œ 22]์™€ ๊ฐ™๋‹ค. StorageType ์Šค๋ ˆ๋“œ์ˆ˜ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ๊ฒฐ๊ณผ Easystorage 30 Upload Success:30,Failed:0 Swift 30 Upload Success:30,Failed:0 Gluster 30 Upload Success:30,Failed:0 3๊ฐœ Storage๋™์‹œ ์š”์ฒญ 20:20:20 Upload Success:60,Failed:0 EasyStorage 20 Download Success:20,Failed:0 Swift 20 Download Success:20,Failed:0 Gluster 20 Download Success:20,Failed:0 3๊ฐœ Storage๋™์‹œ ์š”์ฒญ 20:20:20 Download Success:60,Failed:0 [ํ‘œ 22]์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธ ๊ฐœ์š”
  • 53. -42- 1.์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ UploadTest๋Š” 30๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ํ†ตํ•ด ์‹œํ—˜ ํ•˜์˜€๋‹ค. EazyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 23]๊ณผ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sampletime(ms) Status Bytes 1 16:46:53.478 ThreadGroup1-8 HTTPRequest 80098 Success 80 2 16:46:53.509 ThreadGroup1-9 HTTPRequest 81683 Success 80 3 16:46:53.422 ThreadGroup1-2 HTTPRequest 82177 Success 80 4 16:46:53.644 ThreadGroup1-13 HTTPRequest 83790 Success 80 5 16:46:53.424 ThreadGroup1-4 HTTPRequest 89792 Success 80 6 16:46:54.078 ThreadGroup1-26 HTTPRequest 93046 Success 80 7 16:46:53.611 ThreadGroup1-12 HTTPRequest 99682 Success 80 8 16:46:54.183 ThreadGroup1-29 HTTPRequest 100846 Success 80 9 16:46:53.811 ThreadGroup1-18 HTTPRequest 102768 Success 80 10 16:46:53.419 ThreadGroup1-1 HTTPRequest 108101 Success 80 โ€ฆ. 30 16:46:53.779 ThreadGroup1-17 HTTPRequest 139153 Success 80 [ํ‘œ 23]EasyStorageUpload์‹œํ—˜๊ฒฐ๊ณผ
  • 54. -43- SwiftUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 24]์™€ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sample time(ms) Status Bytes 1 14:50:56.927 Thread Group 1-10 HTTP Request 87023 Success 80 2 14:50:57.055 Thread Group 1-14 HTTP Request 87616 Success 80 3 14:50:57.356 Thread Group 1-23 HTTP Request 89397 Success 80 4 14:50:56.735 Thread Group 1-4 HTTP Request 103701 Success 80 5 14:50:56.787 Thread Group 1-6 HTTP Request 106928 Success 80 6 14:50:57.489 Thread Group 1-27 HTTP Request 106892 Success 80 7 14:50:57.522 Thread Group 1-28 HTTP Request 109318 Success 80 8 14:50:57.456 Thread Group 1-26 HTTP Request 110433 Success 80 9 14:50:57.121 Thread Group 1-16 HTTP Request 113515 Success 80 10 14:50:57.155 Thread Group 1-17 HTTP Request 116175 Success 80 โ€ฆ 30 14:50:56.655 Thread Group 1-2 HTTP Request 137524 Success 80 [ํ‘œ 24] Swift Upload ์‹œํ—˜๊ฒฐ๊ณผ
  • 55. -44- GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 25]์™€ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sampletime(ms) Status Bytes 1 16:56:07.238 ThreadGroup1-29 HTTPRequest 67274 Success 80 2 16:56:07.103 ThreadGroup1-25 HTTPRequest 69159 Success 80 3 16:56:07.171 ThreadGroup1-27 HTTPRequest 70934 Success 80 4 16:56:06.770 ThreadGroup1-15 HTTPRequest 76745 Success 80 5 16:56:06.802 ThreadGroup1-16 HTTPRequest 78992 Success 80 6 16:56:06.736 ThreadGroup1-14 HTTPRequest 91113 Success 80 7 16:56:06.838 ThreadGroup1-17 HTTPRequest 96463 Success 80 8 16:56:07.036 ThreadGroup1-23 HTTPRequest 97736 Success 80 9 16:56:06.969 ThreadGroup1-21 HTTPRequest 97848 Success 80 10 16:56:07.271 ThreadGroup1-30 HTTPRequest 98956 Success 80 โ€ฆ 30 16:56:06.915 ThreadGroup1-19 HTTPRequest 133709 Success 80 [ํ‘œ 25]GlusterUpload์‹œํ—˜๊ฒฐ๊ณผ 25MB ์šฉ๋Ÿ‰์˜ ๋™์˜์ƒ ํŒŒ์ผ์„ ํ†ตํ•ด ์—…๋กœ๋“œ๋ฅผ ์š”์ฒญํ•œ ๊ฒฐ๊ณผ์ด๋ฉฐ,Sampletime(ms) ๋ฅผ ํ™•์ธํ•ด ๋ณด๋ฉด OutboundHandler๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๋Š” GLUSTER์˜ ์†๋„๊ฐ€ ๋” ๋น ๋ฅธ ๊ฒƒ ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.
  • 56. -45- DownloadTest๋Š” 20๊ฐœ์˜ ์Šค๋ ˆ๋“œ๋ฅผ ํ†ตํ•ด ์‹œํ—˜ ํ•˜์˜€๋‹ค. EazyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 26]๊ณผ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sample time(ms) Status Bytes 1 16:52:54.258 Thread Group 1-16 HTTP Request 2600 Success 594636 2 16:52:54.278 Thread Group 1-17 HTTP Request 3200 Success 594636 3 16:52:54.096 Thread Group 1-8 HTTP Request 3413 Success 594636 4 16:52:54.700 Thread Group 1-38 HTTP Request 3029 Success 594636 5 16:52:54.517 Thread Group 1-29 HTTP Request 3325 Success 594636 6 16:52:54.460 Thread Group 1-26 HTTP Request 3590 Success 594636 7 16:52:54.660 Thread Group 1-36 HTTP Request 3713 Success 594636 8 16:52:54.680 Thread Group 1-37 HTTP Request 3718 Success 594636 9 16:52:54.841 Thread Group 1-45 HTTP Request 3793 Success 594636 10 16:52:53.970 Thread Group 1-2 HTTP Request 4702 Success 594636 โ€ฆ 20 16:52:54.760 Thread Group 1-41 HTTP Request 4391 Success 594636 [ํ‘œ 26]EasyStorageDownload์‹œํ—˜๊ฒฐ๊ณผ
  • 57. -46- SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 27]๊ณผ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sampletime(ms) Status Bytes 1 15:55:58.787 ThreadGroup1-2 HTTPRequest 1189 Success 594636 2 15:55:58.768 ThreadGroup1-1 HTTPRequest 3088 Success 594636 3 15:55:58.899 ThreadGroup1-7 HTTPRequest 3026 Success 594636 4 15:55:59.442 ThreadGroup1-34 HTTPRequest 2523 Success 594636 5 15:55:58.921 ThreadGroup1-8 HTTPRequest 3320 Success 594636 6 15:55:58.807 ThreadGroup1-3 HTTPRequest 3456 Success 594636 7 15:55:59.647 ThreadGroup1-44 HTTPRequest 2682 Success 594636 8 15:55:59.341 ThreadGroup1-29 HTTPRequest 3117 Success 594636 9 15:55:59.039 ThreadGroup1-14 HTTPRequest 3453 Success 594636 10 15:55:58.941 ThreadGroup1-9 HTTPRequest 3570 Success 594636 โ€ฆ 20 15:55:59.547 ThreadGroup1-39 HTTPRequest 3467 Success 594636 [ํ‘œ 27]SwiftDownload์‹œํ—˜๊ฒฐ๊ณผ
  • 58. -47- GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ [ํ‘œ 28]๊ณผ ๊ฐ™๋‹ค. Sample no Start Time Thread name Label Sample time(ms) Status Bytes 1 18:10:25.638 Thread Group 1-4 HTTP Request 578 Success 594687 2 18:10:25.537 Thread Group 1-2 HTTP Request 1033 Success 594687 3 18:10:25.992 Thread Group 1-11 HTTP Request 1110 Success 594687 4 18:10:25.484 Thread Group 1-1 HTTP Request 1731 Success 594687 5 18:10:26.092 Thread Group 1-13 HTTP Request 1360 Success 594687 6 18:10:26.194 Thread Group 1-15 HTTP Request 1536 Success 594687 7 18:10:26.441 Thread Group 1-20 HTTP Request 1325 Success 594687 8 18:10:25.739 Thread Group 1-6 HTTP Request 2370 Success 594687 9 18:10:25.692 Thread Group 1-5 HTTP Request 2451 Success 594687 10 18:10:25.837 Thread Group 1-8 HTTP Request 2333 Success 594687 โ€ฆ 20 18:10:26.241 Thread Group 1-16 HTTP Request 3392 Success 594687 [ํ‘œ 28]GlusterDownload์‹œํ—˜๊ฒฐ๊ณผ 1MB ๋ฏธ๋งŒ์˜ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๋Œ€์ƒ์œผ๋กœ ๋‹ค์šด๋กœ๋“œ ํ…Œ์ŠคํŠธํ•œ ๊ฒฐ๊ณผ์ด๋ฉฐ,์—…๋กœ๋“œ์™€ ๋งˆ ์ฐฌ๊ฐ€์ง€๋กœ OutboundHandler๋ฅผ ๊ฑฐ์น˜์ง€ ์•Š๋Š” GLUSTER์˜ ์†๋„๊ฐ€ ์ผ๋ฐ˜์ ์œผ๋กœ ๋น ๋ฅธ ์„ฑ๋Šฅ์„ ๋ณด์˜€๋‹ค.
  • 59. -48- 2.HybridStorageAPI์˜ ๊ธฐ์ˆ  ๊ฒ€์ฆ ๊ฒฐ๊ณผ Storage์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 29]์™€ ๊ฐ™๋‹ค. RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹ ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹ EMC ATMOSStorage EasyStorage SwiftStorage GLUSTER [ํ‘œ 29]Storages์ƒํ˜ธ๊ฐ„ ์—ฐ๋™๋ฐฉ์‹ ๋น„๊ต ATMOS,Easy,SwiftStorages๋Š” RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์„ ์‚ฌ์šฉํ•˜๋Š” ๊ณตํ†ต์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค.RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์€ ์ „ํ†ต์ ์ธ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™์„ ํ†ตํ•œ ์ „๋ฌธ๊ตํ™˜ ๋ฐฉ์‹์— ๋น„ํ•ด ๋” ๊ฐ„๊ฒฐํ•œ ์ „๋ฌธ๋ฐฉ์‹๊ณผ POST,GET,PUT, DELETE์™€ ๊ฐ™์€ HTTP๋ช…๋ น์„ INSERT,SELECT,UPDATE,DELETE๊ณผ ๋™์ผํ•œ ๋ชฉ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋งํ•œ๋‹ค. GLUSTER๋Š” SAN(StorageAreaNetwork)๊ณผ ์œ ์‚ฌํ•œ ์—ฐ๋™๋ฐฉ์‹์œผ๋กœ Storage์„ ์šด ์˜์ฒด์ œ์— mount์‹œํ‚ด์œผ๋กœ์จ ๋กœ์ปฌ ๋“œ๋ผ์ด๋ธŒ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹ ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค. RESTful๋ฐฉ์‹ HTTP๊ธฐ๋ฐ˜ ์—ฐ๋™๋ฐฉ์‹์œผ๋กœ ์ œ๊ณต๋˜๋Š” Storages๊ฐ€ ํŒŒ์ผ ์‹œ์Šคํ…œ๊ธฐ๋ฐ˜ ์—ฐ ๋™๋ฐฉ์‹์ธ GLUSTER์— ๋น„ํ•ด ๋ณด๋‹ค ๋Š์Šจํ•œ ํ˜•ํƒœ(Decoupled)์˜ ์‹œ์Šคํ…œ ํ†ตํ•ฉ์„ฑ์„ ์ œ๊ณต ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ‰๊ฐ€๋œ๋‹ค. ์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์œ ์‚ฌ์„ฑ ๋ฐ ์ฐจ์ด์  ๊ธฐ์ˆ ๊ฒ€์ฆ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ง„ํ–‰ํ•˜์˜€๋‹ค.์ฒซ์งธ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด์  ๋น„๊ต,๋‘˜์งธ ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด ์  ๋น„๊ต,์…‹์งธ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์  ๋น„๊ต,๋„ท์งธ Signature์ƒ์„ฑ๋ฐฉ์‹ ๋น„๊ต,๋‹ค์„ฏ์งธ ์‚ฌ์šฉ์ž ์ธ์ฆ๋ฐฉ์‹ ๋น„๊ต,์—ฌ์„ฏ์งธ Signature์„ธ์…˜์œ 
  • 60. -49- ATMOS -Upload Swift-Upload Easystorage-Upload POST /rest/objects/ HTTP/1.1 Host:storage.tcloud.co.kr Date: Thu, 27 Sep 2012 01:58:01GMT C on ten t- T y p e: application/octet-stream Content-Length:594427 Connection:keep-alive x-emc-uid:UID x-emc-listable-meta: Metadata x-emc-signature:Signature P U T /version/account/container/file nameHTTP/1.1 Host:10.10.76.55 Date: Fri, 12 Oct 2012 08:01:12GMT C o n te n t- M D 5 : bmhiQvUStNzddyWKob4Svg= = X-Auth-Token:Signature Content-Length:590511 Connection:keep-alive PUT /filenameHTTP/1.1 H o s t : bucketName.es.tcloudbiz.com Date: Mon, 24 Sep 2012 07:29:32GMT C o n te n t- M D 5 : en7GBi5vfZIGKBEzTV/zQg== C o n ten t- T y p e: application/octet-stream Content-Length:594427 Connection:keep-alive Authorization:Signature ATMOS -Download Swift-Download Easystorage- Download GET /rest/objects/objectID HTTP/1.1 Host:storage.tcloud.co.kr Date: Thu, 27 Sep 2012 02:00:14GMT x-emc-uid:UID x-emc-signature:Signature G E T /version/account/container/file nameHTTP/1.1 Host:10.10.76.55 Date: Fri, 12 Oct 2012 07:59:31GMT X-Auth-Token:Signature C on ten t- T y p e: application/octet-stream Connection:keep-alive GET /filenameHTTP/1.1 H o s t : bucketName.es.tcloudbiz.com Date: Mon, 24 Sep 2012 07:48:22GMT C o n ten t- T y p e: application/octet-stream Connection:keep-alive Authorization:Signature [ํ‘œ 30]Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ์ฐจ์ด์  ํšจ์‹œ๊ฐ„์˜ ๊ด€์ ์œผ๋กœ ์ง„ํ–‰ํ•˜์˜€๋‹ค. Storage์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ์˜ ์ฐจ์ด์ ์€ ๋‹ค์Œ [ํ‘œ 30]๊ณผ ๊ฐ™๋‹ค(GLUSTER ์ œ์™ธ).
  • 61. -50- ATMOS Storage SwiftStorage Easystorage POST /rest/objects/ HTTP/1.1 Host:storage.tcloud.co.kr PUT /version/account/container/f ilenameHTTP/1.1 PUT /filenameHTTP/1.1 H o s t : bucketName.es.tcloudbiz.co m ํŒŒ์ผ Upload์„ฑ๊ณต ํ›„ ATMOS Storage๋กœ๋ถ€ํ„ฐ ํšŒ ์‹ ํ•˜๋Š” ๋งคํšŒ ๋ฐœ๊ธ‰๋œ Object ID๊ฐ€ ํ•ด๋‹น ํŒŒ์ผ์„ ๋Œ€ํ‘œํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋™์ผ ์œ„์น˜์— ๋™์ผํŒŒ ์ผ์„ ์˜ฌ๋ฆฌ๋ฉด ๋งค๋ฒˆ ์‹ ๊ทœํŒŒ์ผ ๋กœ ์ธ์‹๋จ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ ๋™์ผ ํŒŒ์ผ์ €์žฅ์œ„์น˜์— ๋™์ผ ํŒŒ์ผ๋ช…์„ Uploadํ•˜๋ฉด Overwrite๋จ /container๋Š” Upload ๋Œ€์ƒ folder๋ช…์ž„ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ ๋™์ผ ํŒŒ์ผ์ €์žฅ์œ„์น˜์— ๋™์ผ ํŒŒ์ผ๋ช…์„ Uploadํ•˜๋ฉด Overwrite๋จ bucketName์€ Upload๋Œ€์ƒ folder๋ช…์ž„ ๋””๋ ‰ํ„ฐ๋ฆฌ ๊ฐœ๋…์ด ์—†์Œ [ํ‘œ 32]ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์  RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ์ฐจ์ด์ ์€ ์—†์œผ๋ฉฐ (์—…๋กœ๋“œ ๊ธฐ๋Šฅ์— ์žˆ์–ด HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ์— ๋”ฐ๋ฅธ ์ฐจ์ด์ ์€ RESTful์‚ฌ์šฉ๋ฒ”์œ„์—์„œ ์ธ์ •๊ฐ€๋Šฅ)์ฐจ์ด์  ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 31]๊ณผ ๊ฐ™๋‹ค. ATMOS Storage SwiftStorage Easystorage POST๋ช…๋ น (์—…๋กœ๋“œ) GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ) PUT๋ช…๋ น (์—…๋กœ๋“œ) GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ) PUT๋ช…๋ น (์—…๋กœ๋“œ) GET๋ช…๋ น (๋‹ค์šด๋กœ๋“œ) [ํ‘œ 31]RESTful๋ฐฉ์‹ HTTP๋ช…๋ น์–ด ์‚ฌ์šฉ๋ฐฉ์‹ ์ฐจ์ด์  ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์˜ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ํŒŒ์ผ์ €์žฅ์œ„์น˜๋ฅผ ์ง€์ •ํ•˜์—ฌ Uploadํ•˜๋Š” ๋ฐฉ์‹์€ ์œ ์‚ฌํ•˜์ง€๋งŒ ํŒŒ์ผ์ฒ˜๋ฆฌ๋ฐฉ์‹์— ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฉฐ,์ฐจ์ด์  ๋น„๊ต๋Š” ๋‹ค์Œ [ํ‘œ 32]์™€ ๊ฐ™๋‹ค.
  • 62. -51- ATMOS Storage SwiftStorage Easystorage x-emc-uid:UID x-emc-signature:Signature P U T /version/account/container/f ilenameHTTP/1.1 X-Auth-Token:Signature Authorization:Signature Cloud ๊ธฐ์กด ์‹œ์Šคํ…œ์œผ๋กœ๋ถ€ํ„ฐ ํš๋“ํ•œ ์‚ฌ์šฉ์ž ์ •๋ณด(UID, Password)์™€ HTTPํ—ค๋”๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ Signature๊ฐ’์„ ์ƒ์„ฑ Swift Storage๋กœ๋ถ€ํ„ฐ ์ธ์ฆ ๊ณผ์ •(ํ•˜๊ธฐ ์ธ์ฆ์ ˆ์ฐจ ์ฐธ๊ณ )์— ์„œ ํš๋“ํ•œ ์‚ฌ์šฉ์ž ์ •๋ณด (Account๊ฐ’)๊ณผ Signature๊ฐ’ ์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•จ Easy Storage๋กœ๋ถ€ํ„ฐ ํš๋“ํ•œ ์‚ฌ์šฉ์ž ์ •๋ณด(Access Key ID,SecretAccess Key)์™€ HTTP ํ—ค๋”๋ฅผ ์•”ํ˜ธํ™”ํ•ด์„œ Signature๊ฐ’์„ ์ƒ์„ฑ [ํ‘œ 33]์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์  ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ๋žœ์žญ์…˜์— ๋”ฐ๋ฅธ ์ธ์ฆ๋ฐฉ์‹์˜ ์ฐจ์ด์ ์˜ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” Signature์ƒ์„ฑ ๋ฐ ํš๋“๋ฐฉ์‹์— ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฉฐ(UID๋Š” UserID๋ฅผ ์ง€์นญํ•จ)์ฐจ์ด์  ๋น„ ๊ต๋Š” ๋‹ค์Œ [ํ‘œ 33]๊ณผ ๊ฐ™๋‹ค. Signature์ƒ์„ฑ๋ฐฉ์‹ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ATMOS Storage์™€ Easy Storage๋Š” ๋งค ์š” ์ฒญ๋งˆ๋‹ค HTTP Header์˜ ์š”์ฒญ ์ •๋ณด ๋ฌธ์ž์—ด์„ HmacSHA1 ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ด์šฉํ•ด์„œ byte๋ฐฐ์—ด๋กœ ๋งŒ๋“ค๊ณ  Base64 Encoding์„ ํ†ตํ•ด ์ƒ์„ฑํ•œ Signature ๊ฐ’์„ ํŠธ๋žœ์žญ์…˜์— ํฌํ•จํ•ด์•ผ ํ•˜์ง€๋งŒ,์ด์™€๋Š” ๋‹ค๋ฅด๊ฒŒ SwiftStorage๋Š” ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ํ†ตํ•ด ํš๋“ํ•œ Signature๊ฐ’์„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ๊ธฐ์ˆ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” ATMOS Storage๋Š” ์„œ๋น„์Šค ์„œ๋ฒ„์—์„œ ์ œ๊ณตํ•˜๋Š” HTTP๊ทœ๊ฒฉ์— ์˜ํ•ด ์ˆ˜ํ–‰ ํ•˜์—ฌ์•ผ ํ•˜๋ฉฐ,EasyStorage๋Š” EasyStorage์›น ๊ด€๋ฆฌ์ž ํŽ˜ ์ด์ง€์—์„œ ํ‘œ์ถœ๋œ AccessKey ID์™€ SecretAccessKey๋ฅผ UserID์™€ Password์„ ์‚ฌ์šฉํ•ด์„œ ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ํ–ฅํ›„ AccessKey ID,SecretAccessKey ํš๋“์„ ์œ„ํ•œ ์—ฐ๋™์ด ํ•„์ˆ˜์ ์œผ๋กœ ์š”๊ตฌ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.
  • 63. -52- Request POST /v2.0/tokensHTTP/1.1 Host:10.10.76.55 Content-Type:application/json Accept:application/json Connection:keep-alive Content-Length:106 [Body-json] {"auth": {"tenantName": "openstack", "passwordCredentials": {"username": "admin", "password":"crowbar"}}} Response HTTP/1.1200OK Content-Type:application/json Vary:X-Auth-Token Date:Fri,12Oct201207:54:05GMT Transfer-Encoding:chunked Connection:keep-alive [Body-json] {"access": {"token": {"expires": "2012-10-13T08:51:01Z", "id": "af929499b80547e2bfafd5490102b6c5", "tenant": {"enabled": true, "id": "3eee71dae03947709b1be1f1dfffc9e8", "name": "openstack"}}, "serviceCatalog": [{"endpoints":[{"adminURL":"https://192.168.124.87:8080/v1/","region":"RegionOne", " i n t e r n a l U R L " : "https://192.168.124.87:8080/v1/AUTH_3eee71dae03947709b1be1f1dfffc9e8", "publicURL": "https://10.10.76.55:8080/v1/AUTH_3eee71dae03947709b1be1f1dfffc9e8"}], "endpoints_links": [], "type": "object-store", "name": "swift"}, {"endpoints": [{"adminURL":"http://192.168.124.87:35357/v2.0","region":"RegionOne","internalURL": "http://192.168.124.87:5000/v2.0", "publicURL": "http://10.10.76.55:5000/v2.0"}], "endpoints_links":[],"type":"identity","name":"keystone"}],"user":{"username": "admin","roles_links":[],"id":"0a5b2037771a4b09a5ba03438b5291cb","roles":[{"id": SwiftStorage์ธ์ฆ์ ˆ์ฐจ๋Š” SwiftStorage์™€์˜ JSON์ „๋ฌธ์„ ์‚ฌ์šฉํ•œ HTTP๊ทœ๊ฒฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.
  • 64. -53- "df79097e3b6f41b7a35e99ab605dfae1","name":"admin"}],"name":"admin"}}} Signature๊ฐ’์„ ๊ฐ€์ ธ์™€ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ ๋žœ์žญ์…˜์—์„œ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ (af929499b80547e2bfafd5490102b6c5) Account๊ฐ’์„ ๊ฐ€์ ธ์™€ ์—…๋กœ๋“œ/๋‹ค์šด๋กœ๋“œ ํŠธ ๋žœ์žญ์…˜์—์„œ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉ (AUTH_3eee71dae03947709b1be1f1dfffc9e8) [ํ‘œ 34]์ธ์ฆ์ •๋ณด Parsing์˜ˆ์‹œ ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ์ˆ˜ํ–‰์‹œ ํ•„์š”ํ•œ ์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ Parsing์ •๋ณด์˜ ์˜ˆ์‹œ๋Š” ๋‹ค์Œ [ํ‘œ 34]์™€ ๊ฐ™๋‹ค. Signature์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์€ ATMOS Storage์™€ EasyStorage๋Š” ์ตœ์ดˆ์— ํ•œ๋ฒˆ ์ธ์ฆ ์ ˆ์ฐจ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋ฉฐ,๊ทธ ์ด์œ ๋Š” ์ธ์ฆ ํ›„ ์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์ด ์ •ํ•ด์ ธ ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ SwiftStorage๋Š” ์ธ์ฆ ํ›„ 24์‹œ๊ฐ„๋งˆ๋‹ค ์„ธ์…˜์ด ๋งŒ๋ฃŒ๋˜๋Š” ์ ์— ์œ ์˜ํ•ด์•ผ ํ•œ ๋‹ค.๋”ฐ๋ผ์„œ ์ธ์ฆ์œ ํšจ์‹œ๊ฐ„(์„ธ์…˜๋งŒ๋ฃŒ์‹œ๊ฐ„)์„ ๊ณ ๋ คํ•ด์„œ ๋งค 6์‹œ๊ฐ„์ด ์ง€๋‚œ ์š”์ฒญ์— ๋Œ€ํ•ด ์žฌ ์ธ์ฆ์„ ์š”์ฒญํ•˜๋„๋ก ๊ตฌํ˜„ ํ•˜์˜€๋‹ค. ์ƒํ˜ธ๊ฐ„ ํ”„๋กœํ† ์ฝœ ๋น„๊ต์— ๋”ฐ๋ฅธ ๊ฒฐ๋ก ์€ HybridStorageAccess์„œ๋ฒ„์˜ ์„ค๊ณ„์—์„œ๋Š” Storage๋ณ„ ์—ฐ๋™๊ธฐ๋Šฅ์„ Adaptationํ˜•ํƒœ๋กœ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด ๋‹ค. ๋น„๋ก ๋„์ž… Storagesํ›„๋ณด๊ฐ€ ์ƒ์ดํ•œ ์—ฐ๋™๋ฐฉ์‹๊ณผ ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์ง€๋งŒ ํŒŒ์ผ ์ฒ˜๋ฆฌ๋ฐฉ์‹,์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ ์ˆ˜ํ–‰๋ฐฉ์‹,Signature์ƒ์„ฑ๋ฐฉ์‹ ๋ฐ ์„ธ์…˜์œ ํšจ์‹œ๊ฐ„์— ๋Œ€ํ•œ ์œ ์‚ฌ์„ฑ๊ณผ ์ฐจ์ด์ ์„ ์ƒ์†๊ณผ ๋‹คํ˜•์„ฑ์— ๊ธฐ๋ฐ˜ํ•˜์—ฌ ์ž‘์„ฑํ•จ์œผ๋กœ์จ Storage๋ณ„ ์—ฐ๋™๊ธฐ๋Šฅ์„ Adaptorํ˜•ํƒœ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ์‹์ธ Adaptationํ˜•ํƒœ์˜ ์ œ๊ณต์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒฐ๋ก ์„ ๋‚ด๋ ธ ๋‹ค.
  • 65. -54- ์ œ 5์žฅ ๊ฒฐ๋ก  ๋ฐ ํ–ฅํ›„๊ณผ์ œ Hybrid Storage Access์„œ๋ฒ„๋ฅผ ์—ฐ๋™์ธก๋ฉด์—์„œ ๋ถ„ํ•ดํ•˜๋ฉด ํฌ๊ฒŒ Front-end์™€ Back-end์—ฐ๋™์œผ๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. Front-end์—์„œ ์„œ๋ฒ„์™€ ๋‹จ๋ง ๊ฐ„ ํ‘œ์ค€ํ™”๋œ ํ†ต์‹ ๊ทœ์•ฝ์€ ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ํ†ต์‹ ๋ฐฉ์‹์„ ์ •์˜ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๊ธฐ๊ฐ„๊ณ„ ์‹œ์Šคํ…œ ์—ฐ๋™๊ทœ๊ฒฉ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•  ๊ฒƒ์ด๋‹ค.๊ทธ๋ ‡ ์ง€๋งŒ ์„œ๋ฒ„์™€ ์„œ๋ฒ„ ๊ฐ„ ํ†ต์‹ ๋ฐฉ์‹๊ณผ ๊ฐ™์€ ์ด๊ธฐ์ข…๊ฐ„ ํ†ต์‹ ๊ทœ์•ฝ์€ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” CP(ContentsProveder)์˜ ๊ธฐ๊ฐ„๊ณ„ ์‹œ์Šคํ…œ ์—ฐ๋™๊ทœ๊ฒฉ์— ํ˜ธํ™˜๋˜๋„๋ก ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด ๋ฐ” ๋žŒ์งํ•˜๋‹ค.๊ทธ๋Ÿฌํ•œ Front-end์—์„œ์˜ ์ž˜ ์ •์˜๋œ ํ†ต์‹ ๊ทœ์•ฝ์€ ๋ณด๋‹ค ์‰ฝ๊ณ  ์‹ ์†ํžˆ Cloud ์„œ๋น„์Šค์˜ ํ™•์žฅ์„ ๋ณด์žฅํ•œ๋‹ค. ๋ฐ˜๋ฉด์— Back-end์—์„œ ์„œ๋ฒ„์™€ Storages๊ฐ„ ์„œ๋ฒ„์™€ ๋‚ด๋ถ€์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹ ๊ทœ์•ฝ์€ ํ™•์žฅ ์„ฑ๋ณด๋‹ค ํ†ตํ•ฉ์„ฑ์— ์ฃผ๋ชฉํ•ด์•ผ ํ•œ๋‹ค.ํŠน๋ณ„ํžˆ ์„œ๋ฒ„์™€ Storage๊ฐ„ ์—ฐ๋™์€ Storage์—ฐ๋™๊ทœ ๊ฒฉ์— ์ข…์†์ ์ด๋ฏ€๋กœ Adaptation๋ฐฉ์‹์œผ๋กœ ๊ทœ๊ฒฉํ™”๋œ StorageAdaptor์— ๊ด€ํ•œ ์ธํ„ฐํŽ˜์ด ์Šค๋ฅผ ๊ทœ์•ฝํ•˜๊ณ  ๊ตฌํ˜„ํ•จ์œผ๋กœ์จ HybridStorageAPI์„œ๋ฒ„์— ์ถ”๊ฐ€ํ•˜๋Š” ๊ณผ์ •์ด ๋งค์šฐ ์ค‘ ์š”ํ•˜๋‹ค. ๊ฒฐ๋ก ์ ์œผ๋กœ ํ–ฅํ›„ HybridStorageAPI์„œ๋ฒ„์˜ ์ƒ์šฉํ™”๋ฅผ ์œ„ํ•ด ํ•„์š”ํ•œ ํ–ฅํ›„ ๊ณผ์ œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๊ตฌ์กฐ์  ์ธก๋ฉด์—์„œ HybridStorageAPI์„œ๋ฒ„ ๊ตฌํ˜„์œผ๋กœ ๋„คํŠธ์›Œํฌ ๋ฐ ํ†ต์‹  ํ”„๋กœํ† ์ฝœ ์— ์ตœ์ ํ™”๋œ ์†Œํ”„ํŠธ์›จ์–ด ๊ตฌ์กฐ๋ฅผ ๋งˆ๋ จํ•˜์˜€์ง€๋งŒ ๊ฐ Storage ์—ฐ๋™์— ์žˆ์–ด์„œ ID, Password์‚ฌ์šฉ์— ๊ด€ํ•ด ํ•˜๋“œ์ฝ”๋”ฉ ๋œ ๋งค์ง ๋„˜๋ฒ„๊ฐ€ ์กด์žฌํ•ด ์™”๋‹ค. ์˜ˆ๋ฅผ ๋“ค๋ฉด EasyStorage์˜ ๊ฒฝ์šฐ ID,Password๋ฅผ ํš๋“ํ•  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์ฒด์ ์ธ ์—ฐ๋™ ๊ทœ์•ฝ์ด ์กด์žฌํ•˜์ง€ ์•Š์€ ๊ฒƒ์œผ๋กœ ํ™•์ธ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— Easy Storage์›น ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์— ํ‘œ์ถœ๋œ AccessKeyID์™€ SecretAccessKey์„ ๊ณ ์ •ํ•˜์—ฌ ์‚ฌ์šฉ์ž ์ธ์ฆ์ ˆ์ฐจ๋ฅผ ์ˆ˜ ํ–‰ํ•˜์—ฌ ์™”๋‹ค.ํ–ฅํ›„ AccessKeyID,SecretAccessKeyํš๋“์„ ์œ„ํ•œ ์—ฐ๋™์€ ํ•„์ˆ˜์  ์œผ๋กœ ์š”๊ตฌ๋œ๋‹ค. ๊ตฌ์กฐ์  ์ธก๋ฉด์—์„œ Back-end๋ฅผ ์œ„ํ•ด Adaptation ๋ฐฉ์‹์œผ๋กœ ๊ทœ๊ฒฉํ™”๋œ Storage Adaptor์— ๊ด€ํ•œ ์ธํ„ฐํŽ˜์ด์Šค ๊ทœ์•ฝ์˜ ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค.Storage์ ‘๊ทผ์— ๊ด€ํ•œ ์ธ์ฆ ๋ฐ
  • 66. -55- ๊ถŒํ•œ,Storage์‹ค์‚ฌ์šฉ์— ๊ด€ํ•œ ๊ตฌํ˜„๊ณผ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ์™€ ๊ฐ™์€ ์‹ค์ œ์  ๊ธฐ๋Šฅ๊ตฌํ˜„์ด ์š”๊ตฌ๋œ ๋‹ค. ์—ญํ•™์  ์ธก๋ฉด์—์„œ Front-end์ƒ์—์„œ ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™์„ ์œ„ํ•ด OpenAPI์˜ ํ•œ ์ข…๋ฅ˜๋กœ์จ HybridStorageAccess๊ธฐ๋Šฅ์˜ ์ œ๊ณต์„ ์œ„ํ•œ ํ†ต์‹ ๊ทœ์•ฝ์˜ ์ •์˜๊ฐ€ ํ•„์š”ํ•˜๋‹ค. ํ˜„์žฌ๋Š” CloudopenAPI์— ํŒŒ์ผ ๋ฆฌ์ŠคํŠธ ์กฐํšŒ,์—…๋กœ๋“œ ๋ฐ ๋‹ค์šด๋กœ๋“œ์™€ ๊ฐ™์€ ์ผ๋ถ€๊ธฐ๋Šฅ ์— ํ•œ์ •์ ์œผ๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ๋‹ค. ์™ธ๋ถ€ ์‹œ์Šคํ…œ๊ณผ์˜ ์—ฐ๋™์„ ์œ„ํ•œ OpenAPI๋Š” ๋‹จ๋ง๊ณผ ์„œ๋ฒ„๊ฐ„,์„œ๋ฒ„์™€ ์„œ๋ฒ„๊ฐ„์„ ๋ถ„๋ฆฌ ํ•˜์—ฌ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•  ๊ฒƒ์ด๋‹ค.๊ทธ๋ ‡์ง€๋งŒ ํ†ต์‹ ๊ทœ์•ฝ์˜ ๊ธฐ์ดˆ๋Š” ๋™์ผํ•˜๊ฒŒ ๊ฐ€์ ธ ๊ฐ์œผ๋กœ์จ ํ˜ธํ™˜์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ์š”๊ตฌ๋œ๋‹ค. ๋ฐœ์ „์  ์ธก๋ฉด์—์„œ HybridStorageAccess์„œ๋ฒ„๋Š” Cloud์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋‚ด๋ถ€์™€ ์™ธ๋ถ€ ์‹œ์Šคํ…œ์œผ๋กœ ์œ„์น˜ํ•˜๊ณ  CloudopenAPI์„œ๋ฒ„์™€ ํ•จ๊ป˜ ์ œ๊ณต๋จ์œผ๋กœ์จ Storage์˜ ์ ‘ ๊ทผ๋ฐฉ๋ฒ•์„ ๋‚ด๋ถ€์™€ ์™ธ๋ถ€ ์‹œ์Šคํ…œ์œผ๋กœ ๋ถ„๋ฆฌํ•˜๋Š” ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋ฐฐ์น˜ํ•ด์•ผ ํ•  ๊ฒƒ์ด ๋‹ค. ํ•œํŽธ ๊ฐ€์ž…์ž ์ˆœ์ฆ๊ณผ ๊ฒฝ์Ÿ์ž์™€์˜ ๊ฒฝ์Ÿ๋ ฅ์˜ ํ™•๋ณด๋ฅผ ์œ„ํ•ด Storage์šฉ๋Ÿ‰ ์ฆ์„ค์ด ๋ถˆ๊ฐ€ ํ”ผํ•œ ์‹œ๊ธฐ๊ฐ€ ๋„๋ž˜ํ•˜์˜€๋‹ค. ๋ณธ ๋…ผ๋ฌธ์„ ํ†ตํ•ด HybridStorageAccess์„œ๋ฒ„์— ๊ด€ํ•œ ProofofConcept์„ ๊ตฌํ˜„ํ•˜ ๊ณ  ๊ฒ€์ฆํ•˜๋Š” ๊ณผ์ •์—์„œ ๋„์ถœ๋œ ๋ฌธ์ œ์ ์„ ๊ธฐ์ดˆ๋กœ HybridStorageAccess์„œ๋ฒ„์˜ ํ•„ ์š”์„ฑ์„ ์ฆ๋ช…ํ•˜์˜€๋‹ค.๊ทธ๋ฆฌ๊ณ  ์ด ์ง€์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹จ๋ง ๋ฐ ์™ธ๋ถ€์‹œ์Šคํ…œ์—์„œ ์„œ๋ฒ„ ์ ‘์† ์‹œ ๋‹จ์ผ ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ๋‹ค์ค‘ Storages๋กœ์˜ ์ ‘๊ทผ์„ฑ์„ ์ œ๊ณตํ•˜๋Š” ๋ฐฉ์‹์ด ํ˜„ํ–‰ Storage ์ข…์†์— ๊ด€ํ•œ ๋ฌธ์ œ์ ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ Storage์šฉ๋Ÿ‰์ฆ์„ค์— ๊ด€ํ•œ ์‹œ์Šคํ…œ ํ†ตํ•ฉ ๋ฐ ํ™•์žฅ์„ ๋™์‹œ์— ๋งŒ์กฑ์‹œํ‚ฌ ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ํŒ๋‹จ๋œ๋‹ค.
  • 67. -56- ์ฐธ๊ณ ๋ฌธํ—Œ [1]http://blog.naver.com/PostView.nhn?blogId=4900789&logNo=140167478314 [2]๊น€ํ˜•์ค€,์กฐ์ค€ํ˜ธ,์•ˆ์„ฑํ™”,๊น€๋ณ‘์ค€,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๊ตฌํ˜„ ๊ธฐ์ˆ โ€,์—์ด์ฝ˜. [3]๊น€์ผ์ˆ˜,๊น€์žฌ์˜,๊น€์ƒˆ์ด,โ€œHybridStorageAPI๊ฐœ๋ฐœ ์™„๋ฃŒ ๋ณด๊ณ ์„œโ€,2012. [4]๋ฐฐ๋ฆฌ ์†Œ์‹ ์Šคํ‚ค,์ •์›์ฒœ,๊น€์–‘์ˆ˜,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ๋ฐ”์ด๋ธ”โ€,๊ธธ๋ฒ—. [5]๊น€์˜์ฒ ,์ฐจ๋ช…ํ›ˆ,์ด์ƒ๋ฏผ,๊น€์˜๊ท ,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์—์„œ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ  ๋™ํ–ฅโ€,์ „์žํ†ต์‹ ๋™ํ–ฅ๋ถ„์„ ์ œ24๊ถŒ ์ œ4ํ˜ธ,2009. [6]๊น€์˜ํƒ,โ€œCloud์ตœ์ ํ™” StoragePlatform EMC Atmosโ€,DataCenterofthe Future,2010. [7]SK telecom,โ€œEasyStorageโ€,2012. [8]์ •๊ธฐ์˜,โ€œOpenStackObjectStorageServiceโ€,2011. [9]Gluster.com,โ€œIntroductiontoGlusterโ€,2010. [10]๊น€์ข…๋Œ€,โ€œ์ง„ํ™”ํ•˜๋Š” ํด๋ผ์šฐ๋“œ ๋ชจ๋ฐ”์ผ์˜ ๋ณ€ํ™”๋ฅผ ์ด๋ˆ๋‹คโ€,2011. [11]์ „์„ฑ์›,์ฃผ์œค์ฒ ,๊น€ํƒœ์›…,โ€œํด๋ผ์šฐ๋“œ ํ™˜๊ฒฝ์„ ์œ„ํ•œ ๋Œ€๊ทœ๋ชจ ๋ถ„์‚ฐ ์ €์žฅ ์‹œ์Šคํ…œโ€, TelecommunicationsReview ์ œ21๊ถŒ 3ํ˜ธ,2011. [12]๊ณ ๋Œ€์‹,โ€œํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ…์„ ์œ„ํ•œ ์Šคํ† ๋ฆฌ์ง€ ๊ฐ€์ƒํ™”โ€,์ „์ž์‹ ๋ฌธ. [13]์ตœ์™„,โ€œSaaSํ”Œ๋žซํผ ๋ฐ ํŽ˜ํƒ€์Šค์ผ€์ผ ํด๋ผ์šฐ๋“œ ์Šคํ† ๋ฆฌ์ง€ ๊ธฐ์ˆ  ๋™ํ–ฅโ€,ํ•œ๊ตญ์ „์žํ†ต ์‹  ์—ฐ๊ตฌ์›,2012. [14]ํ™ฉ์ง„๊ฒฝ,โ€œCloudObjectStorageServicebasedonOpenstackโ€,2011. [15]๊น€์˜์ฒ ,๋ฐ•๊ทผํƒœ,์ด์ƒ๋ฏผ,๊น€ํ™์—ฐ,๊น€์˜๊ท ,โ€œํด๋Ÿฌ์Šคํ„ฐ ํŒŒ์ผ ์‹œ์Šคํ…œ ๊ธฐ์ˆ  ๋™ํ–ฅโ€, ์ „์žํ†ต์‹ ๋™ํ–ฅ๋ถ„์„ ์ œ22๊ถŒ ์ œ6ํ˜ธ,2007. [16]ํฌ๋ฆฌ์ˆ˜ํ† ํผ M.๋ชจ์ด์–ด,์ •์œค์ง„ โ€œ๊ฐœ๋…,ํŒจํ„ด,๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์ ํŠธ ํด๋ผ์šฐ๋“œ ๊ธฐ๋ฐ˜ ์•  ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœโ€,์ œ์ดํŽ. [17]http://www.ciokorea.com
  • 69. -58- ABSTRACT TheDesignofHybridStorageAPI forCloudStorageExtension Bock-Chool,Lim DepartmentofInformationScience GraduateSchoolOf JoongbuUniversity SupervisedbyProf.Soon-GohnKim Asfastaschangesoccurinthebusinessenvironmentandinadvancementsof informationtechnology thecostofIT forcorporationshasalsobeenincreasing. Assuch,reducing IT costwhileresponding appropriately tothefastchanging environmenthasbecomeasurvivalrelationshipforallcorporateentities.Sucha burdenhasbroughtaboutachangetothecorporationsparadigm forIT assets. Thefactisthattheexisting paradigm ofownershipforIT assetsischanging tooneofusage. Sincethelate1980stheemergenceofoutsourcing SM ofIT operation,web hosting,application serviceprovideretchasplayed arolein such achangein the paradigm.In particular after 2007,as cloud computing service has been introduced to the marketplace the trend ofIT assets being transformed from havingownershipintoreceivingservicehasgraduallyproliferated. As if to prove such a tendency,major IT companies,including Amazon,
  • 70. -59- Google,IBM,Microsoft,Yahooandothersareofferingcloudserviceafteranther cloud service; recently, companies like Salesforce, Facebook, Youtube and MyspacehavestartedofferingcloudcomputingservicetotheInternetusers. Toexplainbrieflythefunctionalityandservicesthatthesecompaniesofferin termsofcloud computing,Googlehasthetechnologiestomanagehundredsof thousandsofserversandstoreandanalyzetensofpetabytesofdata,andparts ofthesetechnologieshavebeen madeavailabletotheoutsideworldandsome successful cases of cloud-based technology are currently being shared.In addition,services,such as mail,calendar,documents,etc.,thatare used by generalusersareoffered,andbyprovidingacloud-basedplatform servicecalled โ€˜AppEngine,โ€™theplatform thatenablesimplementationofapplicationsdeveloped by theusersundercloudenvironmentisbeing provided.Amazon offersvirtual machines,storageetcthatarea partofan infrastructuresupportserviceand Salesforce.com provides to corporate enterprises a customer relationship managementCRM webapplicationservice. Inthispaper,by introducing theconceptofhybridstorageasanideaforan efficientoffering and operation ofstorage(IaaS,PaaS)among many areas of computing we willattemptto proceed with the design ofAPIin order to facilitatetheoffering ofvarioustypesofstoragesuch asOpen Stack,Gluster, Atmosetcthatareprovided by cloud storagesystems.By designing ahybrid storageAPIandpresentingresultsthroughabasicsystem flow wewillenable theofferingofstorageunderacloudcomputingenvironment.
  • 71. -60- ๊ฐ์‚ฌ์˜ ๊ธ€ ํ•œ์ฐฝ ๊ณต๋ถ€์— ๋ชฉ๋งˆ๋ฆ„์ด ์žˆ์„ ๋•Œ ์šฐ์—ฐ์ฐฎ์€ ๊ธฐํšŒ์— ๊น€์ˆœ๊ณค ๊ต์ˆ˜๋‹˜์„ ๋งŒ๋‚˜ ๋ต™๊ฒŒ ๋˜์—ˆ ๊ณ ,์ด๋กœ์จ ๋ชฉ๋ง๋ž๋˜ ๊ณต๋ถ€๋ฅผ ๊ต์ˆ˜๋‹˜์˜ ์ง€๋„ํ•˜์— ๋‹ค์‹œ ์‹œ์ž‘ํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.๊ทธ ์‹œ๊ฐ„ ์ด ํ˜๋Ÿฌ ๋ฒŒ์จ 2๋…„์ด ์ง€๋‚ฌ์Šต๋‹ˆ๋‹ค.์‹œ๊ฐ„์ด ์–ด๋–ป๊ฒŒ ํ˜๋Ÿฌ๊ฐ”๋Š”์ง€๋„ ๋ชจ๋ฅด๊ฒŒ ๋„ˆ๋ฌด ๋น ๋ฅด๊ฒŒ ํ˜๋Ÿฌ ๊ฐ„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.์ €์—๊ฒŒ ์ด๋Ÿฐ ๊ธฐํšŒ๋ฅผ ์ฃผ์‹  ๊น€์ˆœ๊ณค ๊ต์ˆ˜๋‹˜๊ณผ ์ €๋ฅผ ์ง€๋„ํ•ด ์ฃผ์‹  ๋งŽ์€ ๋ถ„๋“ค๊ฒŒ ์ง€๋ฉด์„ ๋นŒ์–ด ๊ฐ์‚ฌ์˜ ๋งˆ์Œ์„ ์ „ํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. ๋Š˜ ๋ถ€์กฑํ–ˆ๋˜ ์ €์—๊ฒŒ ๋”ฐ๋œปํ•œ ๊ด€์‹ฌ๊ณผ ์• ์ • ์–ด๋ฆฐ ์งˆํƒ€๋กœ ๋ฐฐ์›€์˜ ๊ธธ์„ ์ธ๋„ํ•ด ์ฃผ์‹œ๋ฉฐ ๊ฟˆ๊ณผ ํฌ๋ง์„ ์•ˆ๊ฒจ ์ฃผ์‹  ๊น€์ˆœ๊ณค ์ง€๋„๊ต์ˆ˜๋‹˜๊ป˜ ์กด๊ฒฝํ•˜๋Š” ๋งˆ์Œ๊ณผ ๋”๋ถˆ์–ด ๊นŠ์€ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฐ”์˜์‹  ์™€์ค‘์—๋„ ์ €์˜ ๋…ผ๋ฌธ์‹ฌ์‚ฌ๋ฅผ ๋งก์•„์ฃผ์‹œ๊ณ ,์†Œ์ค‘ํ•œ ์ถฉ๊ณ ๋ฅผ ์•„๋ผ์ง€ ์•Š ์œผ์…จ๋˜ ๋ฐ•์ธ๊ทœ ๊ต์ˆ˜๋‹˜,๋ฐ•์ข…ํ›ˆ ๊ต์ˆ˜๋‹˜๊ป˜ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์—ฌ๋Ÿฌ๋ชจ๋กœ ๋ถ€์กฑํ•œ ์ €์—๊ฒŒ ๋ณธ ๋…ผ๋ฌธ์ด ์™„์„ฑ๋˜๊ธฐ๊นŒ์ง€ ๋ฏธ๋น„์ ์„ ์ง€์ ํ•˜์—ฌ ์ฃผ์‹œ๊ณ ,๋งŽ ์€ ๊ด€์‹ฌ์œผ๋กœ ์ง€๋„์™€ ์กฐ์–ธ์„ ์•„๋ผ์ง€ ์•Š์œผ์…จ๋˜ ์ •๋ณตํฌ ์„ ๋ฐฐ๋‹˜๊ณผ ์ตœ์›์˜ ๊ต์ˆ˜๋‹˜๊ป˜ ์ง„ ์‹ฌ์œผ๋กœ ๊ฐ์‚ฌ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ €์—๊ฒŒ ํ•™์—…์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ๋งŒ๋“ค์–ด ์ฃผ์‹  ์ž„ํ˜•๋„ ์ˆ˜์„๋‹˜๊ณผ ํ•ญ์ƒ ์–ด๋ ค์›€์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ์ •์‹ ์ ์œผ๋กœ ๋„์™€์ฃผ์‹  ๊น€์ผ์ˆ˜ ๋ณธ๋ถ€์žฅ๋‹˜๊ป˜๋„ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ ,์ •์‹ ์ ์œผ๋กœ ํ•™๋ฌธ์˜ ์–ด๋ ค์›€์— ์ฒ˜ํ–ˆ์„ ๋•Œ ํ•ญ์ƒ ๊ณ์—์„œ ๋งŽ์€ ์•„์ด๋””์–ด์™€ ์šฉ ๊ธฐ๋กœ ๊ฒฉ๋ ค์™€ ์กฐ์–ธ์„ ์•„๋ผ์ง€ ์•Š์œผ์…จ๋˜ ๋งŽ์€ ์„ ๋ฐฐ๋‹˜๊ณผ ๋™๊ธฐ ์„์‚ฌ๊ณผ์ •์˜ ๋งŽ์€ ๋ถ„๋“ค๊ป˜ ๋„ ๊นŠ์€ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๋ณธ ๋…ผ๋ฌธ์„ ์ž‘์„ฑํ•˜๋Š”๋ฐ ์žˆ์–ด,Sํ†ต์‹ ์‚ฌ์˜ PM๋ถ„๋“ค๊ณผ ๊ฐ™์ด ํ”„๋กœ์ ํŠธ์— ์ฐธ์—ฌํ•˜์—ฌ ๋งŽ ์€ ๋„์›€์„ ์ฃผ์‹  ๊น€์žฌ์˜์ฑ…์ž„,๊น€์ƒˆ์ด์ฃผ์ž„๊ป˜๋„ ๊ฐ์‚ฌ๋ฅผ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ํ•ญ์ƒ ์‹œ๊ฐ„์ด ์—†์–ด ํ•™์—…๊ณผ ํšŒ์‚ฌ ์ƒํ™œ์„ ํ•˜๋Š” ๋ฐ์—๋„ ๋ถˆํŽธํ•จ์ด ์—†๋„๋ก ๋„์™€์ฃผ์‹  ํšŒ ์‚ฌ ๋™๋ฃŒ๋ถ„๋“ค๊ณผ ๊ทธ๋ฃน์žฅ๋‹˜,๊ทธ๋ฆฌ๊ณ  ์‚ฌ์žฅ๋‹˜๊ป˜๋„ ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ๋ง์”€์„ ์ง€๋ฉด์„ ๋นŒ์–ด ์ „ํ•˜ ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.
  • 72. -61- ๋˜ํ•œ ํ•ญ์ƒ ์–ด๋ ค์›€์—๋„ ์ €์˜ ๊ณ์—์„œ ๋ถˆํ‰ ๋ถˆ๋งŒ ์—†์ด ํ•™์—…์— ์ •์ง„ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„ ์™€์ค€ ์•„๋‚ด ๊น€์ •์•„,๊ทธ๋ฆฌ๊ณ  ์šฐ๋ฆฌ ๋‘ ์•„๋“ค์—๊ฒŒ๋„ ๊ฐ์‚ฌ์˜ ๋งˆ์Œ์„ ์ „ํ•ฉ๋‹ˆ๋‹ค.๋ง์”€์€ ์•ˆ ํ•˜์‹œ์ง€๋งŒ ์ €์—๊ฒŒ ํ•ญ์ƒ ํž˜์ด ๋˜์–ด ์ฃผ์‹œ๋Š” ํ˜•๋‹˜๋“ค,์ฒ˜์ œ๋“ค,์–ด๋จธ๋‹ˆ,์žฅ๋ชจ๋‹˜,์žฅ์ธ์–ด๋ฅธ ๊ป˜๋„ ๊ฐ์‚ฌํ•˜๋‹ค๋Š” ๋ง์”€์„ ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ด์™ธ์—๋„ ์ œ๊ฐ€ ๋ฏธ์ฒ˜ ์–ธ๊ธ‰ํ•˜์ง€ ๋ชปํ•œ ๊ณ ๋งˆ์šด ๋ถ„๋“ค์ด ๋„ˆ๋ฌด๋‚˜ ๋งŽ์Šต๋‹ˆ๋‹ค.๊ทธ๋ถ„๋“ค์˜ ์ด ๋ฆ„ ํ•˜๋‚˜ ํ•˜๋‚˜๋ฅผ ๋˜์ƒˆ๊ธฐ์ง€ ๋ชปํ•จ์„ ์ฃ„์†กํ•˜๊ฒŒ ์ƒ๊ฐํ•˜๋ฉฐ,์•ž์œผ๋กœ ๋ฐ•์‚ฌ๊ณผ์ •์—์„œ๋„ ๋”์šฑ ๋” ํ•™๋ฌธ์— ์ •์ง„ํ•˜์—ฌ ์ €๋ฅผ ์ง€์ผœ๋ด ์ฃผ์‹œ๋Š” ๋ชจ๋“  ๋ถ„๋“ค์˜ ๊ธฐ๋Œ€์— ์–ด๊ธ‹๋‚˜์ง€ ์•Š๋„๋ก ์ตœ์„  ์„ ๋‹คํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.