์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- ๋น์ฃผ๊ธฐ์ ํธ
- ๊ฐ๋ฐ์์ทจ์
- i-type
- reducible
- ์ค๋ ๋
- til
- ํฐ์คํ ๋ฆฌ์ฑ๋ฆฐ์ง
- git merge
- ํ ํฐ ๋ฒ์ค
- ๊ทธ๋ฆฌ๋ ์๊ณ ๋ฆฌ์ฆ
- ์ฃผ๊ธฐ์ ํธ
- ์์๋ฒํธ
- ์ฐ๋ถํฌdb
- ์ค๋ธ์
- tcp ํ๋กํ ์ฝ
- ํ๋ ์ ๊ตฌ์กฐ
- well known ํฌํธ
- ์ค๋ฅ์ ์ด
- IEEE 802
- mariadb
- tcp ์ธ๊ทธ๋จผํธ
- ์ค๋ฅ๊ฒ์ถ
- ๋ฐ์ดํฐ ์ ์ก
- ํญํด99
- ํ๋ก์ด๋์์
- 99ํด๋ฝ
- leetcode
- ์ฝ๋ฉํ ์คํธ์ค๋น
- xv6
- ์๋น์ค ํ๋ฆฌ๋ฏธํฐ๋ธ
- Today
- Total
Unfazedโ๏ธ๐ฏ
DB ๋ฐ์ดํฐ๋ฒ ์ด์ค - ๋ฐ์ดํฐ ํ์ด์ง ๋ฒํผ๋ง(WAL/write ahead logging, Pinning, dual paging problem) ๋ณธ๋ฌธ
DB ๋ฐ์ดํฐ๋ฒ ์ด์ค - ๋ฐ์ดํฐ ํ์ด์ง ๋ฒํผ๋ง(WAL/write ahead logging, Pinning, dual paging problem)
9taetae9 2024. 4. 21. 17:55๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ฐ์ดํฐ ๋ธ๋ก์ ์ธ๋ฉ๋ชจ๋ฆฌ ๋ฒํผ๋ฅผ ์ ์งํ๋ค. ๋ฐ์ดํฐ ํ์ด์ง ๋ฒํผ๋ง์ ๋ํด ์์๋ณด์.
1. ๋ฐ์ดํฐ ๋ธ๋ก์ ๋ฒํผ ๊ด๋ฆฌ
์๋ก์ด ๋ธ๋ก์ด ํ์ํ ๋, ๋ฒํผ๊ฐ ๊ฐ๋ ์ฐผ๋ค๋ฉด ๊ธฐ์กด์ ๋ธ๋ก ์ค ํ๋๋ฅผ ๋ฒํผ์์ ์ ๊ฑฐํด์ผ ํ๋ค.
์ ๊ฑฐ๋ ๋ธ๋ก์ด ์
๋ฐ์ดํธ๋ ๊ฒฝ์ฐ, ๊ทธ ๋ธ๋ก์ ๋์คํฌ๋ก ์ถ๋ ฅ๋์ด์ผ ํ๋ค.
2. ์ฐ๊ธฐ ์ ํ ๋ก๊น
(WAL, Write-Ahead Logging)
์ปค๋ฐ๋์ง ์์ ์
๋ฐ์ดํธ๋ฅผ ๊ฐ์ง ๋ธ๋ก์ด ๋์คํฌ๋ก ์ถ๋ ฅ๋ ๊ฒฝ์ฐ, ํด๋น ์
๋ฐ์ดํธ์ ๋ํ ์ธ๋(undo) ์ ๋ณด๋ฅผ ํฌํจํ ๋ก๊ทธ ๋ ์ฝ๋๊ฐ ๋จผ์ ์์ ์ ์ธ ์ ์ฅ์์ ๋ก๊ทธ์ ์ถ๋ ฅ๋๋ค. (๋ฐ์ดํฐ์ ์ผ๊ด์ฑ์ ๋ณด์ฅํ๊ธฐ ์ํจ)
3. ๋ธ๋ก์ ๊ณ ์ (Pinning)
๋ธ๋ก์ด ๋์คํฌ๋ก ์ถ๋ ฅ๋ ๋๋ ํด๋น ๋ธ๋ก์ ์
๋ฐ์ดํธ๊ฐ ์งํ ์ค์ด์ด์๋ ์ ๋๋ค(๋ธ๋ก์ ๊ณ ์ ๋์ด์ผ ํจ).
์ด๋ ๋ค์๊ณผ ๊ฐ์ ๋ฐฉ์์ผ๋ก ๋ณด์ฅ๋ ์ ์๋ค.
1) ๋ฐ์ดํฐ ํญ๋ชฉ์ ์ฐ๊ธฐ ์ ์ ํธ๋์ญ์
์ ํด๋น ๋ฐ์ดํฐ ํญ๋ชฉ์ ํฌํจํ๋ ๋ธ๋ก์ ๋ํด ๋ฐฐํ์ ์ ๊ธ์ ํ๋
2) ์ฐ๊ธฐ๊ฐ ์๋ฃ๋๋ฉด ์ ๊ธ์ ํด์
์งง์ ๊ธฐ๊ฐ ๋์ ์ ์ง๋๋ ์ด๋ฌํ ์ ๊ธ์ ๋์น(latches)๋ผ๊ณ ๋ถ๋ฅธ๋ค.
4. ๋ฒํผ์ ๊ตฌํ
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฒํผ๋ 1) ์ค์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ์์ฝ๋ ์์ญ(๋จ์ : ์ ์ฐ์ฑ ์ ํ, ํ์์ฌํญ ๋ณ๊ฒฝ) ๋๋ 2) ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ๊ตฌํ(๋จ์ : ์ด์ค ํ์ด์ง ๋ฌธ์ )๋ ์ ์๋ค.
์์ฝ๋ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ๋ฒํผ๋ฅผ ๊ตฌํ์ ๋จ์
๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฌ์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฒํผ์ ์ดํ๋ฆฌ์ผ์ด์
๊ฐ์ ๋ถํ ๋์ด, ์ ์ฐ์ฑ์ด ์ ํ๋จ.
ํ์์ฌํญ์ด ๋ณ๊ฒฝ๋ ์ ์์ : OS์ ์ธ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ด๋ป๊ฒ ๋๋์ง ๊ฐ์ฅ ์ ์์ง๋ง, ๋ฉ๋ชจ๋ฆฌ ๋ถํ ์ ๋์ ์ผ๋ก ๋ณ๊ฒฝํ ์๋ ์๋ค.
5. ์ด์ค ํ์ด์ง ๋ฌธ์ (Dual Paging Problem)
๊ฐ์ ๋ฉ๋ชจ๋ฆฌ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฒํผ๊ฐ ๊ตฌํ๋์ด ์์ผ๋ ์๋์ ๊ฐ์ ๋จ์ ์ด ์๋ค.
- ์ด์ ์์คํ
์ด ์์ ๋ ํ์ด์ง๋ฅผ ์ซ๊ฒจ๋ด์ผ ํ ๋, ํด๋น ํ์ด์ง๋ ๋์คํฌ์ ์ค์ ๊ณต๊ฐ์ ์ฐ์ฌ์ง๋ค.
- ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ๋ฒํผ ํ์ด์ง๋ฅผ ๋์คํฌ์ ์ฐ๊ธฐ๋ก ๊ฒฐ์ ํ์ ๋, ๋ฒํผ ํ์ด์ง๊ฐ ์ค์ ๊ณต๊ฐ์ ์์ ์ ์์ผ๋ฉฐ, ์ค์ ๊ณต๊ฐ์์ ๋์คํฌ๋ก ๋ค์ ์ฝ์ด์ผ ํ๋ฏ๋ก ์ถ๊ฐ I/O๊ฐ ๋ฐ์ํ๋ค.
์ด์ค ํ์ด์ง์ ํผํ ์ ์์ง๋ง, ์ผ๋ฐ์ ์ธ ์ด์ ์์คํ
์ ์ด๋ฌํ ๊ธฐ๋ฅ์ ์ง์ํ์ง ์๋๋ค.
- OS๊ฐ ๋ฒํผ์์ ํ์ด์ง๋ฅผ ์ถ๋ฐฉํ ํ์๊ฐ ์์ ๋, ๋ฐ์ดํฐ๋ฒ ์ด์ค๊ฐ ์ ์ด๊ถ์ ๋๊ฒจ๋ฐ์
์์ ๋ ๊ฒฝ์ฐ ์ค์ ๊ณต๊ฐ์ด ์๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ํ์ด์ง๋ฅผ ์ถ๋ ฅ(๋ก๊ทธ ๋ ์ฝ๋๋ฅผ ๋จผ์ ์ถ๋ ฅ)ํ๋ค.
OS๊ฐ ์ฌ์ฉํ ์ ์๋๋ก ๋ฒํผ์์ ํ์ด์ง๋ฅผ ํด์ ํด์ผ ํ๋ค.