๋””์Šคํฌ ์Šค์ผ€์ค„๋ง(Disk Scheduling)

1. FSFS(First Come First Saved) ์Šค์ผ€์ค„๋ง

  • ์š”์ฒญ์ด ๋“ค์–ด์˜จ ์ˆœ์„œ๋Œ€๋กœ ์ฒ˜๋ฆฌ
  • ๋‹จ ๋น„์šฉ์ด ๋งŽ์ด ๋ฐœ์ƒ๋˜์–ด ๋น„ํšจ์œจ์  FSFS

    2. SSTF(Shortest Seek Time First) ์Šค์ผ€์ค„๋ง

  • ํ˜„์žฌ ๋””์Šคํฌ ํ—ค๋“œ ์œ„์น˜์—์„œ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์‹ค๋ฆฐ๋”์— ์š”์ฒญ์„ ์šฐ์„ ์ ์œผ๋กœ ์ฒ˜๋ฆฌ.
  • Seek Time(ํƒ์ƒ‰ ์‹œ๊ฐ„)์•„ ์ ๊ธฐ ๋•Œ๋ฌธ์— ์ฒ˜๋ฆฌ๋Ÿ‰์„ ๊ทน๋Œ€ํ™” ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ˜๋ฉด, ์•ˆ์ชฝ์ด๋‚˜ ๋ฐ”๊นฅ์ชฝ์— ์žˆ๋Š” ์š”์ฒญ๋“ค์€ ๊ธฐ์•„(Starvation, ํŠน์ • ํ”„๋กœ์„ธ์Šค์˜ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋‚ฎ์•„์„œ ์›ํ•˜๋Š” ์ž์›์„ ๊ณ„์† ํ• ๋‹น๋ฐ›์ง€ ๋ชปํ•˜๋Š” ์ƒํƒœ) ์ƒํƒœ์ผ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ์˜ ์š”์ฒญ๋“ค์— ๋Œ€ํ•œ ์‘๋‹ต์‹œ๊ฐ„์˜ ํŽธ์ฐจ๊ฐ€ ํฌ๋‹ค(์–ด๋–ค ๊ฑด ๋นจ๋ฆฌ ์‘๋‹ตํ•˜๊ณ , ์–ด๋–ค ๊ฑด, ์š”์ฒญ ์‹œ๊ฐ„ ๋Œ€๋น„ ๋Šฆ๊ฒŒ ์‘๋‹ต) SSTF

    3. SCAN ์Šค์ผ€์ค„๋ง

  • ๋””์Šคํฌ์˜ ํ•œ์ชฝ ๋์—์„œ ๋ฐ˜๋Œ€์ชฝ ๋์œผ๋กœ ์ด๋™ํ•˜๋ฉด์„œ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ๋งˆ์ง€๋ง‰ ์‹ค๋ฆฐ๋”์— ๋„์ฐฉํ•˜๋ฉด ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ์Šค์บ”๋“ค ์ง„ํ–‰. ๋งˆ์น˜ ์—˜๋ ˆ๋ฒ ์ดํ„ฐ๊ฐ€ ๋™์ž‘ํ•˜๋Š” ์›๋ฆฌ ๊ฐ™์•„์„œ ์—˜๋ ˆ๋ฒ ์ดํ„ฐ ๊ธฐ๋ฒ•์ด๋ผ๊ณ ๋„ ํ•œ๋‹ค.
  • SSTF์—์„œ ๋ฐœ์ƒํ•˜๋Š” ๊ธฐ์•„ ๊ฐ€๋Šฅ์„ฑ์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ๊ณ , ์‘๋‹ต์‹œ๊ฐ„์˜ ํŽธ์ฐจ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ๋‹ค.
  • ์˜ˆ๋ฅผ ๋“ค์–ด, ํ—ค๋”๊ฐ€ ์•ˆ์ชฝ ๋ฐฉํ–ฅ(0)์„ ํ–ฅํ•˜๊ณ  ์žˆ์œผ๋ฉด 0์— ์žˆ๋Š” ๋ฐฉํ–ฅ์€ ๋ชจ๋‘ ์ฒ˜๋ฆฌํ•œ ํ›„, 0์— ๋„์ฐฉํ•˜๊ณ  ๋ฐ˜๋Œ€์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํ–ฅํ•œ๋‹ค. ๋ฐ˜๋Œ€์ชฝ ๋ฐฉํ–ฅ์œผ๋กœ ํ–ฅํ•˜๋˜ ์ค‘, ์ค‘๊ฐ„์— ์ƒˆ๋กœ์šด ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋”๋ผ๋„, ํ•ด๋‹น ์š”์ฒญ์„ ์•„์ง ์ง€๋‚˜์น˜์ง€ ์•Š์œผ๋ฉด ํ•ด๋‹น ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•œ๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ์–‘ ๋ ๋‹จ์— ์žˆ๋Š” ์š”์ฒญ์ด ์ค‘๊ฐ„์— ์žˆ๋Š” ์š”์ฒญ๋ณด๋‹ค ๋” ๋Šฆ๊ฒŒ ์ฒ˜๋ฆฌ๋  ์ˆ˜๋„ ์žˆ๋‹ค. SCAN

    4. C-SCAN ์Šค์ผ€์ค„๋ง

  • ๋””์Šคํฌ์˜ ํ•œ์ชฝ ๋์—์„œ ๋ฐ˜๋Œ€์ชฝ ๋์œผ๋กœ ์ด๋™ํ•˜๋ฉด์„œ ์ฒ˜๋ฆฌํ•˜๋ฉฐ, ๋งˆ์ง€๋ง‰ ์‹ค๋ฆฐ๋”์— ๋„์ฐฉํ•˜๋ฉด ์‹œ์ž‘์ ์œผ๋กœ ๋˜๋Œ์•„๊ฐ„ ํ›„ ๋‹ค์‹œ ์Šค์บ”์„ ์ง„ํ–‰. SCAN๋ณด๋‹ค ์กฐ๊ธˆ ๋” ๊ท ๋“ฑํ•˜๊ฒŒ ์‹œ๊ฐ„์„ ๋ถ„๋ฐฐํ•  ์ˆ˜ ์žˆ๋‹ค.
  • ํ•˜์ง€๋งŒ, ๋ฐ”๊นฅ์ชฝ์— ์ฒ˜๋ฆฌํ•  ์š”์ฒญ์ด ์—†์–ด๋„ ํ—ค๋“œ๊ฐ€ ๋๊นŒ์ง€ ์ด๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋น„ํšจ์œจ์ ์ผ ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, SCAN๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์ค‘๊ฐ„์— ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋”๋ผ๋„ ํ•ด๋‹น ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜์ง€ ์•Š๊ณ  ํ์— ๋ชจ์•˜๋‹ค๊ฐ€ ์ผ์ „์— ์š”์ฒญํ•œ ๊ฒƒ๋“ค์„ ๋‹ค ์ฒ˜๋ฆฌํ•œ ํ›„ ์ฒ˜๋ฆฌํ•œ๋‹ค. C-SCAN

    5. LOOK, C-LOOK ์Šค์ผ€์ค„๋ง

  • SCAN๊ณผ C-SCAN์„ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•œ ์Šค์ผ€์ค„๋ง ๊ธฐ๋ฒ•. SCAN๊ณผ C-SCAN์˜ ๋ฌธ์ œ์ ์€ ๋๋‹จ์— ์š”์ฒญ์ด ์—†์–ด๋„ ๋๋‹จ๊นŒ์ง€ ๋„๋‹ฌํ•˜๊ณ  ๋งŒ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค. ๋”ฐ๋ผ์„œ ์š”์ฒญ์ด ์ง„ํ–‰ ๋ฐฉํ–ฅ์—์„œ ๋” ์ด์ƒ ์—†์œผ๋ฉด, ๋๋‹จ๊นŒ์ง€ ๊ฐ€์ง€ ์•Š๊ณ  ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ์œผ๋กœ ๊ฐ€๋˜๊ฐ€(SCAN), ๋‹ค์‹œ ๊ฐ™์€ ๋ฐฉํ–ฅ์œผ๋กœ ์ง„ํ–‰(C-SCAN)ํ•˜๊ฒŒ ๋œ๋‹ค. LOOK

    C-LOOK

