์ง์ ์ ์ฅ์ฅ์น (DASA : Direct Access Storage Device)
์๊ธฐ ๋ฌผ์ง๋ก ์ด๋ฃจ์ด์ง ์ฌ๋ฌ ๊ฐ์ ๋์คํฌ ์๋ฐ์ผ๋ก ์ด๋ฃจ์ด์ ธ ์๊ณ , ๊ฐ ๋ฉด๋ง๋ค ํ๋ /๊ธฐ๋ก ํค๋๊ฐ ์์ต๋๋ค.
์ ๋ณด๋ ๋์คํฌ ์๋ฐ ์์ ํธ๋์ ๋ฐ๋ผ ์ ์ฅ๋๋ฉฐ, ๊ฐ์ ์ง๋ฆ์ ๊ฐ๋ ํธ๋๋ค์ ์ค๋ฆฐ๋(cylinder)๋ผ๊ณ ๋ถ๋ฆ ๋๋ค.
ํ ํธ๋์ ์ฉ๋์ ๋งค์ฐ ์ปค์ ์ฌ๋ฌ ๊ฐ์ ์นํฐ๋ค๋ก ๊ตฌ๋ถ๋๊ณ , ํ ๊ฐ ์ด์์ ์นํฐ๋ค๋ก ๋ธ๋ก์ด ์ด๋ฃจ์ด์ง๋๋ค.
ํ๊ตฌ์๊ฐ (seek time)
ํ๊ตฌ์๊ฐ์ ํค๋๊ฐ ์ํ๋ ํธ๋(์ค๋ฆฐ๋)๊น์ง ์ด๋ํ๋๋ฐ ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
ํค๋๊ฐ ์์ง์ด๊ธฐ ๋๋ฌธ์ ๊ฐ์ฅ ์๊ฐ์ด ๋ง์ด ๊ฑธ๋ฆฝ๋๋ค.
๋ฐ๋ผ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ฑ๋ฅ์ ๊ฐ์ ํ๊ธฐ ์ํด์๋ ํ๊ตฌ์๊ฐ์ ์ค์ฌ์ผ ํ๊ณ ,
ํ๊ตฌ์๊ฐ์ ์ค์ด๊ธฐ ์ํด์๋ ๋์คํฌ I/O๋ฅผ ์ต์ํํด์ผ ํฉ๋๋ค.
๋ํ, ํค๋์ ์์ง์์ ์ต์ํํ๊ธฐ ์ํด ์ธ๊ทผ์ ํธ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ธฐ๋ณด๋ค ํ๋์ ์ค๋ฆฐ๋์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ๊ฒ์ด ๋ ๋น ๋ฅด๊ฒ ๋ฐ์ดํฐ์ ์ ๊ทผํ ์ ์๋ ๋ฐฉ๋ฒ์ ๋๋ค.
ํ์ ์ง์ฐ์๊ฐ (rotational delay)
ํ์ ์ง์ฐ์๊ฐ์ ํค๋๊ฐ ์ํ๋ ํธ๋๊น์ง ์์ง์ธ ํ ๊ทธ ํธ๋์์ ์ํ๋ ์นํฐ(๋ธ๋ก)์ด ํค๋ ์๋์ ํ์ ํ์ฌ ์ฌ ๋๊น์ง ๊ฑธ๋ฆฌ๋ ์๊ฐ์ ๋๋ค.
๋ฐ์ดํฐ ์ ๊ทผ์๊ฐ (data access time)
๋ฐ์ดํฐ ์ ๊ทผ์๊ฐ = ํ๊ตฌ์๊ฐ + ํ์ ์ง์ฐ์๊ฐ + ๋ฐ์ดํฐ ์ ์ก์๊ฐ
๋ฐ์ดํฐ ์ ์ก์๊ฐ = ๋ฐ์ดํฐ๋ฅผ ๋์คํฌ ์ฅ์น๋ก๋ถํฐ ์ปดํจํฐ ๋ฉ๋ชจ๋ฆฌ๋ก ์ ์กํ๋ ์๊ฐ
ํ๋์ ๋ฉ๋ชจ๋ฆฌ
HDD
- ๋นํ๋ฐ์ฑ ๋ฐ์ดํฐ ์ ์ฅ์
- ๊ธฐ๊ณ์ ์ธ ํ์ ๋์คํฌ๋ฅผ ํตํด ์ ์ถ๋ ฅ, ์์ฐจ์ ์ธ ํ์์์ ์ฅ์
- ์์์ ์ธ(random) ํ์์์๋ ์น๋ช ์ ์ธ ๋จ์
SSD
- ๋นํ๋ฐ์ฑ ๋ฐ์ดํฐ ์ ์ฅ์
- ๋ฎ์ด์ฐ๊ธฐ ์ฐ์ฐ์ด ๋ถ๊ฐ๋ฅ, ์ง์ฐ๊ธฐ ์ฐ์ฐ ํ ์ฐ๊ธฐ ์ฐ์ฐ ์ํํด์ผ ํจ (Update-Out-Place)
- ์ฝ๊ธฐ๋ HDD์ ๋นํด ์์ฒญ๋๊ฒ ๋น ๋ฅด์ง๋ง, ์ฐ๊ธฐ ์ฐ์ฐ์ ๋งค์ฐ ๋๋ฆฌ๋ค.
- ์ฐ๊ธฐ ํ์๊ฐ ์ ํ๋จ -> ๋ธ๋ก ์๋ช ์ด ์์ง๋๋ ๋ฌธ์ ๋ฐ์ ๊ฐ๋ฅ
ํ์ผ ์กฐ์ง ๋ฐฉ๋ฒ
ํ์ผ ์กฐ์ง(File Organization)์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฌผ๋ฆฌ์ ์ ์ฅ ๋ฐฉ๋ฒ์ ๋๋ค.
ํ์ผ ์กฐ์ง ๋ฐฉ๋ฒ์ ์๋์ ๊ฐ์ด ๊ตฌ๋ถํ ์ ์์ต๋๋ค.
- ์์ฐจ ๋ฐฉ๋ฒ
- ์ํธ๋ฆฌ ์์ฐจ ํ์ผ
- ํค ์์ฐจ ํ์ผ
- ์ธ๋ฑ์ค ๋ฐฉ๋ฒ
- ๊ธฐ๋ณธ ์ธ๋ฑ์ค
- ๋ณด์กฐ ์ธ๋ฑ์ค
- ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค
- ๋นํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค
- ๋ค๋จ๊ณ ์ธ๋ฑ์ค
- ํด์ฑ ๋ฐฉ๋ฒ
- ์ง์ ํ์ผ
์์ฐจ ๋ฐฉ๋ฒ(sequential method)
์ํธ๋ฆฌ ์์ฐจ ํ์ผ (entry-sequnce file)
- ๋ ์ฝ๋๊ฐ ์์คํ ์ ๋ค์ด์ค๋ ์์๋๋ก ๋ง๋ค์ด์ง๋ ๋ฐฉ๋ฒ
ํค ์์ฐจ ํ์ผ (key-sequence file)
- ๋ ์ฝ๋๋ค์ ํค๊ฐ ์์๋๋ก ๋ง๋ค์ด์ง๋ ๋ฐฉ๋ฒ
์ด๋ฌํ ์์ฐจ ๋ฐฉ๋ฒ๋ค์ ํ์ผ์ ๋ณต์ฌํ๊ฑฐ๋ ๋ ์ฝ๋๋ค์ ์์ฐจ์ ์ผ๋ก ์ผ๊ด ์ฒ๋ฆฌ(batch processing)ํ ๋ ๋ง์ด ์ฌ์ฉ๋ฉ๋๋ค.
์ธ๋ฑ์ค ๋ฐฉ๋ฒ(index method)
์ธ๋ฑ์ค ๋ฐฉ๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ํ๊ณ ํจ์จ์ ์ผ๋ก ๊ฒ์ํ๊ธฐ ์ํด ๋จผ์ ์ธ๋ฑ์ค๋ฅผ ์ฐพ๊ณ , ์ํ๋ ๋ ์ฝ๋์ ์ ๊ทผํ๋ ๋ฐฉ์์ ๋๋ค.
์ธ๋ฑ์ค๋ฅผ ๊ตฌ์ถํ๊ณ ์ ์งํ ๋ ๊ด๋ จ ๋น์ฉ์ด ๋ฐ์ํ๋ฏ๋ก ๋ฌดํฑ๋๊ณ ๋ง์ด ๋ง๋ค๊ธฐ๋ณด๋จ ์ ์ ํ ๊ฐ์๋ฅผ ๋ง๋๋ ๊ฒ์ด ์ค์ํฉ๋๋ค.
์ธ๋ฑ์ค ํ์ผ๊ณผ ๋ฐ์ดํฐ ํ์ผ๋ก ๊ตฌ์ฑ๋์ด ์๊ณ , ์ธ๋ฑ์ค ํ์ผ์ ํ์ํค์ ์ฃผ์์ ์์ผ๋ก ๊ตฌ์ฑ๋ฉ๋๋ค.
๊ธฐ๋ณธ ์ธ๋ฑ์ค(primary index)
๊ธฐ๋ณธ ์ธ๋ฑ์ค๋ ๊ธฐ๋ณธํค๋ฅผ ๊ฐ์ง๊ณ ๋ง๋๋ ์ธ๋ฑ์ค๋ก, DBMS์ ์ํด ์๋์ผ๋ก ๋ง๋ค์ด์ง๋๋ค.
์ธ๋ฑ์ค๋ ์์ฐจ ํ์ผ(indexed sequential file)์ด๋ผ๊ณ ๋ ํฉ๋๋ค.
์ง์ ์ ๊ทผ ํ ์์ฐจ ์ ๊ทผ์ ์ง์ํ๋ ๋ฐฉ๋ฒ์ผ๋ก, ์ธ๋ฑ์ค๋ฅผ ๊ฐ์ง๊ณ ์ง์ ์ ๊ทผํ ํ ํค ๊ฐ์ ๋ฐ๋ผ ์ ๋ ฌ๋ ์์ฐจ ๋ฐ์ดํฐ ํ์ผ์ ์์ฐจ์ ์ผ๋ก ์ ๊ทผํ๋ ๋ฐฉ์์ ๋๋ค.
์๋์ ๊ฐ์ด ์ธ๋ฑ์ค ํ์ผ์๋ ์ง์ ์ ๊ทผ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ ๋ ์ฝ๋๋ค์ ๋ํ ์ฃผ์๋ฅผ ๊ฐ์ง๊ณ ์๊ณ , ๊ฐ ๋ธ๋ก๋ง๋ค ํ๋์ ํ์ ํค ๊ฐ์ด ์ธ๋ฑ์ค ์ํธ๋ฆฌ์ ํฌํจ๋ฉ๋๋ค.
๋ณด์กฐ ์ธ๋ฑ์ค(secondary index)
ํ ๋ฆด๋ ์ด์ ์ ์ฌ๋ฌ ๊ฐ์ ์ธ๋ฑ์ค๋ฅผ ์ ์ํ๋ ๊ฒ์ด ํํ๋ฐ, ๊ธฐ๋ณธํค๊ฐ ์๋ ํ๋์ ๋ํด์ ์ธ๋ฑ์ค๋ฅผ ์์ฑํ์ ๋ ์ด ์ธ๋ฑ์ค๋ฅผ ๋ณด์กฐ ์ธ๋ฑ์ค๋ผ๊ณ ํฉ๋๋ค.
ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค(clustering index)
ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค๋ ํ์ํค ๊ฐ์ ๋ฐ๋ผ ์ ๋ ฌ๋ ๋ฐ์ดํฐ ํ์ผ์ ๊ฐ์ต๋๋ค.
์ธ๋ฑ์ค์ ์ ๋ ฌ ์์์ ๋ฐ์ดํฐ ํ์ผ์ ์ ๋ ฌ ์์๊ฐ ์ผ์นํด ๋ฒ์ ์ง์์ ์ ์ฉํฉ๋๋ค.
๊ธฐ๋ณธ ์ธ๋ฑ์ค๋ ํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค์ ํ ์ข ๋ฅ์ ๋๋ค.
๋นํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค(non-clustering index)
๋นํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค์์๋ ๋ฐ์ดํฐ ํ์ผ์ ๋ ์ฝ๋๋ค์ด ํ์๊ฐ๊ณผ ๋ฌด๊ดํ๊ฒ ์ ์ฅ๋์ด ์์ต๋๋ค.
๋ณด์กฐ ์ธ๋ฑ์ค๊ฐ ๋นํด๋ฌ์คํฐ๋ง ์ธ๋ฑ์ค ํํ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
๋ค๋จ๊ณ ์ธ๋ฑ์ค(multi-level index)
์ธ๋ฑ์ค ์์ฒด๊ฐ ํด ๊ฒฝ์ฐ ์ธ๋ฑ์ค ์ํธ๋ฆฌ ํ์์๊ฐ์ ์ค์ด๊ธฐ ์ํด ์ธ๋ฑ์ค์ ๋ํด ๋ค์ ์ธ๋ฑ์ค๋ฅผ ์ ์ํ ์ ์์ต๋๋ค.
1๋จ๊ณ ์ธ๋ฑ์ค์ ๋ํด ์ถ๊ฐ๋ก ์ธ๋ฑ์ค๋ฅผ ์ ์ํ๋ฉด ์ด๋ 2๋จ๊ณ ์ธ๋ฑ์ค๊ฐ ๋ฉ๋๋ค.
๊ฐ์ฅ ์์ ๋จ๊ณ ์ธ๋ฑ์ค๋ฅผ ๋ง์คํฐ(master) ์ธ๋ฑ์ค๋ผ๊ณ ํ๋ฉฐ, ํ ๋ธ๋ก์ผ๋ก ์ด๋ฃจ์ด์ ธ ์ฃผ๊ธฐ์ต ์ฅ์น์ ์์ฃผํ ์ ์์ต๋๋ค.
ํด์ฑ ๋ฐฉ๋ฒ(hashing method)
ํด์ฑ ๋ฐฉ๋ฒ๋ ๋ค๋ฅธ ๋ ์ฝ๋๋ฅผ ์ฐธ์กฐํ์ง ์๊ณ ์ํ๋ ๋ชฉํ ๋ ์ฝ๋์ ์ง์ ์ ๊ทผํ๋ ์ง์ ํ์ผ ๋ฐฉ๋ฒ์ ๋๋ค.
ํด์ฑ ํจ์, ํด์ ํค, ํด์ ์ฃผ์๋ฅผ ์ฌ์ฉํฉ๋๋ค.