#1 ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ธฐ์ด
by JiwonDev
1. ๋ฐ์ดํฐ๋ฒ ์ด์ค(DB)์ DBMS
์ปดํจํฐ์ ์ฒด๊ณ์ ์ผ๋ก ์ ์ฅํ ๋ฐ์ดํฐ์ ๋ชจ์์ ๋ฐ์ดํฐ๋ฒ ์ด์ค(Database)๋ผ ํ๋ฉฐ, ์ด๋ฅผ ๊ด๋ฆฌํ๋ ์์คํ ์ DBMS(DataBase Management System)์ด๋ผ ํ๋ค. ๋ณดํต DBMS๊ฐ ์์ด์ผ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ด๋ฆฌํ ์ ์์ผ๋ฏ๋ก ๋ณดํต ๋ ์ฉ์ด๋ ๊ตฌ๋ถํ์ง ์๊ณ ๊ฐ์ ์๋ฏธ๋ก ์ฌ์ฉ๋๋ค.
2. ํ์ผ ์์คํ ๊ณผ ๋ฐ์ดํฐ๋ฒ ์ด์ค(DBMS)์ ๋น๊ต
๋จ์ํ ์ปดํจํฐ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋๊ฒ DB๋ผ๋ฉด, ์ฐ๋ฆฌ๊ฐ ๋ง๋ ๋ฉ๋ชจ์ฅ์ด๋ ์ด์์ฒด์ ์์ฒด์ ํ์ผ์์คํ ๋ DB๋ผ๊ณ ๋ถ๋ฌ๋ ์๊ด์๋๊ฒ ์๋๊น?
- ํ์ผ ์์คํ ์ ๋ฐ์ดํฐ ํ์ผ์ ์ปดํจํฐ ๋์คํฌ์ ์ ์ฅํ๋ ์์คํ ์ด๋ค. ์ค๋ณต ๋ฐ์ดํฐ๊ฐ ๋ง์ด ๋ฐ์ํ๊ณ , ๋ฐ์ดํฐ์ ๊ด๊ณ๊ฐ ์ ํ์์ง ์๊ธฐ์ ์ผ๊ด์ฑ์ด ๋จ์ด์ง๋ฉฐ ๋ณด์, ๋ฐฑ์ , ๋ณต๊ตฌ๋ฑ์ ์ถ๊ฐ์์ ์ด ์ด๋ ต๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๊ทธ๋ฌํ ํ์ผ ์์คํ ์ ๋จ์ ์ ๋ณด์ํ๊ณ ๋ฐ์ดํฐ์ ๊ด๊ณ ๋ชจ๋ธ๋ง, ๋ฌด๊ฒฐ์ฑ ๊ฒ์ฆ, ๋ค์์ฌ์ฉ์์ ๋์์ฑ ์ ์ด, ์ฑ๋ฅ๋ฑ ๋ฐ์ดํฐ๋ฅผ ์ฒด๊ณ์ ์ผ๋ก ๊ด๋ฆฌํ๋๋ฐ ํนํ๋์ด์๋ ์์คํ ์ด๋ค.
์์ ๋ DB์ธ๊ฐ์?
์์ ๋ DB์ ๊ธฐ๋ฅ์ ์ผ๋ถ ์ง์ํ๊ธฐ๋ ํ๋ค. ํ์ง๋ง ์ผ๋ฐ์ ์ธ DB(RDBMS)์๋ ๋ง์ด ๋ค๋ฅด๋ค.
Spread Sheet (์์ ) | DataBase (๊ด๊ณํ RDBMS) |
GUI ์ํํธ์จ์ด ์ ํ๋ฆฌ์ผ์ด์ ์ด๋ค | SQL๊ณผ ๊ฐ์ ์ง์ ์ธ์ด(query language)๋ฅผ ์ฌ์ฉํด ์ก์ธ์คํ๋ ๋ฐ์ดํฐ ์คํ ์ด(data store)๋ค |
ํ(row)๊ณผ ์ด(column)์ ํ์์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ค | ๊ท์น(rule)๊ณผ ๊ด๊ณ(relationship)๋ก ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์กฐํํ๋ค |
์ ๋ณด๋ฅผ ์ (cell)์ ์กฐ์งํ(organize)ํ๋ค | ์ ๋ณด๋ฅผ ๋ณตํฉ์ ์ธ ์ปฌ๋ ์ (Entity)์ ์กฐ์งํํ๋ค |
์ ํ์ ์ธ ์์ ๋ฐ์ดํฐ์ ๋ํ ์ก์ธ์ค๋ฅผ ์ ๊ณตํ๋ค(๋ณดํต 100๋ง๊ฑด์ดํ) | ๋๋์ ๋ฐ์ดํฐ์ ๋ํ ์ก์ธ์ค๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ์ ๊ณตํ๋ค |
์๋์ผ๋ก ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ๋ ฅํ๋ค | CRUD๋ก ์๊ฒฉํ๊ณ ์ผ๊ด์ ์ธ ๋ฐ์ดํฐ ์ ๋ ฅ๋ง ๊ฐ๋ฅํ๋ค. |
์ผ๋ฐ์ ์ผ๋ก ํ ๋ฒ์ ํ ๋ช ์ ์ฌ์ฉ์ | ๋ค์ค ์ฌ์ฉ์ ์ ๊ทผ์ ๊ธฐ๋ณธ์ผ๋ก ๊ตฌ์ฑ๋์ด์ ธ์๋ค. |
์ฌ์ฉ์์ ์ํด ํต์ ๋๋ค | ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ (database management system)์ ์ํด ์ฒด๊ณ์ ์ผ๋ก ๋ฐ์ดํฐ๊ฐ ํต์ ๋๋ค |
3. ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฉ์ด
- ๋น์ ํ ๋ฐ์ดํฐ(Unstructured data) - ๊ฐ๊ณต๋์ง ์์ ๋ฐ์ดํฐ๋ฅผ (๊ธ, ์์, ๋น๋์ค๋ฑ ๋ชจ๋ ๊ฒ) ์๋ฏธํ๋ค.
- ์ ํ, ๋ฐ์ ํ ๋ฐ์ดํฐ(Structured data) - ํ
์ด๋ธ์ด๋ ๊ด๊ณ๋ฅผ ์ ์ํด ์ฌ์ฉํ๊ธฐ ์ข๊ฒ ๋ถ๋ฅ, ๊ฐ๊ณต๋ ๋ฐ์ดํฐ๋ฅผ ์๋ฏธํ๋ค. ์ฐธ๊ณ ๋ก HTML ๊ฐ์ด ์ฝ๊ฐ๋ง ๊ฐ๊ณต๋ ๋ฐ์ดํฐ๋ฅผ ๋ฐ์ ํ (Semi Structured) ๋ฐ์ดํฐ๋ผ๊ณ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค.
- ํธ๋์ญ์
(Transaction)์ DB์ ์ํ๋ฅผ ๋ณํ์ํค๋ ํ๋์ ์์
๋จ์ (๋๋ ํ๋ฒ์ ๋ชจ๋ ์ํํด์ผํ ์ฐ์ฐ๋ค)์ ์๋ฏธํ๋ค. ACID ์์น์ ๊ฐ์ง๋ค
ํธ๋์ญ์ ์ '๊ฑฐ๋' ๋ผ๋ ์๋ฏธ๋ก ์ํ์์ ์ฌ์ฉํ๋ ๊ทธ ๊ฑฐ๋๊ฐ ๋ง์ต๋๋ค.
์ํ DB ์์คํ ์ ๋ง๋ ๋ค๊ณ ๊ฐ์ ํด๋ด ์๋ค.
1. A์ํ์์ B์ํ์ผ๋ก ์ก๊ธํฉ๋๋ค.
2. A์ํ์์ ์ก๊ธ์ด ์ฑ๊ณตํ์๊ณ , B์ํ์์ ๋ฐ๋ ์์ค ์ค๋ฅ๊ฐ ๋ฐ์ํ์ฌ ์ ๊ธ๋ฐ์ง ๋ชปํ์ต๋๋ค.
์ด๋ฅผ ๋ฌธ์ ์์ด ๋ณต๊ตฌํ๊ธฐ ์ํด์ ์ด๋ป๊ฒ ํด์ผํ ๊น์? A์ ์ฐ๋ฝ์ ๋ค์ํด์ ํด๋น๊ฑฐ๋๋ฅผ ์ทจ์ํ๊ณ , ์ค๋ฅ๊ฐ ํด๊ฒฐ ๋ ๋ค์ ์ ๊ธ๋๋ฉด ์๋๋ B์ ์ ๊ธ๋๋๋ผ๋ ๋ฌด์ํด๋ผ๊ณ ๋ ์๋ ค์ผํ ๊น์?
์ด๋ฌํ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ณ ๋ฐ์ดํฐ์ ์์ ์ฑ, ๋ฌด๊ฒฐ์ฑ์ ํ๋ณดํ๋ ๋ฐฉ๋ฒ์ด 'ํธ๋์ญ์ ' ๋จ์ ์ฒ๋ฆฌ์ ๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค์์๋ ๊ฐ๊ฐ์ ์์ ์ 'ํธ๋์ญ์ ' ๋จ์๋ก ๊ด๋ฆฌํ๋ฉฐ ํธ๋์ญ์ ์ด ์ ์ ์๋ฃ๋์ง์์๋ค๋ฉด ์์ ํ๋ ๊ณผ์ ๋ค์ ์ ๋ถ ์์ํ๋ก ๋๋๋ฆฝ๋๋ค. (ํ ํธ๋์ญ์ ์์ ์ผ๋ถ๋ง ์๋ฃ๋์ง ์์ต๋๋ค.)
Atomicity(์์์ฑ) - ๋ ์ด์ ์์ ๋จ์๋ก ์ชผ๊ฐค ์ ์๋ค.
- ํ ํธ๋์ญ์ ๋ด์ ๋ชจ๋ ๋ช ๋ น์ ๋ฐ๋์ ์๋ฒฝํ ์ํ๋์ด์ผ ํ๋ฉฐ, ๋ชจ๋๊ฐ ์๋ฒฝํ ์ํ๋์ง ์๊ณ ์ด๋ํ๋๋ผ๋ ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ฉด ํธ๋์ญ์ ์ ๋ถ๊ฐ ์ทจ์๋์ด์ผ ํ๋ค. ๋ถ๋ถ ์๋ฃ๋ ๋ถ๊ฐ๋ฅํ๋ค.
- ๋ณดํต ํธ๋์ญ์ ์ฑ๊ณต ์ฐ์ฐ์ Commit(์ปค๋ฐ), ์คํจ ์ฐ์ฐ์ Rollback(๋๋ Aborted) ๋ผ ๋ถ๋ฅธ๋ค.
Consistency(์ผ๊ด์ฑ) - ์ธ์ ๋ ๊ฐ์ ์ ๋ ฅ์๋ ๊ฐ์ ๊ฒฐ๊ณผ๊ฐ ๋์์ผํ๋ค.
- ํธ๋์ญ์ ์ด ๊ทธ ์คํ์ ์ฑ๊ณต์ ์ผ๋ก ์๋ฃํ๋ฉด ์ธ์ ๋ ์ผ๊ด์ฑ ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ํ๋ก ๋ณํํ๋ค.
- ์์คํ ์ด ๊ฐ์ง๊ณ ์๋ ๊ณ ์ ์์๋ ํธ๋์ญ์ ์ํ ์ ๊ณผ ํธ๋์ญ์ ์ํ ์๋ฃ ํ์ ์ํ๊ฐ ๊ฐ์์ผ ํ๋ค.
Isolation(๋ ๋ฆฝ์ฑ,๊ฒฉ๋ฆฌ์ฑ) - ๊ฐ๊ฐ์ ํธ๋์ญ์ ์ ๋ ๋ฆฝ์ ์ด๋ค. ์คํ ์ค ์๋ก ์ํฅ๋ผ์น์ง ์๋๋ค.
- ๋ ์ด์์ ํธ๋์ญ์ ์ด ๋์์ ๋ณํ ์คํ๋๋ ๊ฒฝ์ฐ ์ด๋ ํ๋์ ํธ๋์ญ์ ์คํ์ค์ ๋ค๋ฅธ ํธ๋์ญ์ ์ ์ฐ์ฐ์ด ๋ผ์ด๋ค ์ ์๋ค.
- ์ํ์ค์ธ ํธ๋์ญ์ ์ ์์ ํ ์๋ฃ๋ ๋๊น์ง ๋ค๋ฅธ ํธ๋์ญ์ ์์ ์ํ ๊ฒฐ๊ณผ๋ฅผ ์ฐธ์กฐํ ์ ์๋ค.
Durablility(์์์ฑ,์ง์์ฑ) - ๋ฐ์ดํฐ๋ ์๊ตฌ์ ์ผ๋ก ์ ์ฅ๋๋ค.
- ์ฑ๊ณต์ ์ผ๋ก ์๋ฃ๋ ํธ๋์ญ์ ์ ๊ฒฐ๊ณผ๋ ์์คํ ์ด ๊ณ ์ฅ๋๋๋ผ๋ ์๊ตฌ์ ์ผ๋ก ๋ฐ์๋์ด์ผ ํ๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค(DB)๋ ํธ๋์ญ์ ์ ์ธ๋ถ ์ฌํญ์ ๊ธฐ๋กํ๋ ๊ฒ๊ณผ ๊ฐ์ด ๋ฐ์ดํฐ๋ฅผ ์บก์ฒํ๊ณ ์ ์ฅํ๋ ๋ฐ ์ฌ์ฉํ๋ค.
- ETL์ ์ถ์ถ(Extract), ๋ณํ(Transform), ๋ก๋(Load)๋ฅผ ์๋ฏธํ๋ฉฐ ์ฌ๋ฌ ์กฐ์ง์์ ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ค์ ์ผ๊ด์ฑ์๊ฒ DB, Data Lake, Data Warehouse ๋ฑ์ ๊ฒฐํฉํ๊ธฐ ์ํด ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ๊ณผ์ ์ด๋ค.
- ๋ฐ์ดํฐ ๋ ์ดํฌ(Data Lake)๋ ์ ํ, ๋ฐ์ ํ ๋ฐ ๋น์ ํ ๋ฐ์ดํฐ๋ฅผ ๋น๋กฏํ ๋ชจ๋ ๊ฐ๊ณต๋์ง ์์ ๋ค์ํ ์ข ๋ฅ์ ๋ฐ์ดํฐ๋ฅผ ํ ๊ณณ์ ๋ชจ์๋ ์ค์ ๋ฆฌํฌ์งํ ๋ฆฌ. ๋น ๋ฐ์ดํฐ๋ฅผ ํจ์จ์ ์ผ๋ก ๋ถ์ํ๊ณ ์ฌ์ฉํ๊ณ ์ ๋ค์ํ ์์ญ์ Raw ๋ฐ์ดํฐ๋ฅผ ํ ๊ณณ์ ๋ชจ์์ ๊ด๋ฆฌํ๊ณ ์ ํ๋ ๋ชฉ์ ์ด๋ค.
- ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค(DW)๋ ๋ฐ์ดํฐ ๋ถ์์ ์ํด ํน๋ณํ ์ค๊ณ๋์์ผ๋ฉฐ, ์ฌ๊ธฐ์๋ ๋๋์ ๋ฐ์ดํฐ๋ฅผ ์ฝ์ด ๋ฐ์ดํฐ ์ ๋ฐ์ ๊ฑธ์น ๊ด๊ณ์ ์ถ์ธ๋ฅผ ํ์ ํ๋ ์์ ์ด ํฌํจ๋๋ค. ๊ธฐ์กด DB์์ [๋์ถ๊ธ์ก, ์๊ธ๊ธ์ก, ์ฌ๊ณ ์๋] ์ฒ๋ผ ๊ธฐ๋ฅ ์ค์ฌ์ผ๋ก ์ ์ฅํ๋ค๋ฉด DW๋ [๊ณ ๊ฐ, ๊ฑฐ๋์ฒ] ์ฒ๋ผ ์ฃผ์ ์ค์ฌ์ผ๋ก ๋ฐ์ดํฐ๋ฅผ ๊ตฌ์ฑ, ๊ด๋ฆฌํ์ฌ ๋ถ์ํ๊ธฐ ์ฌ์ด ํํ๋ก ์ ๊ณตํ๋ค. (OLTP, ์จ๋ผ์ธ๋ถ์์ฒ๋ฆฌ)
- ๋ฐ์ดํฐ ๋งํธ(Data Mart)๋ ๊ธ์ต, ๋ง์ผํ ๋๋ ์์ ๊ณผ ๊ฐ์ ํน์ ํ ๋๋ ์ฌ์ ๋จ์์ ์๊ตฌ๋ฅผ ์ถฉ์กฑ์ํค๋ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ด๋ค. ๊ท๋ชจ๊ฐ ๋ ์๊ณ , ์ง์ค์ ์ด๋ฉฐ ๊ฐ๊ฐ์ ํ๊ณผ ๋ชฉ์ ์ ๊ฐ์ฅ ์ ๋ง๋ ๋ฐ์ดํฐ ์์ฝ์ ํฌํจํ ์ ์๋ค. ๋ฐ์ดํฐ ๋งํธ๋ ๋ฐ์ดํฐ ์จ์ดํ์ฐ์ค์ ์ผ๋ถ์ผ ์๋ ์๋ค.
4. ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ข ๋ฅ
๋๋ถ๋ถ ํ ์ด๋ธ ํํ์ RDBMS(๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค)๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ค. ํ์ง๋ง ์ฌ์ฉ๋ชฉ์ ์ ๋ฐ๋ผ ๊ณ์ธต(tree)ํ, ๊ทธ๋ํ(graph)ํ๋ฑ ๋ค์ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์กด์ฌํ๋ค. ๊ทผ๋์ ๋ค์ด RDBMS์ ๋ชจ๋ธ์ ๋ฒ์ด๋ SQL๋ฌธ ์์ด ์ฌ์ฉ ํ ์ ์๋ DB๋ฅผ ํตํ์ด NoSQL์ด๋ผ ๋ถ๋ฅด๊ธฐ๋ ํ๋ค. (๋ชฝ๊ณ DB, ์นด์ฐ๋๋ผ, Neo4J๋ฑ)
์ด ๊ธ์์๋ ๊ฐ์ฅ ์ค๋๋์๊ณ ๋ง์ด ์ฌ์ฉํ๋ ๊ด๊ณํ DB(RDBMS)๋ฅผ ๊ธฐ์ค์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ค๋ช ํ๋ค.
NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํน์ง์ ์ดํด๋ณด๋ฉด, ๊ธฐ์กด์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ณด๋ค ๋ ์ตํต์ฑ ์๋ ๋ฐ์ดํฐ ๋ชจ๋ธ์ ์ฌ์ฉํ๊ณ , ๋ฐ์ดํฐ์ ์ ์ฅ ๋ฐ ๊ฒ์์ ์ํ ํนํ๋ ๋งค์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค. ์ด๋ฅผ ํตํด NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋จ์ ๊ฒ์ ๋ฐ ์ถ๊ฐ ์์ ์ ์์ด์ ๋งค์ฐ ์ต์ ํ๋ ํค ๊ฐ(Key- Value)์ ์ฅ ๊ธฐ๋ฒ์ ์ฌ์ฉํ์ฌ, ์๋ต์๋๋, ์ฒ๋ฆฌ ํจ์จ ๋ฑ์ ์์ด์ ๋งค์ฐ ๋ฐ์ด๋ ์ฑ๋ฅ์ ๋ํ๋ ๋๋ค.
๋จ์ํ Kev-Value DB(Riak, Vodemort)์ ๋๋ถ์ด ๋ค์ํ ํํ์ NoSQL DB๊ฐ ์กด์ฌํฉ๋๋ค.
Wide Columnar Store(HBase, Cassandra) - ๋ฐ์ ๋ Key-Value ํํ
Document DB(MongoDB, CoughDB)- JSON, XML ๋ฐ์ดํฐ ๊ตฌ์กฐ์ฌ์ฉ
Graph DB(Neo4J, OreientDB) - ๊ทธ๋ํ ๋ชจ๋ธ ์ฌ์ฉ
• ๊ด๊ณํ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ ํ
์ด๋ธ๊ฐ์ ์กฐ์ธ ๊ธฐ๋ฅ ์์
• ์ง์ ํ๋ก๊ทธ๋๋ฐ์ ํ๋ ๋ฑ์ ๋นSQL ์ธํฐํ์ด์ค๋ฅผ ํตํ ๋ฐ์ดํฐ ์ก์ธ์ค
• ๋๋ถ๋ถ ์ฌ๋ฌ ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์๋ฒ๋ฅผ ๋ฌถ์ด์(ํด๋ฌ์คํฐ๋ง) ํ๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ตฌ์ฑ
• ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์๋ ์ง์ํ๋ Data์ฒ๋ฆฌ ์๊ฒฐ์ฑ(Transaction ACID ์ง์) ๋ฏธ๋ณด์ฅ
• ๋ฐ์ดํฐ์ ์คํค๋ง์ ์์ฑ๋ค์ ๋ค์ํ๊ฒ ์์ฉ ๋ฐ ๋์ ์ ์ (Schema-less)
• ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ค๋จ ์๋ ์๋น์ค์ ์๋ ๋ณต๊ตฌ ๊ธฐ๋ฅ์ง์
• ๋ค์๊ฐ Open Source๋ก ์ ๊ณต
์ค๋ช
๋๋ฆฐ ์ฉ์ด๋ค์ด ๋ค์ ์ด๋ ต์ต๋๋ค๋ง, ์ ๋ฆฌํด๋ณด๋ฉด, NoSQL์ ์ด๊ณ ์ฉ๋ ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฑ ์ฑ๋ฅ์ ํนํ๋ ๋ชฉ์ ์ ์ํด, ๋น๊ด๊ณํ ๋ฐ์ดํฐ ์ ์ฅ์์, ๋น๊ตฌ์กฐ์ ์ธ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ ์ํ ๋ถ์ฐ ์ ์ฅ ์์คํ
์ด๋ผ๊ณ ๋ณผ ์ ์์ต๋๋ค.
5. SQL
Structured Query Language, ์ ํ ์ง์ ์ธ์ด
๋ง ๊ทธ๋๋ก ์ ํํ๋ ๋ฐ์ดํฐ(DB)๋ฅผ ๋ค๋ฃจ๊ธฐ์ํด ์ฌ์ฉํ๋ ์ธ์ด์ด๋ค. ์ด๋ ํ DB๋ CRUD์กฐ์(Create, Read, Update, Delete)๊ฐ ์กด์ฌํ๋ฉฐ ํ๋ก๊ทธ๋จ๋ง๋ค ๋ช ๋ น์ด๋ ๋ค๋ฅด์ง๋ง ๋ณดํต ์๋์ ๊ฐ์ด 3๊ฐ์ง๋ก ๋๋์ด์ง๋ค.
DML (Data Manipulation Language, ๋ฐ์ดํฐ ์กฐ์)
- INSERT, DELETE, UPDATE, SELECT ๋ฌธ์ด ์ฌ๊ธฐ์ ํด๋น๋๋ค. ์ถ๊ฐ, ์ญ์ , ๊ฐฑ์ , ์กฐํ ๋ฑ
DDL (Data Definition Language, ๋ฐ์ดํฐ ์ ์)
- CREATE, ALTER, DROP, TRUNCATE ๋ฌธ์ด ์ฌ๊ธฐ์ ํด๋น๋๋ค. ์์ฑ, ๋ณ๊ฒฝ, ์ ๊ฑฐ ๋ฑ
DCL (Data Control Language, ๋ฐ์ดํฐ ์ ์ด)- GRANT, REVOKE ๋ฌธ์ด ์ฌ๊ธฐ์ ํด๋น๋๋ค. ๊ฐ์ฒด์๊ฒ ์ ๊ทผ ๊ถํ์ ์ฃผ๊ณ ํ์ํ๋ ๋ช ๋ น์ด.(๋ณด์, ๋ฌด๊ฒฐ์ฑ)
๊ทธ ์ธ, ํธ๋์ญ์ ์ ์ ์ดํ๋ ์ธ์ด(TCL)์ธ COMMIT, ROLLBACK, SAVEPOINT ๋ฑ์ด ์๋ค.
'๐ฑโ๐ป์ ๊ณต ๊ณต๋ถ > ๋ฐ์ดํฐ๋ฒ ์ด์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
#3 SQL (0) | 2021.07.04 |
---|---|
#2 ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค (0) | 2021.06.24 |
๋ธ๋ก๊ทธ์ ์ ๋ณด
JiwonDev
JiwonDev