ํ…Œ์ด๋ธ” ๊ตฌ์„ฑ ์š”์†Œ, ๋ฆด๋ ˆ์ด์…˜ ์šฉ์–ด

  • ๋ฆด๋ ˆ์ด์…˜(Relation): == ํ…Œ์ด๋ธ”
  • ์• ํŠธ๋ฆฌ๋ทฐํŠธ(Attribute): ๋ฆด๋ ˆ์ด์…˜์— ์ €์žฅ๋œ ์†์„ฑ. e.g. event_item_id, tag, username
  • ์ฐจ์ˆ˜(Degree): ํ•œ ๋ฆด๋ ˆ์ด์…˜์— ๋“ค์–ด์žˆ๋Š” ์• ํŠธ๋ฆฌ๋ทฐํŠธ ์ˆ˜. ์˜ˆ๋ฅผ ๋“ค์–ด, member๋ผ๋Š” ๋ฆด๋ ˆ์ด์…˜์— member_id, member_name, address ์ด ์„ธ๊ฐ€์ง€์˜ ์• ํŠธ๋ฆฌ๋ทฐํŠธ๊ฐ€ ์žˆ๋‹ค๋ฉด, member์˜ ์ฐจ์ˆ˜๋Š” 3์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ฐจ์ˆ˜๋Š” ๋ฌด์กฐ๊ฑด 1 ์ด์ƒ์ด์–ด์•ผ ํ•œ๋‹ค.
  • ํŠœํ”Œ(Tuple): ๋ฆด๋ ˆ์ด์…˜์˜ ๊ฐ ํ–‰์„ ๋ ˆ์ฝ”๋“œ๋ผ๊ณ  ํ•˜๊ณ , ์ด ๋ ˆ์ฝ”๋“œ๋ฆ ๊ณต์‹์ ์ธ ์ด๋ฆ„์„ ํŠœํ”Œ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋œ๋‹ค.
  • ์นด๋””๋‚ ๋ฆฌํ‹ฐ(Cardinality): ์นด๋””๋‚ ๋ฆฌํ‹ฐ๋Š” ๋ฆด๋ ˆ์ด์…˜ ํŠœ๋ธ”์˜ ๊ฐœ์ˆ˜์ด๋‹ค. ์นด๋””๋‚ ๋ฆฌํ‹ฐ๋Š” ์ฐจ์ˆ˜์™€ ๋‹ฌ๋ฆฌ 0์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋‹ค. ์ˆ˜๊ฐ•์ƒ ํ…Œ์ด๋ธ”์ธ๋ฐ ์‹ค์ œ๋กœ ์•„์ง ์ˆ˜๊ฐ•์ƒ์€ ์•„๋ฌด๋„ ๋“ฑ๋กํ•˜์ง€ ์•Š์•„์„œ 0๋ช…์ผ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.
  • ๋„๋ฉ”์ธ(Domain): ๋„๋ฉ”์ธ์ด๋ž€ ๋ฆด๋ ˆ์ด์…˜์— ํฌํ•จ๋œ ๊ฐ๊ฐ์˜ ์†์„ฑ๋“ค์ด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฐ’๋“ค์˜ ์ง‘ํ•ฉ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, member ๋ผ๋Š” ๋ฆด๋ ˆ์ด์…˜์— ์„ฑ๋ณ„์ด๋ผ๋Š” ์†์„ฑ(์• ํŠธ๋ฆฌ๋ทฐํŠธ)์ด ์žˆ์œผ๋ฉด, ์ด ์†์„ฑ์ด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์€ ๋‚จ ๋˜๋Š” ์—ฌ๋ฐ–์— ์—†๋‹ค. ์ฆ‰, ์„ฑ๋ณ„ ์†์„ฑ์˜ ๋„๋ฉ”์ธ์€ ๋‚จ, ์—ฌ์ด๋‹ค.

๋Œ“๊ธ€๋‚จ๊ธฐ๊ธฐ