DBMS
๐ฆ ์ฐธ๊ณ ํ ๋ฌธ์
- [DB ๊ธฐ์ด]DBMS ๊ฐ๋ ๊ณผ ์ข ๋ฅ ๋ฐ ์ฅ๋จ์ ๋ถ์ https://coding-factory.tistory.com/78
- Chap01 - DBMS & SQL ๊ฐ์ https://excelsior-cjh.tistory.com/173
DataBase Management System. ์ค์ฌ์ DBMS. ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์กฐ์ํ๋ ๋ณ๋์ ์ํํธ์จ์ด๋ฅผ ๊ฐ๋ฆฌํค๋ฉฐ, ์์ฉ ํ๋ก๊ทธ๋จ๋ค์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ๊ณต์ ํ๋ฉฐ ์ฌ์ฉํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ๋ค. SQL๊ณผ CLI, GUI ๋ฑ ๋ค์ํ ์ธํฐํ์ด์ค๋ ์ ๊ณตํ๋ค.
DBMS ๋ถ๋ฅ
DBMS๋ ํฌ๊ฒ ๊ณ์ธตํ(Hierachical), ๋งํ(Network), ๊ด๊ณํ(Relational) DBMS ๋ฑ์ผ๋ก ๋ถ๋ฅ๋๋ค.
- ๊ณ์ธตํ DBMS
- 1960๋ ๋์ ์ฒ์์ผ๋ก ๋์จ DBMS ๊ฐ๋ ์ผ๋ก, ์๋ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ด ๋ฐ์ดํฐ์ ๋ ผ๋ฆฌ์ ๊ตฌ์กฐ๊ฐ ํธ๋ฆฌ ํํ์ด๋ฉฐ, 1:N ๊ด๊ณ๋ฅผ ๊ฐ๋๋ค. ์ฆ, ์์ ํ ์ด๋ธ์ ์ค์ง ํ๋์ ๋ถ๋ชจ ํ ์ด๋ธ์ ํํด ๊ด๊ณ๋ฅผ ๋งบ์ ์ ์๋ค.
์ด๋ฏธ์ง ์ถ์ฒ: https://excelsior-cjh.tistory.com/173
- ๋งํ DBMS
- ๋งํ DBMS๋ ๊ณ์ธตํ DBMS์ ๋จ์ ์ ๋ณด์ํ๊ธฐ ์ํด 1970๋ ๋์ ๋ฑ์ฅํ์ผ๋ฉฐ, 1:1, 1:N, N:N ๊ด๊ณ๊ฐ ์ง์๋์ด ํจ๊ณผ์ ์ด๊ณ ๋น ๋ฅด๊ฒ ๋ฐ์ดํฐ๋ฅผ ์ถ์ถํ๋ ๊ฒ์ด ๊ฐ๋ฅํด์ก๋ค. ํ์ง๋ง ์งํฉ ๊ตฌ์กฐ๋ฅผ ๋ฐ๋ผ๊ฐ๊ธฐ ์ํด์ ์ฌ์ฉ์๊ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ตฌ์กฐ๋ฅผ ์ ์์์ผ ํ๋ค๋ ๋จ์ ์ด ์๋ค.
์ด๋ฏธ์ง ์ถ์ฒ: https://excelsior-cjh.tistory.com/173
- ๊ด๊ณํ DBMS
- *๋ฐ์ดํฐ๋ฒ ์ด์ค๋
ํ ์ด๋ธ
์ด๋ผ ๋ถ๋ฆฌ๋ ์ต์ ๋จ์๋ก ๊ตฌ์ฑ๋์ด ์์ผ๋ฉฐ, ์ด ํ ์ด๋ธ์ ํ๋ ์ด์์ ์ด๋ก ๊ตฌ์ฑ๋์ด ์๋ค. RDBMS์์ ๋ชจ๋ ๋ฐ์ดํฐ๋ ํ ์ด๋ธ์ ์ ์ฅ๋๋ค.
์ด๋ฏธ์ง ์ถ์ฒ: https://excelsior-cjh.tistory.com/173
DBMS ์ข ๋ฅ ๋ฐ ์ฅ๋จ์ ๋ถ์
![แแ ณแแ ณแ แ ตแซแแ ฃแบ 2020-07-28 แแ ฉแแ ฅแซ 12.21.52](/Users/soo/Library/Application Support/typora-user-images/แแ ณแแ ณแ แ ตแซแแ ฃแบ 2020-07-28 แแ ฉแแ ฅแซ 12.21.52.png)
Oracle Database
Oracle์์ ํ๋งคํ๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ด๋ฆฌ ์์คํ . ๋ง์ ๋๊ธฐ์ ์์ ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉ ์ค์ด๋ค. ๊ธฐ์ ์์ฅ๊ณผ ์คํ์์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ(๋ฌธ์ ๊ฐ ๋ฐ์ํ์ ๋ ์ฑ ์์์ฌ..)์์๋ ๋๋ถ๋ถ ์ค๋ผํด์ด ์ฐ์ธ๋ค.
๋น์ผ ๊ฐ๊ฒฉ์ด ๋จ์ .
MySQL
์คํ ์์ค DBMS. ์ ์์ฌ์ธ MySQLAB์ด ์ฌ ๋ง์ดํฌ๋ก์์คํ ์ฆ์ ์ธ์๋๊ณ , ์ฌ์ด ์ค๋ผํด์ ์ธ์ํ๋ฉด์ ๊ฐ์ด ๋์ด๊ฐ๋ค.
MariaDB
MySQL์ด ์ค๋ผํด๋ก ๋์ด๊ฐ ๋ค ๋ถํ์คํ ๋ผ์ด์ ์ค ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ ์คํ ์์ค DBMS. MySQLAB ์ถ์ ๊ฐ๋ฐ์๋ค์ด MariaDB ์ฌ๋จ์ ์ธ์์ ๊ฐ๋ฐํ๊ณ ์๋ค. ๊ธฐ๋ฅ์ ์ผ๋ก๋ MySQL๊ณผ ๋์ผํ๋ฉฐ ์ฑ๋ฅ์ ๋ ์ข๋ค๊ณ ํ๋ค.
Microsoft SQL Server
๋ง์ดํฌ๋ก์ํํธ์์ ๋ง๋ DBMS. ์๋์ฐ ์๋ฒ์ ๊ถํฉ์ด ์ ๋ง๋๋ค.
Microsoft Access
MS Office์ ํฌํจ๋ ๊ฐ๋ณ ์์ฉ ํ๋ก๊ทธ๋จ ํํ์ DBMS. SQL ์ธ์ด๋ฅผ ์ง์ํ๊ธด ํ์ง๋ง GUL ํ๊ฒฝ์ผ๋ก ๋ชจ๋ SQL ์ค์ ์ ํด๋ฆญ ๋ช ๋ฒ์ผ๋ก ๋์ฒดํ ์ ์๋ค.
MongoDB
๋ฌธ์์งํฅ์ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค. ์คํ์์ค๋ค.
{
_id: ObjectId("5099803df3f4948bd2f98391"),
name: { first: "Alan", last: "Turing" },
birth: new Date('Jun 23, 1912'),
death: new Date('Jun 07, 1954'),
contribs: [ "Turing machine", "Turing test", "Turingery" ],
views : NumberLong(1250000)
}
JSON Objects ํํ์ key-value ์์ผ๋ก ์ด๋ฃจ์ด์ง Document๋ก ๊ฐ์ ์ ์ฅํ๋ค. ๊ฐ Document๋ _id
๋ผ๋ ๊ณ ์ ํ ๊ฐ์ ๊ฐ๋๋ฐ, ์ด ๊ฐ์ ์๊ฐ/๋จธ์ ID/ํ๋ก์ธ์คID/์์ฐจ๋ฒํธ๋ก ๊ตฌ์ฑ๋๋ฉฐ ๊ฐ์ ๊ณ ์ ์ฑ์ ๋ณด์ฅํ๋ค.
์ด๋ฏธ์ง ์ถ์ฒ: https://poiemaweb.com/mongdb-basics
MongoDB์ ๊ตฌ์กฐ๋ฅผ ๊ทธ๋ฆผ์ผ๋ก ๋ํ๋ธ ๊ฒ์ด๋ฉฐ, Collection์ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ table๊ณผ ์ ์ฌํ ๊ฐ๋ ์ผ๋ก Document๋ค์ ์งํฉ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. Database๋ Collection์ ๋ฌผ๋ฆฌ์ ์ธ ์ปจํ ์ด๋์ด๋ค.
SQL vs. NoSQL
SQL
๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์๋ฃ๋ฅผ ์ฒ๋ฆฌํ๋ ์ฉ๋๋ก ์ฐ์ด๋ ์ธ์ด.
์ผ๋ฐ์ ์ผ๋ก ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฉฐ, ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ๋ ๋ฐ์ดํฐ ๋ชจ์์ธ ํ
์ด๋ธ
์ ๊ธฐ์ค์ผ๋ก ์ด๋ฃจ์ด์ง๋ค.
NoSQL
"๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๋ฐ์๋ SQL ์ธ์ ๋ค๋ฅธ ๋ฐฉ๋ฒ๋ ์๋ค!"
NO SQL์ด ์๋๋ผ Not Only SQL...
๋ํ์ ์ธ NoSQL์๋ MongoDB์ CouchDB๊ฐ ์๋๋ฐ, ์ด ๋ DB์์ ์ฌ์ฉํ๋ ์ฟผ๋ฆฌ ์ธ์ด๋ ์๋ก ์ ํ ๋ค๋ฅด๋ค. ๋๋ถ๋ถ์ NoSQL์ ํ ์ด๋ธ์ ์ฌ์ฉํ๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์๋์ง๋ง, BerkleyDB๊ฐ์ ๊ฒฝ์ฐ๋ NoSQL์ด๋ฉด์ ๊ด๊ณํ ํ ์ดํฐ๋ฒ ์ด์ค์ด๋ค. ์ด ์ ๋งคํ ๋ฌธ์ฅ์์ ๋๊ปด์ง๋ค์ํผ, ์์ง๊น์ง NoSQL์ ๋ด๋ ค์ง ์ ํํ ์ ์๋ ์๋ค. ํ์ง๋ง NoSQL์ด๋ผ๊ณ ๋ถ๋ฆฌ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ค์ ๋์ฒด๋ก ๋ค์๊ณผ ๊ฐ์ ๊ณตํต์ ์ธ ์ฑํฅ์ ๋ณด์ธ๋ค.
- ๋๋ถ๋ถ ํด๋ฌ์คํฐ์์ ์คํํ ๋ชฉ์ ์ผ๋ก ๋ง๋ค์ด์ก๊ธฐ ๋๋ฌธ์ ๊ด๊ณํ ๋ชจ๋ธ์ ์ฌ์ฉํ์ง ์๋๋ค. ๊ทธ๋ฌ๋ ๋ชจ๋ NoSQL ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ํด๋ฌ์คํฐ์์ ์คํ๋๋๋ก ๋ง์ถฐ์ง ๊ฒ์ ์๋๋ค. ์๋ฅผ ๋ค์ด NoSQL ๋ฐ์ดํฐ ๋ชจ๋ธ ์ค ํ๋์ธ ๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๊ด๊ณํ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋น์ทํ ๋ถ์ฐ ๋ชจ๋ธ์ ์ฌ์ฉํ๋ค.
- ์คํ ์์ค์ด๋ค. ๋น์คํ ์์ค ํ๋ก์ ํธ๋ ์๊ธด ํ์ง๋ง, ๋๋ถ๋ถ ๊ทธ๋ ๋ค.
- ๋ณดํต 21์ธ๊ธฐ ์ด๋ฐ ์น ํ๊ฒฝ์ ํ์์ ๊ธฐ์ด๋ฅผ ๋๊ณ ์์ด์, ์ด ์๊ธฐ์ ๊ฐ๋ฐ๋ ์์คํ ๋ง์ NoSQL์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค. ๋ฐ๋ผ์ ๊ทธ ์ด์ ์ ๋ง๋ค์ด์ง ODBMS(Objective Database Management System)์ NoSQL์ ํด๋นํ์ง ์๋๋ค.
- ์คํค๋ง ์์ด ๋์ํ๋ฉฐ, ๊ตฌ์กฐ์ ๋ํ ์ ์๋ฅผ ๋ณ๊ฒฝํ ํ์ ์์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ ์ฝ๋์ ์์ ๋กญ๊ฒ ํ๋๋ฅผ ์ถ๊ฐํ ์ ์๋ค.
์คํค๋ง(schema): ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์๋ฃ์ ๊ตฌ์กฐ, ์๋ฃ์ ํํ ๋ฐฉ๋ฒ, ์๋ฃ ๊ฐ์ ๊ด๊ณ๋ฅผ ํ์ ์ธ์ด๋ก ์ ์ํ ๊ตฌ์กฐ
'Development' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
REST API ํบ์๋ณด๊ธฐ (2) | 2022.02.22 |
---|---|
[2020 ์ฌ๋ฆ ํจ์ฐฝ๊ณต์ ์คํฐ๋]HTTP ํ๋กํ ์ฝ (0) | 2020.07.15 |