01 ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ
Section 1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ๋
1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ฐ๋
โด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์(๊ณต์ฅํต์ด) โญ
๏ ํตํฉ ๋ฐ์ดํฐ(Integrated Data) : ์ค๋ณต์ด ์ต์ํ๋ ๋ฐ์ดํฐ์ ๋ชจ์
๏ ์ ์ฅ ๋ฐ์ดํฐ(Stored Data) : ์ ์ฅ ๋งค์ฒด์ ์ ์ฅ๋ ๋ฐ์ดํฐ
๏ ์ด์ ๋ฐ์ดํฐ(Operational Data) : ์กฐ์ง์ ๋ชฉ์ ์ ์ํด ํ์ํ ๋ฐ์ดํฐ
๏ ๊ณต์ ๋ฐ์ดํฐ(Shared Data) : ์ฌ๋ฌ ์์ฉ ํ๋ก๊ทธ๋จ๋ค์ด ๊ณต๋์ผ๋ก ์ฌ์ฉํ๋ ๋ฐ์ดํฐ
โต ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํน์ง
๏ ์ค์๊ฐ ์ ๊ทผ์ฑ(Real Time Accessibility)
๏ ๊ณ์์ ์ธ ๋ณํ(Continuous Evolution)
๏ ๋์ ๊ณต์ (Concurrent Sharing)
๏ ๋ด์ฉ์ ์ํ ์ฐธ์กฐ(Content Reference)
๏ ๋ฐ์ดํฐ์ ๋
๋ฆฝ์ฑ(Independence)
โถ ๋ฐ์ดํฐ ์ธ์ด
๏ DDL(Data Definition Language : ๋ฐ์ดํฐ ์ ์์ด)
๏ DML(Data Manipulation Language : ๋ฐ์ดํฐ ์กฐ์์ด)
๏ DCL(Data Control Language : ๋ฐ์ดํฐ ์ ์ด์ด)
โท ์คํค๋ง(Schema) 0๏ธโฃ(์คํค๋ง๋? ์์ )
0๏ธโฃ๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์กฐ์ ์ ์ฝ์กฐ๊ฑด์ ๊ดํด ์ ๋ฐ์ ์ธ ๋ช
์ธ๋ฅผ ๊ธฐ์ ํ ๊ฒ
๏ 3๊ณ์ธต ์คํค๋ง
1) ์ธ๋ถ ์คํค๋ง (External Schema) : ์ฌ์ฉ์ ๋ทฐ
2) ๊ฐ๋
์คํค๋ง (Conceptual Schema) : ์ ์ฒด์ ์ธ ๊ตฌ์กฐ์ ์ ์ฝ ์กฐ๊ฑด
3) ๋ด๋ถ ์คํค๋ง (Internal Schema) : ์ ์ฅ ์คํค๋ง
๏ ๋ฐ์ดํฐ ๋
๋ฆฝ์ฑ
1) ๋
ผ๋ฆฌ์ ๋
๋ฆฝ์ฑ: ๊ฐ๋
์คํค๋ง๊ฐ ๋ณ๊ฒฝ๋์ด๋ ์ธ๋ถ ์คํค๋ง์๋ ์ํฅ์ ๋ฏธ์น์ง ์๋๋ก ์ง์
2) ๋ฌผ๋ฆฌ์ ๋
๋ฆฝ์ฑ: ๋ด๋ถ ์คํค๋ง๊ฐ ๋ณ๊ฒฝ๋์ด๋ ์ธ๋ถ/๊ฐ๋
์คํค๋ง๊ฐ ์ํฅ์ ๋ฐ์ง ์๋๋ก ์ง์
2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ (Database Management System)
โด DBMS์ ์ ์
๏ DBMS๋ฅผ ํตํด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ด๋ฆฌํ์ฌ ์์ฉ ํ๋ก๊ทธ๋จ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ณต์ ํ๊ณ , ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณต
โต DBMS์ ๊ธฐ๋ฅ
๏ ๋ฐ์ดํฐ ์ ์
๏ ๋ฐ์ดํฐ ์กฐ์
๏ ๋ฐ์ดํฐ ์ ์ด
๏ ๋ฐ์ดํฐ ๊ณต์
๏ ๋ฐ์ดํฐ ๋ณดํธ
๏ ๋ฐ์ดํฐ ๊ตฌ์ถ
๏ ์ ์ง๋ณด์
โถ DBMS์ ์ข ๋ฅ
๏ ๊ณ์ธตํ (Hierarchical DataBase) : ํธ๋ฆฌ ํํ
๏ ๋คํธ์ํฌํ (Network DataBase) : N:N(๋ค๋๋ค) ๊ตฌ์ฑ , CODASYL DBTG๋ชจ๋ธ
๏ ๊ด๊ณํ(Relational DataBase) : ํ
์ด๋ธ ๊ตฌ์กฐ๋ก ๋จ์ํ์ํจ ๋ชจ๋ธ
๏ ๊ฐ์ฒด ์งํฅํ(Object-Oriented DataBase) : ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ ๊ฐ๋
์ ๊ธฐ๋ฐํ์ฌ ๋ง๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ
๏ ๊ฐ์ฒด ๊ด๊ณํ(Object-Relational DataBase) : ๊ด๊ณํ+๊ฐ์ฒด์งํฅํ
๏ NoSQL : SQL๋ฟ๋ง ์๋๋ผ ๋ค์ํ ํน์ฑ์ ์ง์
๏ NewSQL : RDBMS์ SQL๊ณผ NoSQL์ ์ฅ์ ์ ๊ฒฐํฉํ ๊ด๊ณํ ๋ชจ๋ธ
Section 2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ
1. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ ๋จ๊ณ(์-๊ฐ๋ ผ๋ฌผ-๊ตฌ)0๏ธโฃ1๏ธโฃ
โด ์๊ตฌ์กฐ๊ฑด ๋ถ์
โต ๊ฐ๋ ์ ์ค๊ณ
๏ DBMS์ ๋
๋ฆฝ์ ์ผ๋ก ์ค๊ณ
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ฐ๋
์ ์คํค๋ง ๊ตฌ์ฑ (E-R ๋ค์ด์ด๊ทธ๋จ, ERD)
โถ ๋ ผ๋ฆฌ์ ์ค๊ณ
๏ ๋ชฉํ DBMS์ ๋
ผ๋ฆฌ์ ์๋ฃ ๊ตฌ์กฐ๋ก ๋ณํ
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋
ผ๋ฆฌ์ ์คํค๋ง ์์ฑ
๏ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ธ ๊ฒฝ์ฐ ์ด ๋จ๊ณ์์ ํ
์ด๋ธ์ ์ค๊ณํ๋ ์ ๊ทํ ๊ณผ์ ์ํ
๏ ํธ๋์ญ์
์ธํฐํ์ด์ค ์ค๊ณ
โท ๋ฌผ๋ฆฌ์ ์ค๊ณ
๏ ํน์ DBMS์ ๋ฌผ๋ฆฌ์ ๊ตฌ์กฐ์ ๋ด๋ถ์ ์ธ ์ ์ฅ๊ตฌ์กฐ ์ค๊ณ
๏ ๋ ์ฝ๋ ์ง์ค์ ๋ถ์ ๋ฐ ์ค๊ณ
๏ ํธ๋์ญ์
์ธ๋ถ ์ค๊ณ
+ ๋ฐ์ ๊ทํ
โธ ๊ตฌํ
๏ ํน์ DBMS์ DDL๋ก ๊ธฐ์ ๋ ๋ช ๋ น๋ฌธ์ ์ปดํ์ผํ๊ณ ์คํ์์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์คํค๋ง ์์ฑ
Section 3. ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง
1. ๋ฐ์ดํฐ๋ชจ๋ธ ๊ฐ๋
โด ๋ฐ์ดํฐ๋ชจ๋ธ ๊ฐ๋
๏ ํ์ค์ธ๊ณ์ ์์๋ฅผ ์ธ๊ฐ๊ณผ ์ปดํจํฐ๊ฐ ์ดํดํ ์ ์๋ ์ ๋ณด๋ก ํํํ ๊ฒ
โต ๋ฐ์ดํฐ๋ชจ๋ธ ํ์ํด์ผ ํ ์์โญ1๏ธโฃ
๏ ๊ตฌ์กฐ(Structure) : ๊ฐ์ฒด ํ์
๊ณผ ๊ฐ์ฒด ํ์
๋ค ๊ฐ์ ๊ด๊ณ
๏ ์ฐ์ฐ(Operation) : ์ ์ฅ๋ ๋ฐ์ดํฐ๋ฅผ ์ฒ๋ฆฌํ๋ ๋ฐฉ๋ฒ
๏ ์ ์ฝ์กฐ๊ฑด(Constraint) : ๋ฐ์ดํฐ์ ๋
ผ๋ฆฌ์ ์ธ ์ ์ฝ์กฐ๊ฑด
2. ๊ฐ์ฒด-๊ด๊ณ ๋ชจ๋ธ, E-R๋ชจ๋ธ (Entity Relation Model) 2๏ธโฃ ๊ธฐํธ โญ
โด ๊ฐ์ฒด-๊ด๊ณ ๋ชจ๋ธ ๊ฐ๋ (๊ฐ์๊ด)
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ํ ์๊ตฌ์ฌํญ์ ๊ทธ๋ํฝ์ ์ผ๋ก ํํํ๋ ๋ฐฉ๋ฒ
๏ ํ์ค ์ธ๊ณ์ ์กด์ฌํ๋ ๋ฐ์ดํฐ์ ๊ทธ๋ค ๊ฐ์ ๊ด๊ณ๋ฅผ ์ฌ๋์ด ์ดํดํ ์ ์๋ ํํ๋ก ๋ช
ํํ๊ฒ ํํํ๊ธฐ ์ํด ์ฌ์ฉ๋๋ ๋ชจ๋ธ
โต ๊ฐ์ฒด(Entity)
๏ ํ์ค ์ธ๊ณ์์ ๊ผญ ํ์ํ ์ฌ๋์ด๋ ์ฌ๋ฌผ๊ณผ ๊ฐ์ด ๊ตฌ๋ณ๋๋ ๋ชจ๋ ๊ฒ
โถ ์ ํธ๋ฆฌ๋ทฐํธ , ์์ฑ(Attribute)
๏ ๊ฐ์ฒด๋ ๊ด๊ณ๊ฐ ๊ฐ์ง๊ณ ์๋ ๊ณ ์ ์ ํน์ฑ
๏ ์์ฑ์ ์ ํ
- ๋จ์ผ ๊ฐ ์์ฑ : ๊ฐ์ ํ๋๋ง ๊ฐ์ง ์ ์๋ ์์ฑ (์ด๋ฆ)
- ๋ค์ค ๊ฐ ์์ฑ : ๊ฐ์ ์ฌ๋ฌ ๊ฐ ๊ฐ์ง ์ ์๋ ์์ฑ (์ทจ๋ฏธ)
- ๋จ์ ์์ฑ : ์๋ฏธ๋ฅผ ๋๋ ๋ถํดํ ์ ์๋ ์์ฑ
- ๋ณตํฉ ์์ฑ : ์๋ฏธ๋ฅผ ๋ถํดํ ์ ์๋ ์์ฑ
- ์ ๋ ์์ฑ : ๋ค๋ฅธ ์์ฑ์ ๊ฐ์์ ์ ๋๋์ด ๊ฒฐ์ ๋๋ ์์ฑ
- ๋ ์์ฑ : ์์ง ๊ฒฐ์ ๋์ง ์์ ์กด์ฌํ์ง ์๋ ๊ฐ
- ํค ์์ฑ : ๊ฐ์ฒด๋ฅผ ์๋ณํ๋ ๋ฐ ์ฌ์ฉํ๋ ์์ฑ
โท ๊ด๊ณ(Relationship)
๏ ์๋ก ๋ค๋ฅธ ๊ฐ์ฒด๊ฐ ๋งบ๊ณ ์๋ ์๋ฏธ ์๋ ์ฐ๊ด์ฑ
โธ E-R ๋ค์ด์ด๊ทธ๋จ ๊ธฐํธ
3. ๋ฐ์ดํฐ ๋ชจ๋ธ์ ํ์ง ๊ธฐ์ค(์ ์์ค์ต์ผํ)
๏ ์ ํ์ฑ : ์๊ตฌ์ฌํญ์ ์ ํํ๊ฒ ๋ฐ์
๏ ์์ ์ฑ : ์๊ตฌ์ฌํญ ๋ฐ ์
๋ฌด์์ญ ๋ฐ์ ์ ๋๋ฝ์์ด ์์ฑ
๏ ์ค๊ฑฐ์ฑ : ์ค์ ์๊ฑด๋ค์ ๋๋ฝ์์ด ์ค์ (ํ์ค, ๊ท์น, ๋ฒ์ ์๊ฑด)
๏ ์ต์ ์ฑ : ํํ ์์คํ
์ ์ต์ ์ํ ๋ฐ์
๏ ์ผ๊ด์ฑ : ๋ชจ๋ธ ํํ์ ์ผ๊ด์ฑ ์ ์ง
๏ ํ์ฉ์ฑ : ์
๋ฌด ๋ณํ ์ ์ค๊ณ ๋ณ๊ฒฝ์์ด ์ ์ฐํ๊ฒ ์ค๊ณ
Section 4. ๋ ผ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ
1. ๋ ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋ชจ๋ธ๋ง
โด ๋ ผ๋ฆฌ์ ๋ชจ๋ธ๋ง
- ๊ฐ๋
์ ์ค๊ณ์์ ์ถ์ถ๋ ์ค์ฒด์ ์์ฑ๋ค์ ๊ด๊ณ๋ฅผ ๊ตฌ์กฐ์ ์ผ๋ก ์ค๊ณํ๋ ๋จ๊ณ
- ๋ฐ์ดํฐ ๊ฐ์ ๊ด๊ณ๋ฅผ ์ด๋ป๊ฒ ํํํ๋๋์ ๋ฐ๋ผ ๊ด๊ณ ๋ชจ๋ธ, ๊ณ์ธต ๋ชจ๋ธ, ๋คํธ์ํฌ ๋ชจ๋ธ๋ก ๊ตฌ๋ถ
2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ ๊ทํ(Normalization) 1๏ธโฃ โญ
โด ์ ๊ทํ์ ๊ฐ๋
๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ค๊ณ์์ ์ค๋ณต์ ์ต์ํํ๊ฒ ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํ
โต ์ด์ ํ์(Anomaly)
- ๋ฐ์ดํฐ ์ค๋ณต์ผ๋ก ์ธํด ๋ฆด๋ ์ด์ ์กฐ์ ์ ์์ํ์ง ๋ชปํ ๊ณค๋ํ ํ์์ด ๋ฐ์
- ์ด์์ ์ข
๋ฅ(์ฝ์ญ๊ฐฑ) โญ0๏ธโฃ
โ ์ฝ์
์ด์ : ๋ฐ์ดํฐ๋ฅผ ์ฝ์
ํ ๋ ๋ถํ์ํ ๋ฐ์ดํฐ๊ฐ ํจ๊ป ์ฝ์
๋๋ ํ์
โก ์ญ์ ์ด์ : ํ ํํ์ ์ญ์ ํ ๋ ์ฐ์ ์ญ์ ํ์์ผ๋ก ์ธํด ์ ๋ณด ์์ค 2๏ธโฃ(์ฝ์ )
โข ๊ฐฑ์ ์ด์ : ํํ์ ์์ฑ๊ฐ์ ๊ฐฑ์ ํ ๋ ์ผ๋ถ ํํ์ ์ ๋ณด๋ง ๊ฐฑ์ ๋์ด ์ ๋ณด์ ๋ชจ์์ด ์๊ธฐ๋ ํ์
โถ ํจ์์ ์ข ์(Functional Dependency) (X→Y, Y๋ X์ ํจ์์ ์ข ์) 2๏ธโฃ
1) ์์ ํจ์์ ์ข
์ (Full Functional Dependency)
๏ ๊ธฐ๋ณธํค๋ฅผ ๊ตฌ์ฑํ๋ ๋ชจ๋ ์์ฑ์ด ํฌํจ๋ ๊ธฐ๋ณธํค์ ๋ถ๋ถ์งํฉ์ ์ข
์๋ ๊ฒฝ์ฐ
2) ๋ถ๋ถ ํจ์์ ์ข
์ (Partial Functional Dependency)
๏ ๊ธฐ๋ณธํค๊ฐ ์ฌ๋ฌ ์์ฑ์ผ๋ก ๊ตฌ์ฑ๋์ด ์์ ๋, ๊ธฐ๋ณธํค๋ฅผ ๊ตฌ์ฑํ๋ ์์ฑ ์ค ์ผ๋ถ๋ง ์ข
์๋๋ ๊ฒฝ์ฐ
3) ์ดํ์ ํจ์ ์ข
์ (Transitive Functional Dependecy)
๏ X→ Y, Y→ Z ์ด๋ฌํ ์ข
์ ๊ด๊ณ๊ฐ ์์ ๊ฒฝ์ฐ, X→ Z ๊ฐ ์ฑ๋ฆฝ๋๋ ๊ฒฝ์ฐ
โท ์ ๊ทํ ๊ณผ์ (๋๋ถ์ด๊ฒฐ๋ค์กฐ) โญ
1) ์ 1์ ๊ทํ (1NF) : ๋๋ฉ์ธ์ด ์์๊ฐ๋ง์ผ๋ก ๊ตฌ์ฑ
2) ์ 2์ ๊ทํ (2NF) : ๋ถ๋ถ ํจ์์ ์ข
์ ์ ๊ฑฐ 1๏ธโฃ
3) ์ 3์ ๊ทํ (3NF) : ์ดํ์ ํจ์ ์ข
์ ์ ๊ฑฐ
4) ๋ณด์ด์ค/์ฝ๋ ์ ๊ทํ (BCNF) : ๊ฒฐ์ ์ ์ค ํ๋ณดํค๊ฐ ์๋ ๊ฒ๋ค์ ์ ๊ฑฐ
5) ์ 4 ์ ๊ทํ (4NF) : ๋ค์น ์ข
์ ์ ๊ฑฐ
6) ์ 5์ ๊ทํ (5NF) : ์กฐ์ธ ์ข
์ ์ด์ฉ
Section 5. ๋ฌผ๋ฆฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ
1. ๋ฐ์ ๊ทํ 0๏ธโฃ1๏ธโฃ
๏ ์์คํ
์ ์ฑ๋ฅํฅ์๊ณผ ๊ฐ๋ฐ ํธ์์ฑ ๋ฑ์ ์ํด ์ ๊ทํ์ ์๋ฐฐ๋๋ ์ค๋ณต์ ํ์ฉํ๋ ๊ธฐ๋ฒ
๏ ๋ฐ์ ๊ทํ์ ์ ์ฉ์์
- ๋ฐ์ ๊ทํ ๋์ ์กฐ์ฌ → ๋ค๋ฅธ ๋ฐฉ๋ฒ์ผ๋ก ์ ๋ → ๋ฐ์ ๊ทํ ์ํ
0๏ธโฃ์ ๊ทํ๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ํตํฉ, ์ค๋ณต, ๋ถ๋ฆฌํ๋ ๊ณผ์ ์ผ๋ก ์๋์ ์ผ๋ก ์ ๊ทํ ์์น์ ์๋ฐฐํ๋ ํ์
2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด์คํ
โด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด์คํ
๏ ์ฅ์ ๋ฐ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๋ณดํธํ๊ธฐ ์ํด ๋์ผํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค๋ณต์์ผ ๋์์ ๊ฐฑ์ ํ์ฌ ๊ด๋ฆฌํ๋ ๋ฐฉ๋ฒ (๊ณ ๊ฐ์ฉ์ฑ)
โต ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด์คํ์ ๋ถ๋ฅ
๏ Eager ๊ธฐ๋ฒ : ๋ณ๊ฒฝ ๋ฐ์ ์ฆ์ ๋ฐ์
๏ Lazy ๊ธฐ๋ฒ : ํธ๋์ญ์
์๋ฃ ํ ๋ฐ์
โถ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ด์คํ์ ์ข ๋ฅ
๏ Active-Active, Active-Standby(Hot, Warm, Cold)
3. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฑ์
โด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฑ์ ๊ฐ๋
๏ ์ค๋จ ์ฌํ์ ๋๋นํ์ฌ ๋ณต๊ตฌ๋ฅผ ์งํํ ์ ์๋๋ก ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ธฐ์ ์ผ๋ก ๋ณต์ฌํ๋ ๊ฒ
โต ๋ฐฑ์ ๋ฐฉ์
๏ ์ ์ฒด ๋ฐฑ์
(Full Backup) : Data๋ฅผ ๋ชจ๋ ๋ฐฑ์
๏ ์ฆ๋ถ ๋ฐฑ์
(Incremental Backup) : ๋ณ๊ฒฝ/์ถ๊ฐ๋ Data๋ง ๋ฐฑ์
๏ ์ฐจ๋ฑ ๋ฐฑ์
(Differential Backup) : ๋ณ๊ฒฝ/์ถ๊ฐ๋ Data๋ฅผ ๋ชจ๋ ํฌํจํ์ฌ ๋ฐฑ์
๏ ์ค์๊ฐ ๋ฐฑ์
(RealTime Backup) : ์ฆ์ ๋ฐฑ์
๏ ํธ๋์ญ์
๋ก๊ทธ ๋ฐฑ์
(Transaction Log Backup) : ๋ชจ๋ SQL๋ฌธ์ ๊ธฐ๋กํ ๋ก๊ทธ
๏ ํฉ์ฑ ๋ฐฑ์
: ์ ์ฒด ๋ฐฑ์
๋ณธ๊ณผ ์ฌ๋ฌ ๊ฐ์ ์ฆ๋ถ ๋ฐฑ์
โถ ๋ณต๊ตฌ ์๊ฐ ๋ชฉํ / ๋ณต๊ตฌ ์์ ๋ชฉํ 0๏ธโฃ
1) ๋ณต๊ตฌ ์๊ฐ ๋ชฉํ(RTO)
๏ ์๋น์ค ์ค๋จ ์์ ๊ณผ ์๋น์ค ๋ณต์ ์์ ๊ฐ์ ํ์ฉ๋๋ ์ต๋ ์ง์ฐ ์๊ฐ
A๋ ํ๊ตญ IT ๋ณด์๊ด์ ์ค์์ ๊ทผ๋ฌดํ๊ฒ ๋์๋ค. A๋ ์๋น์ค ์ด์ฉ ์ค ์ธ๋ถ ๊ณต๊ฒฉ์ผ๋ก ์ธํ ์๋ฒ๋ค์ด, ์์ฐ์ฌํด, ์์คํ
์ฅ์ ๋ฑ์ ๋น์ ์ํฉ์๋ ๊ณ ๊ฐ ์๋ ์๋น์ค๋ฅผ ์ ์์ ์ผ๋ก ์ํํ๊ธฐ ์ํด ๊ตฌ์ถํ ์์คํ
์ ๊ด๋ฆฌํ๋ ์
๋ฌด๋ฅผ ์ํํ๋ค. ์ด ์ฉ์ด๋ ์์ ๊ฐ์ ๋น์์ํฉ์ด ๋ฐ์ํ ๊ฒฝ์ฐ ๋น์์ฌํ ๋๋ ์
๋ฌด์ค๋จ ์์ ๋ถํฐ ์
๋ฌด๊ฐ ๋ณต๊ตฌ๋์ด ๋ค์ ์ ์ ๊ฐ๋ ๋ ๋๊น์ง์ ์๊ฐ์ ์๋ฏธํ๋ค.
2) ๋ณต๊ตฌ ์์ ๋ชฉํ(RPO)
๏ ๋ง์ง๋ง ๋ณต๊ตฌ ์์ ๊ณผ ์๋น์ค ์ค๋จ ์์ ์ฌ์ด์ ํ์ฉ๋๋ ๋ฐ์ดํฐ ์์ค๋
4. ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํธํ
โด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํธํ ๋ฐฉ์
๏ API ๋ฐฉ์ : ์ ํ๋ฆฌ์ผ์ด์
์์ ์/๋ณตํธํ ์ํ
๏ Plug-in ๋ฐฉ์ : ์ ํ์ ์ค์นํ์ฌ ์/๋ณตํธํ ์ํ
๏ TDE(Transparent Data Encryption) ๋ฐฉ์ : DBMS ๋ด์ฅ ๋ชจ๋์ ์ด์ฉํ์ฌ ์/๋ณตํธํ ์ํ
๏ ํ์ผ ์ํธํ ๋ฐฉ์ : ๋น์ ํ ๋ฐ์ดํฐ๋ ์ํธํ
๏ ํ๋์จ์ด ๋ฐฉ์ : ๋ณ๋์ ํ๋์จ์ด ๋ฐฉ์
Section 6. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฌผ๋ฆฌ์์ฑ ์ค๊ณ
1. ํํฐ์ ๋
โด ํํฐ์ ๋ ๊ฐ๋
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ๋ฌ ๋ถ๋ถ์ผ๋ก ๋ถํ ํ๋ ๊ฒ (ํ๋์ ์๋ฒ์ ์ ์ฅ)
โต ์ค๋ฉ(Sharding)
๏ ํ๋์ ๊ฑฐ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋คํธ์ํฌ ์์คํ ์ ์ฌ๋ฌ ๊ฐ์ ์์ ์กฐ๊ฐ์ผ๋ก ๋๋์ด ๋ถ์ฐ ์ ์ฅํ์ฌ ๊ด๋ฆฌํ๋ ๊ฒ
โถ ๋ถํ ๊ธฐ์ค
๏ ๋ฒ์ ๋ถํ (Range Partitioning)
๏ ๋ชฉ๋ก ๋ถํ (List Partitioning)
๏ ํด์ ๋ถํ (Hash Partitioning)
๏ ๋ผ์ด๋ ๋ก๋น ๋ถํ (Round Robin Partitioning)
๏ ํฉ์ฑ ๋ถํ (Composite Partitioning)
2. ํด๋ฌ์คํฐ ์ค๊ณ
๏ ๋์คํฌ๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ค๋ ์๊ฐ์ ์ค์ด๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ๋์คํฌ์ ๊ฐ์ ์์น์ ์ ์ฅ์ํค๋ ๋ฐฉ๋ฒ
3. ์ธ๋ฑ์ค(Index)
โด ์ธ๋ฑ์ค์ ๊ฐ๋
๏ ์ถ๊ฐ์ ์ธ ์ ์ฅ ๊ณต๊ฐ์ ํ์ฉํ์ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ ์ด๋ธ์ ๊ฒ์ ์๋๋ฅผ ํฅ์์ํค๊ธฐ ์ํ ์๋ฃ๊ตฌ์กฐ
โต ์ธ๋ฑ์ค์ ์ข ๋ฅ
๏ ํด๋ฌ์คํฐ ์ธ๋ฑ์ค : ํด๋น ์ปฌ๋ผ์ ๊ธฐ์ค์ผ๋ก ํ
์ด๋ธ์ด ๋ฌผ๋ฆฌ์ ์ผ๋ก ์ ๋ ฌ
๏ ๋ํด๋ฌ์คํฐ ์ธ๋ฑ์ค : ๋ ์ฝ๋์ ์๋ณธ์ ์ ๋ ฌ๋์ง ์๊ณ , ์ธ๋ฑ์ค ํ์ด์ง๋ง ์ ๋ ฌ
๏ ๋ฐ์ง ์ธ๋ฑ์ค : ๋ฐ์ดํฐ ๋ ์ฝ๋ ๊ฐ๊ฐ์ ๋ํด ํ๋์ ์ธ๋ฑ์ค ์์ฑ
๏ ํฌ์ ์ธ๋ฑ์ค : ๋ ์ฝ๋ ๊ทธ๋ฃน ๋๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ํด ํ๋์ ์ธ๋ฑ์ค
โถ ์ธ๋ฑ์ค์ ๊ตฌ์กฐ
๏ ํธ๋ฆฌ ๊ธฐ๋ฐ ์ธ๋ฑ์ค : B+ ํธ๋ฆฌ ์ธ๋ฑ์ค๋ฅผ ์ฃผ๋ก ์ฌ์ฉ
๏ ๋นํธ๋งต ์ธ๋ฑ์ค : ๋นํธ๋ฅผ ์ด์ฉํ์ฌ ์ปฌ๋ผ๊ฐ์ ์ ์ฅํ๊ณ ์ด์ฉ
๏ ํจ์ ๊ธฐ๋ฐ ์ธ๋ฑ์ค : ํจ์๋ ์์ ๊ฒฐ๊ณผ ์ด์ฉ
๏ ๋นํธ๋งต ์กฐ์ธ ์ธ๋ฑ์ค : ๋ฌผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ๋ ๋นํธ๋งต ์ธ๋ฑ์ค์ ์์ ํ ๋์ผ
๏ ๋๋ฉ์ธ ์ธ๋ฑ์ค : ๊ฐ๋ฐ์๊ฐ ์์ ์ด ์ํ๋ ์ธ๋ฑ์ค ํ์
์ ์์ฑ
4. ๋ทฐ(View)
โด ๋ทฐ์ ๊ฐ๋
๏ ํ๋ ์ด์์ ๊ธฐ๋ณธ ํ ์ด๋ธ๋ก๋ถํฐ ์ ๋๋, ์ด๋ฆ์ ๊ฐ์ง๋ ๊ฐ์ ํ ์ด๋ธ (์ธ๋ถ ์คํค๋ง์ ํด๋น)
โต ๋ทฐ์ ํน์ง
๏ ๋
ผ๋ฆฌ์ ๋ฐ์ดํฐ ๋
๋ฆฝ์ฑ์ ์ ๊ณต
๏ ALTER VIEW ๋ฌธ์ ์ฌ์ฉํ ์ ์๋ค.
๏ ๋ทฐ๋ก ๊ตฌ์ฑ๋ ๋ด์ฉ์ ๋ํ ์ฝ์
, ์ญ์ , ๊ฐฑ์ ์ฐ์ฐ์ ์ ์ฝ
5. ์์คํ
์นดํ๋ก๊ทธ = DD โญ
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฅ๋์ด ์๋ ๋ชจ๋ ๊ฐ์ฒด๋ค์ ๋ํ ์ ์์ ๋ํ ์ ๋ณด๊ฐ ์๋ก๋์ด ์๋ ์์คํ
ํ
์ด๋ธ
๏ ์์คํ
์นดํ๋ก๊ทธ๋ฅผ ๋ฐ์ดํฐ ์ฌ์ (Data Dictionary) ์ด๋ผ๊ณ ๋ ํ๋ค.
๏ ์ฌ์ฉ์๊ฐ SQL๋ฌธ์ ์ด์ฉํ์ฌ ๋ด์ฉ์ ๊ฒ์ํด ๋ณผ ์ ์์ง๋ง, ์์ ์ ๋ถ๊ฐ๋ฅํ๋ค.
๏ ์์คํ
์นดํ๋ก๊ทธ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ
์ ์ํด ์์ฑ๋๊ณ ์ ์ง๋๋ค.
Section 7. ๊ด๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ
1. ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ
โด ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ ๊ฐ๋
๏ ๋ฐ์ดํฐ์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๊ฐ ๋ฆด๋ ์ด์ , ์ฆ ํ ์ด๋ธ ํํ์ ํ๋ฉด ํ์ผ๋ก ํํ๋๋ ๋ฐ์ดํฐ ๋ชจ๋ธ
โต ๊ด๊ณ ๋ฐ์ดํฐ ๋ฆด๋ ์ด์ ์ ๊ตฌ์กฐ 1๏ธโฃ
โถ ๋ฆด๋ ์ด์
1) ๋ฆด๋ ์ด์ ์ ๊ตฌ์ฑ
๏ ๋ฆด๋ ์ด์
์คํค๋ง : ๋ฆด๋ ์ด์
์ด๋ฆ๊ณผ ๋ชจ๋ ์์ฑ์ ์ด๋ฆ์ผ๋ก ์ ์ํ๋ ๋ฆด๋ ์ด์
์ ๋
ผ๋ฆฌ์ ์ธ ๊ตฌ์กฐ
๏ ๋ฆด๋ ์ด์
์ธ์คํด์ค : ๋ฆด๋ ์ด์
์คํค๋ง์ ์ค์ ๋ก ์ ์ฅ๋ ๋ฐ์ดํฐ์ ์งํฉ
2) ๋ฆด๋ ์ด์ ์ ํน์ง
๏ ํํ์ ์ ์ผ์ฑ : ๋ฆด๋ ์ด์
์์๋ ๋๊ฐ์ ํํ์ด ์กด์ฌํ ์ ์์
๏ ํํ์ ๋ฌด์์์ฑ : ํํ ์ฌ์ด์๋ ์์๊ฐ ์์
๏ ์์ฑ์ ๋ฌด์์์ฑ : ์์ฑ ์ฌ์ด์๋ ์์๊ฐ ์์
๏ ์์ฑ์ ์์์ฑ : ์์ฑ์ ๋ ์ด์ ๋ถํดํ ์ ์๋ ์์๊ฐ๋ง ๊ฐ์ง๋ค .
๏ ํํ๋ค์ ์ฝ์
, ์ญ์ , ๊ฐฑ์ ์์
์ด ์ค์๊ฐ์ผ๋ก ์ผ์ด๋๋ฏ๋ก ๋ฆด๋ ์ด์
์ ์์๋ก ๋ณํ๋ค.
2. ๊ด๊ณ ๋ฐ์ดํฐ ์ธ์ด (๊ด๊ณ๋์, ๊ด๊ณํด์) โญ๐งฎ
โด ๊ด๊ณ ๋์์ ๊ฐ๋ 0๏ธโฃ2๏ธโฃ2๏ธโฃ
๏ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ์ป๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ์ด๋ป๊ฒ ์ฐพ๋์ง์ ๋ํ ์ฒ๋ฆฌ ๊ณผ์ ์ ๋ช ์ํ๋ ์ ์ฐจ์ ์ธ ์ธ์ด
โต ์์ ๊ด๊ณ ์ฐ์ฐ์
1) SELECT
๏ ๊ธฐํธ : σ(์๊ทธ๋ง)
๏ ํ๊ธฐ๋ฒ : σ<์กฐ๊ฑด>(R)
2) PROJECT
๏ ๊ธฐํธ : π(ํ์ด)
๏ ํ๊ธฐ๋ฒ : π<๋ฆฌ์คํธ>(R)
3) JOIN
๏ ๊ธฐํธ : โ(๋ณดํ์ด)
๏ ํ๊ธฐ๋ฒ : Rโ<์กฐ๊ฑด >S
4) DIVISION
๏ ๊ธฐํธ : ÷(๋๋๊ธฐ)
๏ ํ๊ธฐ๋ฒ : R÷S
0๏ธโฃ ๋ฆด๋ ์ด์
A, B๊ฐ ์์ ๋ ๋ฆด๋ ์ด์
B์ ์กฐ๊ฑด์ ๋ง๋ ๊ฒ๋ค๋ง ๋ฆด๋ ์ด์
A์์ ๋ถ๋ฆฌํ์ฌ ํ๋ก์ ์
์ ํ๋ ์ฐ์ฐ
โถ ์ผ๋ฐ ์งํฉ ์ฐ์ฐ์
1) ํฉ์งํฉ (Union)
๏ ํ๊ธฐ๋ฒ : ∪
2) ๊ต์งํฉ (Intersection)
๏ ํ๊ธฐ๋ฒ : ∩
3) ์ฐจ์งํฉ (Difference)
๏ ํ๊ธฐ๋ฒ : -
4) ๊ต์ฐจ๊ณฑ, ์นด๋์
ํ๋ก๋ํธ (Cartesian Product) (ํฌ๋ก์ค ์กฐ์ธ๊ณผ ๊ฐ์)
๏ ํ๊ธฐ๋ฒ : X
โท ๊ด๊ณํด์ 2๏ธโฃ
๏ ๊ด๊ณ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ ์์์ธ ์ฝ๋(E. F. Codd) ๊ฐ ์ํ์ Predicate Calculus(์ ์ดํด์)์ ๊ธฐ๋ฐ์ ๋๊ณ ๊ด๊ณ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ํด ์ ์
๏ ๊ด๊ณํด์์ ์ํ๋ ์ ๋ณด๊ฐ ๋ฌด์์ด๋ผ๋ ๊ฒ๋ง ์ ์ํ๋ ๋น์ ์ฐจ์ ํน์ฑ
๏ ํํ ๊ด๊ณํด์๊ณผ ๋๋ฉ์ธ ๊ด๊ณํด์์ด ์๋ค.
๏ ์ฐ์ฐ์
Section 8. ํค์ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด
1. ํค ์ข ๋ฅ
โด ํค(Key)์ ๊ฐ๋
๋ฆด๋ ์ด์ ์์ ๋ค๋ฅธ ํํ๋ค๊ณผ ๊ตฌ๋ณํ ์ ์๋ ์ ์ผํ ๊ธฐ์ค์ด ๋๋ ์ปฌ๋ผ
โต ํค(Key)์ ์ข ๋ฅ
1) ํ๋ณดํค(Candidate Key) 2๏ธโฃ
๏ ๋ฆด๋ ์ด์
์ ๊ตฌ์ฑํ๋ ์์ฑ๋ค ์ค์์ ํํ์ ์ ์ผํ๊ฒ ์๋ณํ ์ ์๋ ์์ฑ๋ค์ ๋ถ๋ถ์งํฉ
๏ ํํ์ ๋ํ ์ ์ผ์ฑ๊ณผ ์ต์์ฑ์ ๋ง์กฑ์์ผ์ผ ํ๋ค.
2) ๊ธฐ๋ณธํค(Primary Key)
๏ ํ๋ณดํค ์ค์์ ์ ํํ ์ฃผํค(Main Key)
๏ ํ ๋ฆด๋ ์ด์
์์ ํน์ ํํ์ ์ ์ผํ๊ฒ ๊ตฌ๋ณํ ์ ์๋ ์์ฑ
3) ๋์ฒดํค(Alternate Key)
๏ ํ๋ณดํค๊ฐ ๋ ์ด์์ผ ๋ ๊ธฐ๋ณธํค๋ฅผ ์ ์ธํ ๋๋จธ์ง ํ๋ณดํค
4) ์ํผํค(Super Key) 2๏ธโฃ
๏ ํ ๋ฆด๋ ์ด์
๋ด์ ์๋ ์์ฑ๋ค์ ์งํฉ์ผ๋ก ๊ตฌ์ฑ๋ ํค
๏ ํํ์ ๋ํ ์ ์ผ์ฑ์ ๋ง์กฑํ์ง๋ง, ์ต์์ฑ์ ๋ง์กฑ์ํค์ง ๋ชปํ๋ค.
5) ์ธ๋ํค(Foreign Key)
๏ ๊ด๊ณ(Relation)๋ฅผ ๋งบ๊ณ ์๋ ๋ฆด๋ ์ด์
R1, R2์์ ๋ฆด๋ ์ด์
R1์ด ์ฐธ์กฐํ๊ณ ์๋ ๋ฆด๋ ์ด์
R2์ ๊ธฐ๋ณธํค์ ๊ฐ์ R1 ๋ฆด๋ ์ด์
์ ์์ฑ
2. ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฌด๊ฒฐ์ฑ
โด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฌด๊ฒฐ์ฑ ๊ฐ๋
๋ฐ์ดํฐ์ ์ ํ์ฑ, ์ผ๊ด์ฑ, ์ ํจ์ฑ์ด ์ ์ง๋๋ ๊ฒ
โต ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฌด๊ฒฐ์ฑ ์ข ๋ฅโญ
1) ๊ฐ์ฒด ๋ฌด๊ฒฐ์ฑ(Entity Integrity)
๏ ๋ชจ๋ ๋ฆด๋ ์ด์
์ ๊ธฐ๋ณธ ํค(Primary Key)๋ฅผ ๊ฐ์ ธ์ผ ํ๋ค.
๏ ๊ธฐ๋ณธํค๋ ์ค๋ณต๋์ง ์์ ๊ณ ์ ํ ๊ฐ์ ๊ฐ์ ธ์ผ ํ๋ค.
๏ ๋ฆด๋ ์ด์
์ ๊ธฐ๋ณธํค๋ NULL ๊ฐ์ ํ์ฉํ์ง ์๋๋ค.
2) ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ(Referential Integrity)
๏ ์ธ๋ํค ๊ฐ์ NULL์ด๊ฑฐ๋ ์ฐธ์กฐํ๋ ๋ฆด๋ ์ด์
์ ๊ธฐ๋ณธํค ๊ฐ๊ณผ ๋์ผํด์ผ ํ๋ค.
๏ ๊ฐ ๋ฆด๋ ์ด์
์ ์ฐธ์กฐํ ์ ์๋ ์ธ๋ํค ๊ฐ์ ๊ฐ์ง ์ ์๋ค.
๏ ์ฐธ์กฐ ๋ฌด๊ฒฐ์ฑ ์ ์ฝ์กฐ๊ฑด
- ์ ํ(Restrict) : ๋ฌธ์ ๊ฐ ๋๋ ์ฐ์ฐ์ ๊ฑฐ์
- ์ฐ์(Cascade) : ๋ถ๋ชจ ํํ ์ญ์ ์ ์ฐธ์กฐํ๋ ์์์ ํํ๋ ํจ๊ป ์ญ์
- ๋๊ฐ(Nullify) :๋ถ๋ชจ ํํ ์ญ์ ์ ์ฐธ์กฐํ๋ ์์์ ํํ์ NULL๋ก ๋ฑ๋ก
- ๊ธฐ๋ณธ๊ฐ(Default) : ๋ถ๋ชจ ํํ ์ญ์ ์ ์ฐธ์กฐํ๋ ์์์ ํํ์ DEFAULT๊ฐ์ผ๋ก ๋ฑ๋ก
3) ๋๋ฉ์ธ ๋ฌด๊ฒฐ์ฑ(Domain Integrity)
๏ ์์ฑ๋ค์ ๊ฐ์ ์ ์๋ ๋๋ฉ์ธ์ ์ํ ๊ฐ์ด์ด์ผ ํ๋ค.
๏ ์ฑ๋ณ์ด๋ผ๋ ์ปฌ๋ผ์๋ ‘๋จ’, ‘์ฌ’๋ฅผ ์ ์ธํ ๋ฐ์ดํฐ๋ ์ ํ๋์ด์ผ ํ๋ค.
4) ๊ณ ์ ๋ฌด๊ฒฐ์ฑ(Unique Integrity)
๏ ๋ฆด๋ ์ด์ ์ ํน์ ์์ฑ์ ๋ํด ๊ฐ ํํ์ด ๊ฐ๋ ์์ฑ ๊ฐ๋ค์ด ์๋ก ๋ฌ๋ผ์ผ ํ๋ค.
5) ํค ๋ฌด๊ฒฐ์ฑ(Key Integrity)
๏ ํ๋์ ๋ฆด๋ ์ด์ ์๋ ์ ์ด๋ ํ๋์ ํค๊ฐ ์กด์ฌํด์ผ ํ๋ค.
6) ๋ฆด๋ ์ด์ ๋ฌด๊ฒฐ์ฑ(Relation Integrity)
๏ ์ฝ์ , ์ญ์ , ๊ฐฑ์ ๊ณผ ๊ฐ์ ์ฐ์ฐ์ ์ํํ๊ธฐ ์ ๊ณผ ํ์ ๋ํ ์ํ์ ์ ์ฝ
Section 9. ๋ฌผ๋ฆฌ๋ฐ์ดํฐ ๋ชจ๋ธ ํ์ง ๊ฒํ
1. CRUD ๋ถ์
โด CRUD์ ๊ฐ๋
๏ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๊ธฐ๋ฅ์ธ Create(์์ฑ), Read(์ฝ๊ธฐ), Update(๊ฐฑ์ ), Delete(์ญ์ )๋ฅผ ๋ฌถ์ด์ ํํํ ๋ง์ด๋ค.
2. ์ตํฐ๋ง์ด์
โด SQL ์ฒ๋ฆฌ ํ๋ฆ โญ
1) ๊ตฌ๋ฌธ๋ถ์ ๋จ๊ณ
๏ SQL ๋ฌธ์ด ๋ฌธ๋ฒ์ ๋ฐ๋ผ ์ ์์ ์ผ๋ก ์์ฑ๋์๋์ง ๋ถ์ parsing
2) ์คํ ๋จ๊ณ
๏ ์ ์๋ ํ
์ด๋ธ์ ํด๋น ๋ฐ์ดํฐ ํ์ผ๋ก๋ถํฐ ํ
์ด๋ธ์ ์ฝ์ด์ ๋ฐ์ดํฐ๋ฒํผ ์บ์์์ญ์ ์ ์ฅ execution
3) ์ถ์ถ ๋จ๊ณ
๏ ๋ฐ์ดํฐ๋ฒํผ ์บ์์์ญ์์ ๊ด๋ จ ํ
์ด๋ธ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด์ ์ฌ์ฉ์๊ฐ ์์ฒญํ ํด๋ผ์ด์ธํธ๋ก ์ ์ก fetch
โต ์ตํฐ๋ง์ด์ ๊ฐ๋
๏ ์ฌ์ฉ์๊ฐ ์ง์ํ SQL๋ฌธ์ ๋ํด ์ต์ ์ ์คํ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํ๋ ์ญํ ์ ์ํ
๏ ์ตํฐ๋ง์ด์ ์ ๊ตฌ๋ถ
1) ๊ท์น๊ธฐ๋ฐ ์ตํฐ๋ง์ด์ (Rule Based Optimizer) : ๊ท์น (์ฐ์ ์์)๋ฅผ ๊ฐ์ง๊ณ ์คํ ๊ณํ ์์ฑ
2) ๋น์ฉ๊ธฐ๋ฐ ์ตํฐ๋ง์ด์ (Cost Based Optimizer) : ํต๊ณ์ ๋ณด๋ฅผ ํ์ฉํ์ฌ ์คํ ๊ณํ ์์ฑ
3. SQL ์ฑ๋ฅ ํ๋
โด ํ๋์ ๊ฐ๋
๏ SQL๋ฌธ์ ์ต์ ํํ์ฌ ๋น ๋ฅธ ์๊ฐ ๋ด์ ์ํ๋ ๊ฒฐ๊ณผ๊ฐ์ ์ป๊ธฐ ์ํ ์์
โต ํ๋ ์์ญ
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณํ๋ : ์ ๊ทํ ๋ฐ ๋ฐ์ ๊ทํํ์ฌ ์ฌ์ค๊ณ
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํ๊ฒฝ : ๋ฉ๋ชจ๋ฆฌ๋ ๋ธ๋ก ํฌ๊ธฐ ์ง์
๏ SQL ๋ฌธ์ฅ ํ๋ : ์ฑ๋ฅ์ ๊ณ ๋ คํ์ฌ SQL ๋ฌธ์ฅ์ ์์ฑ
โถ Row Migration / Row Chaining
1) Row Migration : ๋ค๋ฅธ ๋ธ๋ก์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ๊ณ , ๊ธฐ์กด ๋ธ๋ก ์์น์๋ ๋งํฌ๋ฅผ ๋จ๊น
2) Row Chaining : ๋ ๊ฐ์ ๋ธ๋ก์ ์์ฑ
Section 10. ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
1. ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค
โด ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค(Distribute Database)์ ์ ์
๏ ์ฌ๋ฌ ๊ณณ์ผ๋ก ๋ถ์ฐ๋์ด์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ํ๋์ ๊ฐ์ ์์คํ ์ผ๋ก ์ฌ์ฉํ ์ ์๋๋ก ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค
โต ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ฑ์์
๋ถ์ฐ ์ฒ๋ฆฌ๊ธฐ : ์์ฒด์ ์ผ๋ก ์ฒ๋ฆฌ ๋ฅ๋ ฅ์ ๊ฐ์ง๋ฉฐ, ์ง๋ฆฌ์ ์ผ๋ก ๋ถ์ฐ๋์ด ์๋ ์ปดํจํฐ ์์คํ
๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค : ์ง๋ฆฌ์ ์ผ๋ก ๋ถ์ฐ๋์ด ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก์ ํด๋น ์ง์ญ์ ํน์ฑ์ ๋ง๊ฒ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ
๊ตฌ์ฑ
ํต์ ๋คํธ์ํฌ : ๋ถ์ฐ ์ฒ๋ฆฌ๊ธฐ๋ค์ ํต์ ๋ง์ผ๋ก ์ฐ๊ฒฐํ์ฌ ๋
ผ๋ฆฌ์ ์ผ๋ก ํ๋์ ์์คํ
์ฒ๋ผ ์๋ํ ์ ์๋๋ก
ํ๋ ํต์ ๋คํธ์ํฌ
โถ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ์ฉ ๊ธฐ๋ฒ
1) ํ ์ด๋ธ ์์น ๋ถ์ฐ
๏ ์ค๊ณ๋ ํ
์ด๋ธ์ ์์น๋ฅผ ๊ฐ๊ฐ ๋ค๋ฅด๊ฒ ์์น์ํค๋ ๊ฒ
2) ํ
์ด๋ธ ๋ถํ (Fragmentation) ๋ถ์ฐ
๏ ๊ฐ๊ฐ์ ํ ์ด๋ธ์ ์ชผ๊ฐ์ด ๋ถ์ฐํ๋ ๋ฐฉ๋ฒ
3) ํ ์ด๋ธ ๋ณต์ (Replication) ๋ถ์ฐ
๏ ๋์ผํ ํ
์ด๋ธ์ ๋ค๋ฅธ ์ง์ญ์ด๋ ์๋ฒ์์ ๋์์ ์์ฑํ์ฌ ๊ด๋ฆฌํ๋ ์ ํ
๏ ๋ถ๋ถ๋ณต์ (์ผ๋ถ๋ด์ฉ), ๊ด์ญ๋ณต์ (์ ์ฒด๋ด์ฉ)
4) ํ ์ด๋ธ ์์ฝ(Summarization) ๋ถ์ฐ
๏ ์ง์ญ ๊ฐ ๋๋ ์๋ฒ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ๋น์ทํ์ง๋ง ์๋ก ๋ค๋ฅธ ์ ํ์ผ๋ก ์กด์ฌ
๏ ๋ถ์์์ฝ, ํตํฉ์์ฝ
โท ํฌ๋ช ์ฑ ์กฐ๊ฑด โญ
๏ ์์น ํฌ๋ช
์ฑ (Location) : ์ค์ ์์น๋ฅผ ์ ํ์์์ด ๋
ผ๋ฆฌ์ ์ธ ๋ช
์นญ์ผ๋ก ์ก์ธ์ค
๏ ๋ถํ ํฌ๋ช
์ฑ (Division) : ๊ฐ ๋จํธ์ ์ฌ๋ณธ์ด ์ฌ๋ฌ ์์น์ ์ ์ฅ
๏ ์ง์ญ์ฌ์ ํฌ๋ช
์ฑ(Local Mapping) : ๊ฐ ์ง์ญ์์คํ
์ด๋ฆ๊ณผ ๋ฌด๊ดํ ์ด๋ฆ ์ฌ์ฉ ๊ฐ๋ฅ
๏ ์ค๋ณต ํฌ๋ช
์ฑ(Replication) : ๋์ผ ๋ฐ์ดํฐ๊ฐ ์ฌ๋ฌ ๊ณณ์ ์ค๋ณต๋์ด ์์ด๋ ํ๋์ฒ๋ผ ์ฌ์ฉ ๊ฐ๋ฅ
๏ ๋ณํ ํฌ๋ช
์ฑ(Concurrency) : ๋ค์์ ํธ๋์ญ์
๋ค์ด ๋์์ ์คํ๋๋๋ผ๋ ๊ฒฐ๊ณผ๋ ์ํฅ์ ๋ฐ์ง ์์
๏ ์ฅ์ ํฌ๋ช
์ฑ(Failure) : ์ฅ์ ์๋ ๋ถ๊ตฌํ๊ณ ํธ๋์ญ์
์ ์ ํํ๊ฒ ์ฒ๋ฆฌํจ
โธ CAP ์ด๋ก
1) ๊ฐ๋
๏ ์ด๋ค ๋ถ์ฐ ํ๊ฒฝ์์๋ ์ผ๊ด์ฑ(C), ๊ฐ์ฉ์ฑ(A), ๋ถ๋จ ํ์ฉ์ฑ(P) ์ธ ๊ฐ์ง ์์ฑ ์ค, ๋ ๊ฐ์ง๋ง ๊ฐ์ง ์ ์๋ค๋ ๊ฒ
2) ํน์ง์ ์๋ฏธ
๏ ์ผ๊ด์ฑ(Consistency)
๏ ๊ฐ์ฉ์ฑ(Availability)
๏ ๋ถ๋จ ํ์ฉ์ฑ(Partition Tolerance)
2. ํธ๋์ญ์ โญ
โด ํธ๋์ญ์ ์ ๊ฐ๋
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ํ๋ฅผ ๋ณํ์ํค๋ ํ๋์ ๋ ผ๋ฆฌ์ ์ธ ๊ธฐ๋ฅ์ ์ํํ๋ ์์ ๋จ์
โต ํธ๋์ญ์ ์ ์ฑ์ง(ACID) โญ0๏ธโฃ
๏ 0๏ธโฃ1๏ธโฃ ์์์ฑ(Atomicity) : ๋ชจ๋ ๋ฐ์๋๋ ์ง ์๋๋ฉด ์ ํ ๋ฐ์๋์ง ์์์ผ ํ๋ค (Commit๊ณผ Rollback)
๏ ์ผ๊ด์ฑ(Consistency) : ์คํ์ ์๋ฃํ๋ฉด ์ธ์ ๋ ์ผ๊ด์ฑ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๋ก ๋ณํ
๏ 0๏ธโฃ๋
๋ฆฝ์ฑ, ๊ฒฉ๋ฆฌ์ฑ (Isolation) : ํ๋์ ํธ๋์ญ์
์คํ ์ค์ ๋ค๋ฅธ ํธ๋์ญ์
์ ์ฐ์ฐ์ด ๋ผ์ด๋ค ์ ์๋ค.
๏ ์์์ฑ(Durability) : ํธ๋์ญ์
์ ๊ฒฐ๊ณผ๋ ์์คํ
์ด ๊ณ ์ฅ์ด ๋๋๋ผ๋ ์๊ตฌ์ ์ผ๋ก ๋ฐ์๋์ด์ผ ํ๋ค.
โถ ํธ๋์ญ์ ์ ์ํ
๏ ํ๋(Active) : ํธ๋์ญ์
์ด ์คํ ์ค์ธ ์ํ
๏ ์คํจ(Failed) : ์ค๋ฅ๊ฐ ๋ฐ์ํ์ฌ ์ค๋จ๋ ์ํ
๏ ์ฒ ํ(Aborted) : Rollback ์ฐ์ฐ์ ์ํํ ์ํ
๏ ๋ถ๋ถ ์๋ฃ(Partially Committed) : Commit ์ฐ์ฐ์ด ์คํ๋๊ธฐ ์ง์ ์ ์ํ
๏ ์๋ฃ(Committed) : Commit ์ฐ์ฐ์ ์คํํ ํ์ ์ํ
02 SQL ํ์ฉ
Section 1. SQL ๊ธฐ๋ณธ ์์ฑ
1. SQL(Structured Query Language) โญโญโญ
โด SQL์ ๊ฐ๋
๏ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์์คํ ์์ ์๋ฃ๋ฅผ ์ฒ๋ฆฌํ๋ ์ฉ๋๋ก ์ฌ์ฉ๋๋ ๊ตฌ์กฐ์ ๋ฐ์ดํฐ ์ง์ ์ธ์ด
โต SQL ๋ฌธ๋ฒ์ ์ข ๋ฅ
1) Data Definition Language (DDL) - ๋ฐ์ดํฐ ์ ์์ด
๏ CREATE, ALTER, DROP, RENAME, TRUNCATE
2) Data Manipulation Language (DML) - ๋ฐ์ดํฐ ์กฐ์์ด
๏ SELECT, INSERT, UPDATE, DELETE
3) Data Control Language (DCL) - ๋ฐ์ดํฐ ์ ์ด์ด
๏ GRANT (WITH GRANT OPTION1๏ธโฃ), REVOKE
4) Transaction Control Language (TCL) - ํธ๋์ญ์
์ ์ด์ด (DCL์ ๋ค์ด๊ฐ)
๏ COMMIT, 0๏ธโฃROLLBACK, SAVEPOINT
Section 2. ์ ์ฐจํ SQL
1. ์ ์ฅ ํ๋ก์์ (Stored Procedure)
โด ์ ์ฅ ํ๋ก์์ ์ ๊ฐ๋
๏ ์ผ๋ จ์ ์ฟผ๋ฆฌ๋ฅผ ๋ง์น ํ๋์ ํจ์์ฒ๋ผ ์คํํ๊ธฐ ์ํ ์ฟผ๋ฆฌ์ ์งํฉ
โต ์ ์ฅ ํ๋ก์์ ์ ๊ตฌ์กฐ
CREATE OR REPLACE PROCEDURE ํ๋ก์์ ๋ช
( ๋ณ์1 IN ๋ณ์ํ์ , ๋ณ์2 OUT ๋ณ์ํ์ , ๋ณ์3 IN OUT ๋ณ์ํ์ .... ) IS ๋ณ์ ์ฒ๋ฆฌ๋ถ BEGIN ์ฒ๋ฆฌ๋ด์ฉ EXCEPTION ์์ธ์ฒ๋ฆฌ๋ถ END; |
2. ํธ๋ฆฌ๊ฑฐ
โด ํธ๋ฆฌ๊ฑฐ์ ๊ฐ๋
๏ ํ ์ด๋ธ์ ๋ํ ์ด๋ฒคํธ์ ๋ฐ์ํด ์๋์ผ๋ก ์คํ๋๋ ์์
โต ํธ๋ฆฌ๊ฑฐ์ ์ ํ
๏ ํ ํธ๋ฆฌ๊ฑฐ : FOR EACH ROW ์ต์
์ฌ์ฉ
๏ ๋ฌธ์ฅ ํธ๋ฆฌ๊ฑฐ : INSERT, UPDATE, DELETE๋ฌธ์ ๋ํด ๋จ ํ ๋ฒ๋ง ์คํ
โถ ํธ๋ฆฌ๊ฑฐ์ ์คํ ์๊ธฐ
๏ BEFORE : ์ด๋ฒคํธ ์
๏ AFTER : ์ด๋ฒคํธ ํ
3. ์ฌ์ฉ์ ์ ์ ํจ์
โด ์ฌ์ฉ์ ์ ์ ํจ์์ ๊ฐ๋
๏ ํ๋ผ๋ฏธํฐ๋ ์ ๋ ฅ ํ๋ผ๋ฏธํฐ๋ง ๊ฐ๋ฅํ๊ณ , ๋ฆฌํด๊ฐ์ด ํ๋์ด๋ค.
โต ์ฌ์ฉ์ ์ ์ ํจ์์ ๊ตฌ์กฐ
CREATE OR REPLACE FUNCTION ํจ์๋ช
( ๋งค๊ฐ๋ณ์1, ๋งค๊ฐ๋ณ์2, ๋งค๊ฐ๋ณ์3,....... ) RETURN ๋ฐ์ดํฐ ํ์ IS ๋ณ์ ์ฒ๋ฆฌ๋ถ BEGIN ์ฒ๋ฆฌ๋ด์ฉ RETURN ; ๋ฐํ๊ฐ EXCEPTION ์์ธ์ฒ๋ฆฌ๋ถ END; |
03 ๋ณํ์ ์ด์ ๋ฐ์ดํฐ์ ํ
Section 1. ๋ณํ์ ์ด์ ํ๋ณต
1. ๋ณํ์ ์ด
โด ๋ณํ์ ์ด๋ฅผ ํ์ง ์์์ ๋์ ๋ฌธ์ ์ โญ
1) ๊ฐฑ์ ๋ถ์ค (Lost Update)
๏ ๋ ๊ฐ ์ด์์ ํธ๋์ญ์
์ด ๊ฐ์ ์๋ฃ๋ฅผ ๊ณต์ ํ์ฌ ๊ฐฑ์ ํ ๋ ๊ฐฑ์ ๊ฒฐ๊ณผ์ ์ผ๋ถ๊ฐ ์์ด์ง๋ ํ์
2) ๋น์๋ฃ ์์กด์ฑ (Uncommitted Dependency)
๏ ํ๋์ ํธ๋์ญ์
์ํ์ด ์คํจํ ํ ํ๋ณต๋๊ธฐ ์ ์ ๋ค๋ฅธ ํธ๋์ญ์
์ด ์คํจํ ๊ฐฑ์ ๊ฒฐ๊ณผ๋ฅผ ์ฐธ์กฐํ๋ ํ์
3) ๋ชจ์์ฑ (Inconsistency)
๏ ๋ ๊ฐ์ ํธ๋์ญ์
์ด ๋ณํ์ํ๋ ๋ ์์น ์๋ ์๋ฃ๋ฅผ ์ด์ฉํจ์ผ๋ก์จ ๋ฐ์ํ๋ ๋ฌธ์
๏ ๊ฐฑ์ ๋ถ์ค๊ณผ ๋น์ทํด ๋ณด์ด์ง๋ง ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์ฌ ๋ ๋ฐ์ํ๋ ๋ฌธ์
4) ์ฐ์ ๋ณต๊ท (Cascading Rollback)
๏ ๋ณํ์ํ๋ ํธ๋์ญ์
๋ค ์ค ์ด๋ ํ๋์ ๋ฌธ์ ๊ฐ ์๊ฒจ Rollbackํ๋ ๊ฒฝ์ฐ ๋ค๋ฅธ ํธ๋์ญ์
๋ ํจ๊ป Rollback๋๋ ํ์
โต ๋ณํ์ ์ด ๊ธฐ๋ฒ
1) ๋กํน (Locking)
๏ ํธ๋์ญ์
์ด ์ด๋ค ๋ฐ์ดํฐ์ ์ ๊ทผํ๊ณ ์ ํ ๋ ๋ชปํ๋๋ก ๋กํน ์ํ
๏ ๋กํน ๋จ์์ ๋ฐ๋ฅธ ๊ตฌ๋ถ
2) 2๋จ๊ณ ๋กํน ๊ท์ฝ (Two-Phase Locking Protocol)
๏ ํ์ฅ๋จ๊ณ : ์๋ก์ด Lock์ ๊ฐ๋ฅํ๊ณ Unlock์ ๋ถ๊ฐ๋ฅํ๋ค.
๏ ์ถ์๋จ๊ณ : Unlock์ ๊ฐ๋ฅํ๊ณ ์๋ก์ด Lock์ ๋ถ๊ฐ๋ฅํ๋ค.
3) ํ์์คํฌํ(Time Stamp)
๏ ๋ฐ์ดํฐ์ ์ ๊ทผํ๋ ์๊ฐ์ ๋ฏธ๋ฆฌ ์ ํด์ ์ ํด์ง ์๊ฐ(Time Stamp)์ ์์๋๋ก ๋ฐ์ดํฐ์ ์ ๊ทผํ์ฌ ์ํ
4) ๋๊ด์ ๋ณํ์ ์ด (Optimistic Concurrency Control)
๏ ํธ๋์ญ์
์ํ ์ค์๋ ์ด๋ ํ ๊ฒ์ฌ๋ ํ์ง ์๊ณ , ํธ๋์ญ์
์ข
๋ฃ ์์ ์ผ๊ด์ ์ผ๋ก ๊ฒ์ฌ
5) ๋ค์ค ๋ฒ์ ๋ณํ์ ์ด (Multi-version, Concurrency Control)
๏ ์ฌ๋ฌ ๋ฒ์ ์ ํ์์คํฌํ๋ฅผ ๋น๊ตํ์ฌ ์ค์ผ์ค์ ์ง๋ ฌ๊ฐ๋ฅ์ฑ์ด ๋ณด์ฅ๋๋ ํ์์คํฌํ๋ฅผ ์ ํ
2. ํ๋ณต (Database Recovery)
โด ๋ก๊ทธ ๊ธฐ๋ฐ ํ๋ณต ๊ธฐ๋ฒ 2๏ธโฃ(REDO, UNDO)
1) ์ง์ฐ๊ฐฑ์ ํ๋ณต ๊ธฐ๋ฒ (Deferred Update)
๏ ์ปค๋ฐ์ด ๋ฐ์ํ๊ธฐ ์ ๊น์ง ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋กํ์ง ์์
๏ ์ค๊ฐ์ ์ฅ์ ๊ฐ ์๊ธฐ๋๋ผ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋ก๋์ง ์์์ผ๋ฏ๋ก UNDO๊ฐ ํ์ ์์ (REDO๋ง ์คํํ๊ณ , ๋ฏธ์คํ๋ ๋ก๊ทธ๋ UNDOํ ํ์ ์์ด ํ๊ธฐ)
2) ์ฆ์๊ฐฑ์ ํ๋ณต ๊ธฐ๋ฒ (Immediate Update)
๏ ํธ๋์ญ์
์ํ ๋์ค์๋ ๋ณ๊ฒฝ ๋ด์ฉ์ ์ฆ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋ก
๏ ์ปค๋ฐ ๋ฐ์ ์ด์ ์ ๊ฐฑ์ ์ ์์์ฑ์ด ๋ณด์ฅ๋์ง ์๋ ๋ฏธ์๋ฃ ๊ฐฑ์ ์ด๋ฏ๋ก ์ฅ์ ๋ฐ์ ์ UNDO ํ์
โต ๊ฒ์ฌ์ ํ๋ณต ๊ธฐ๋ฒ(Checkpoint Recovery)
๏ ์ฅ์ ๋ฐ์ ์ ๊ฒ์ฌ์ (checkpoint) ์ด์ ์ ์ฒ๋ฆฌ๋ ํธ๋์ญ์ ์ ํ๋ณต์์ ์ ์ธํ๊ณ ๊ฒ์ฌ์ ์ดํ์ ์ฒ๋ฆฌ๋ ํธ๋์ญ์ ์ ํ๋ณต ์์ ์ํ
โถ ๊ทธ๋ฆผ์ ํ์ด์ง ํ๋ณต ๊ธฐ๋ฒ(Shadow Paging Recovery)
๏ ํธ๋์ญ์ ์ด ์คํ๋๋ ๋ฉ๋ชจ๋ฆฌ์์ Current Page Table๊ณผ ํ๋๋์คํฌ์ Shadow Page Table ์ด์ฉ
โท ๋ฏธ๋์ด ํ๋ณต ๊ธฐ๋ฒ(Media Recovery)
๏ ๋์คํฌ์ ๊ฐ์ ๋นํ๋ฐ์ฑ ์ ์ฅ ์ฅ์น๊ฐ ์์๋๋ ์ฅ์ ๋ฐ์์ ๋๋นํ ํ๋ณต ๊ธฐ๋ฒ
โธ ARIES ํ๋ณต ๊ธฐ๋ฒ (Algorithms for Recovery and Isolation Exploiting Semantics)
๏ ๋ถ์๋จ๊ณ → REDO๋จ๊ณ → UNDO๋จ๊ณ
Section 2. ๋ฐ์ดํฐ ์ ํ
1. ETL(Extraction, Transformation, Loading) (migration๊ณผ ์ฐ๊ด)
โด ETL ๊ฐ๋
๏ ๊ธฐ์กด์ ์์ฒ ์์คํ ์์ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถ(Extraction) ํ์ฌ ๋ชฉ์ ์์คํ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ ํฉํ ํ์๊ณผ ๋ด์ฉ์ผ๋ก ๋ณํ(Transformation) ํ ํ, ๋ชฉ์ ์์คํ ์ ์ ์ฌ(Loading) ํ๋ ์ผ๋ จ์ ๊ณผ์
โต ETL ๊ธฐ๋ฅ
๏ ์ถ์ถ(Extraction) : ํ๋ ๋๋ ๊ทธ ์ด์์ ๋ฐ์ดํฐ ์์ค๋ก๋ถํฐ ๋ฐ์ดํฐ ํ๋
๏ ๋ณํ(Transformation) : ๋ฐ์ดํฐ ํด๋ ์ง, ํ์ ๋ณํ ๋ฐ ํ์คํ, ๋ฐ์ดํฐ ํตํฉ
๏ ์ ์ฌ(Load) : ๋ณํ ๋จ๊ณ์ ์ฒ๋ฆฌ๊ฐ ์๋ฃ๋ ๋ฐ์ดํฐ๋ฅผ ๋ชฉํ ์์คํ
์ ์ ์ฌ