๐Ÿ—ƒ๏ธ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค

์ธ๋ฑ์Šค์˜ ์ข…๋ฅ˜์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณด์ž !

mallin 2025. 2. 1. 01:53

0. ์„œ๋ก 

์ธ๋ฑ์Šค์˜ ๊ฐœ๋…์— ๋Œ€ํ•ด์„œ ๊ถ๊ธˆํ•˜์‹  ๋ถ„์€ ์ด์ „๊ธ€ (DB ์ธ๋ฑ์Šค ๊ฐœ๋… ์ •๋ฆฌ: ์ €์žฅ ๊ตฌ์กฐ, ์ƒ์„ฑ ๊ณผ์ •, ๋™์ž‘ ์›๋ฆฌ) ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š” !

 

(1) ์ธ๋ฑ์Šค๋ž€ ? (๊ฐœ๋…, ๊ตฌ์กฐ, ๋‚จ๋ฐœํ•˜๋ฉด ์•ˆ๋˜๋Š” ์ด์œ )

0. ๋ฐฐ๊ฒฝDB๋ฅผ ๋‹ค๋ฃฐ ๋•Œ ์ธ๋ฑ์Šค์˜ ์ค‘์š”์„ฑ์„ ๋ชจ๋ฅด๋Š” ์‚ฌ๋žŒ์€ ๊ฑฐ์˜ ์—†์„ ํ…๋ฐ์š”.์ด์ƒ์ ์œผ๋กœ๋Š” ํ…Œ์ด๋ธ” ์„ค๊ณ„ ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ์ธ๋ฑ์Šค๋ฅผ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ข‹์ง€๋งŒ,์‹ค๋ฌด์—์„œ๋Š” ์ฝ”๋“œ๋ฅผ ๋ฐฐํฌํ•œ ํ›„์—์•ผ "๋””๋น„

soyeon-devlog.tistory.com

 

์ธ๋ฑ์Šค๋ฅผ ๋ถ„๋ฅ˜ํ•  ๋•Œ, ํฌ๊ฒŒ

  1. ๊ตฌ์กฐ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค
  2. ์ €์žฅ ๋ฐฉ์‹ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค

๋กœ ๋‚˜๋ˆ„์–ด์ง€๋Š”๋ฐ์š”

 

๊ฐ๊ฐ์˜ ๋ถ„๋ฅ˜์— ์†ํ•ด์žˆ๋Š” ์ธ๋ฑ์Šค๋“ค์— ๋Œ€ํ•ด์„œ ์ง€๊ธˆ๋ถ€ํ„ฐ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค โœŒ๏ธ


1. ๊ตฌ์กฐ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค

๊ตฌ์กฐ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค์—๋Š” ์ •๋ง ๋‹ค์–‘ํ•œ ์ข…๋ฅ˜์˜ ์ธ๋ฑ์Šค๊ฐ€ ์†ํ•ด์žˆ๋Š”๋ฐ์š”!

์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋Œ€ํ‘œ์ ์ธ ๋ช‡ ๊ฐœ์˜ ์ธ๋ฑ์Šค๋ฅผ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

  • B-tree Index
  • B+Tree Index
  • BitMap Index
  • IOT Index

 

1-1. B-Tree Index

 

B-Tree๋Š” ๊ฐ€์žฅ ๋ณดํŽธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์ธ๋ฑ์Šค ๊ตฌ์กฐ์ด๋ฉฐ, ๊ท ํ˜• ํƒ์ƒ‰ ํŠธ๋ฆฌ(Balanced Search Tree) ์ž…๋‹ˆ๋‹ค

๊ท ํ˜• ํƒ์ƒ‰ ํŠธ๋ฆฌ๋ž€ ?
ํŠธ๋ฆฌ์˜ ๋†’์ด๊ฐ€ ๊ท ํ˜•์„ ์œ ์ง€ํ•˜๋„๋ก ์ž๋™์œผ๋กœ ์กฐ์ •๋˜๋Š” ์ด์ง„ํƒ์ƒ‰ ํŠธ๋ฆฌ๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค
๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ํŠธ๋ฆฌ์˜ ๋†’์ด๊ฐ€ ์ตœ์†Œํ•œ์œผ๋กœ ์œ ์ง€๋˜๊ณ , ์ด๋ฅผ ํ†ตํ•ด ๊ฒ€์ƒ‰ / ์‚ฝ์ž… / ์‚ญ์ œ ์—ฐ์‚ฐ์ด O(log n) ์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค

 

ํŠธ๋ฆฌ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ๋…ธ๋“œ๋Š” ๋ฃจํŠธ ๋…ธ๋“œ / ๋ธŒ๋žœ์น˜ ๋…ธ๋“œ / ๋ฆฌํ”„ ๋…ธ๋“œ๋กœ ๋‚˜๋‰˜์–ด์ง€๋Š”๋ฐ ๊ฐ๊ฐ์˜ ํŠน์ง•์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค !

  ์œ„์น˜ ๋‚ด์šฉ ์„ค๋ช…
๋ฃจํŠธ ๋…ธ๋“œ ํŠธ๋ฆฌ ์ตœ์ƒ๋‹จ ํ‚ค์™€ ํฌ์ธํ„ฐ ์ตœ์†Œ 2๊ฐœ์˜ ์ž์‹ ๋…ธ๋“œ๋ฅผ ๊ฐ€์ง„๋‹ค (๋‹จ, ๋ฃจํŠธ ๋…ธ๋“œ ๊ฐ€ ๋ฆฌํ”„๋…ธ๋“œ ์ผ ๊ฒฝ์šฐ๋Š” ์˜ˆ์™ธ)
๋ธŒ๋žœ์น˜ ๋…ธ๋“œ ์ค‘๊ฐ„ ๋…ธ๋“œ๋“ค ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ‚ค์™€ ์ž์‹ ํฌ์ธํ„ฐ ๊ฒ€์ƒ‰ ์‹œ ํ‚ค ๊ฐ’์„ ๋น„๊ตํ•˜๋ฉด์„œ ์ž์‹ ๋…ธ๋“œ๋กœ ์ด๋™
๋ฆฌํ”„ ๋…ธ๋“œ ๊ฐ€์žฅ ํ•˜์œ„ ๋…ธ๋“œ ์‹ค์ œ ๋ฐ์ดํ„ฐ (๋ ˆ์ฝ”๋“œ) ์ €์žฅ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌ

 

๋“ฑํ˜ธ ๋ฐ ๋ถ€๋“ฑํ˜ธ ์—ฐ์‚ฐ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์ธ๋ฑ์Šค์ด๋ฉฐ,

๊ฐ ๋…ธ๋“œ๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” key ์™€ child ๊ฐœ์ˆ˜๋Š” DBMS ์„ค์ • ๋ฐ ๋ธ”๋ก ํฌ๊ธฐ์— ๋‹ค๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค

 

 

1-2. B+Tree Index

 

B+Tree๋Š” ์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด B-Tree์˜ ํ™•์žฅ(๊ฐœ์„ )๋œ ๋ฒ„์ „์ž…๋‹ˆ๋‹ค! ๐Ÿš€
B+Tree๋Š” ์ž์‹ ๋…ธ๋“œ๊ฐ€ 2๊ฐœ ์ด์ƒ์ธ B-Tree๋ฅผ ๊ฐœ์„ ํ•œ ์ธ๋ฑ์Šค ๊ตฌ์กฐ๋กœ,
๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” DBMS ์ค‘ ํ•˜๋‚˜์ธ InnoDB (MySQL์˜ ๊ธฐ๋ณธ ์Šคํ† ๋ฆฌ์ง€ ์—”์ง„)๋„ B+Tree Index๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

B-Tree ์™€ B+Tree ์˜ ๊ฐ€์žฅ ํฐ ์ฐจ์ด์ ์€ ๋ฐ์ดํ„ฐ ์ €์žฅ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค !

ํŠน์ง•  B-Tree B+Tree
๋ธŒ๋žœ์น˜ ๋…ธ๋“œ ํ‚ค, ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ฐ€๋Šฅ ํ‚ค๋งŒ ์ €์žฅ
๋ฆฌํ”„ ๋…ธ๋“œ ์ผ๋ถ€ ๋ฐ์ดํ„ฐ ์ €์žฅ ๊ฐ€๋Šฅ ๋ชจ๋“  ๋ฐ์ดํ„ฐ ์ €์žฅ (ํฌ์ธํ„ฐ ํฌํ•จ)
๋ฆฌํ”„ ๋…ธ๋“œ ๊ฐ„ ์—ฐ๊ฒฐ X (๋ฒ”์œ„ ๊ฒ€์ƒ‰ ๋น„ํšจ์œจ์ ) Linked List ๋กœ ์—ฐ๊ฒฐ (๋ฒ”์œ„ ๊ฒ€์ƒ‰ ๋น ๋ฆ„)
๊ฒ€์ƒ‰ ์†๋„ ๋‹ค์†Œ ๋А๋ฆผ ์ผ๊ด€๋œ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ (ํ•ญ์ƒ ๋ฆฌํ”„ ๋…ธ๋“œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ๊ธฐ ๋•Œ๋ฌธ)

 

์‹ค์ œ ๋ฐ์ดํ„ฐ๋Š” ์˜ค์ง ๋ฆฌํ”„ ๋…ธ๋“œ์—๋งŒ ์ €์žฅ๋˜๋ฉฐ, ๋ชจ๋“  ๋ฆฌํ”„ ๋…ธ๋“œ๊ฐ€ Linked List ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— 

๋ฒ”์œ„ ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์ด B-Tree ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฆ…๋‹ˆ๋‹ค !!!!

 

๋ฆฌํ”„ ๋…ธ๋“œ๊ฐ€ Linked List ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๋‹ค๋Š”๊ฒŒ ์™œ ๋น ๋ฅธ๊ฑด์ง€ ์ดํ•ด๊ฐ€ ์•ˆ ๋  ์ˆ˜ ์žˆ๋Š”๋ฐ์š” ๐Ÿค”

B+Tree์—์„œ 50์„ ๊ฒ€์ƒ‰ํ•œ๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋ฉด:

 

1๏ธโƒฃ ๋ธŒ๋žœ์น˜ ๋…ธ๋“œ์—์„œ 50์ด ์–ด๋””์— ์œ„์น˜ํ•˜๋Š”์ง€ ํƒ์ƒ‰ (๋ธŒ๋žœ์น˜ ๋…ธ๋“œ๋Š” ํ‚ค๋งŒ ์ €์žฅ)
2๏ธโƒฃ ๋ฆฌํ”„ ๋…ธ๋“œ๊นŒ์ง€ ์ด๋™ํ•˜์—ฌ 50์„ ์ฐพ์Œ (๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ๋ฆฌํ”„ ๋…ธ๋“œ์— ์ €์žฅ๋จ)
3๏ธโƒฃ ๋งŒ์•ฝ 50๋ณด๋‹ค ํฐ ๊ฐ’์„ ์ฐพ๊ณ  ์‹ถ๋‹ค๋ฉด? → ๋ฆฌํ”„ ๋…ธ๋“œ๋ผ๋ฆฌ Linked List๋กœ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์–ด ์‰ฝ๊ฒŒ ์ด๋™ ๊ฐ€๋Šฅ โœ…

 

๋งŒ์•ฝ B-Tree ์—์„œ 50์„ ๊ฒ€์ƒ‰ํ•˜๊ณ , 50๋ณด๋‹ค ํฐ ๊ฐ’์„ ์ฐพ๊ณ ์ž ํ•œ๋‹ค๋ฉด?

B-Tree ๋Š” ๋ฆฌํ”„ ๋…ธ๋“œ๋ผ๋ฆฌ ์—ฐ๊ฒฐ๋˜์–ด ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๋‹ค์‹œ ๋ธŒ๋žœ์น˜ ๋…ธ๋“œ๋ฅผ ํƒ์ƒ‰ํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ฒ”์œ„ ๊ฒ€์ƒ‰ ์‹œ ๋ถˆํ•„์š”ํ•œ ํƒ์ƒ‰์ด ๋ฐœ์ƒํ•˜์—ฌ ์„ฑ๋Šฅ์ด ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค ๐Ÿฅบ

 

 

1-3. Bitmap Index

Bitmap Index ๋Š” ์ค‘๋ณต ๊ฐ’์ด ๋งŽ์€ ์ปฌ๋Ÿผ์—์„œ ์ตœ์ ์˜ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜๋Š” ์ธ๋ฑ์Šค์ž…๋‹ˆ๋‹ค

(์˜ˆ : ์„ฑ๋ณ„, ๊ตญ๊ฐ€ ์ฝ”๋“œ, ์ƒํƒœ ๊ฐ’ ๋“ฑ๊ณผ ๊ฐ™์ด ๊ฐ’์˜ ์ข…๋ฅ˜๊ฐ€ ์ ๊ณ , ์ค‘๋ณต์ด ๋งŽ์€ ๊ฒฝ์šฐ)

 

์ปฌ๋Ÿผ ๊ฐ’์„ ๋น„ํŠธ๋งต(BitMap)์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ €์žฅํ•˜๋ฉฐ, ROWID๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๋ฐ์ดํ„ฐ ์œ„์น˜๋ฅผ ์ถ”์ ํ•ฉ๋‹ˆ๋‹ค

๋น„ํŠธ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ ์ €์žฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— AND, OR ๊ฐ™์€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ๋„ ๋น„ํŠธ ์—ฐ์‚ฐ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜์—ฌ ๋น ๋ฅธ ๊ฒ€์ƒ‰์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค

 

ํ•˜์ง€๋งŒ, INSERT / UPDATE / DELETE ์‹œ ๋น„ํŠธ๋งต์„ ์žฌ๊ตฌ์„ฑํ•ด์•ผํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ ์ €ํ•˜๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

 

 

1-4. IOT Index

IOT ์˜ ํ’€ ๋„ค์ด๋ฐ์€ Index Organized Table ๋กœ ํ…Œ์ด๋ธ” ์ž์ฒด๋ฅผ B-Tree ์ธ๋ฑ์Šค ๊ตฌ์กฐ๋กœ ์ €์žฅํ•˜๋Š” ํŠน์ˆ˜ํ•œ ํ˜•ํƒœ์˜ ํ…Œ์ด๋ธ”์ž…๋‹ˆ๋‹ค.

 

์ผ๋ฐ˜์ ์ธ ์ธ๋ฑ์Šค๋Š” ROWID ๋ฅผ ์ €์žฅํ•˜์—ฌ ํ…Œ์ด๋ธ”์„ ์ฐธ์กฐํ•˜์ง€๋งŒ, 

IOT ๋Š” ๋ฐ์ดํ„ฐ ์ž์ฒด๋ฅผ ์ธ๋ฑ์Šค ๋ฆฌํ”„ ๋…ธ๋“œ์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค !!

 

ํ…Œ์ด๋ธ”์„ ์กฐํšŒํ•  ํ•„์š”๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋  ์ˆ˜ ์žˆ์ง€๋งŒ, 

์ธ๋ฑ์Šค์˜ ํฌ๊ธฐ๊ฐ€ ์ปค์งˆ ์ˆ˜ ์žˆ์œผ๋ฉฐ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋นˆ๋ฒˆํ•˜๋ฉด ์„ฑ๋Šฅ์ด ์ €ํ•˜๋ฉ๋‹ˆ๋‹ค

์ •์ ์ธ ๋ฐ์ดํ„ฐ๋‚˜ ์ฝ๊ธฐ ์œ„์ฃผ ๋ฐ์ดํ„ฐ ๋“ฑ์— ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค


2. ์ €์žฅ ๋ฐฉ์‹ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค

์ €์žฅ ๋ฐฉ์‹ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค๋Š” ๊ตฌ์กฐ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค์™€๋Š” ๋‹ค๋ฅด๊ฒŒ ๋ฐ์ดํ„ฐ๊ฐ€ ๋””์Šคํฌ์— ์ €์žฅ๋˜๋Š” ๋ฐฉ์‹์— ๋”ฐ๋ผ ์ธ๋ฑ์Šค๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค !

ํ•œ๋งˆ๋””๋กœ ์„ค๋ช…ํ•˜์ž๋ฉด, ๋ฐ์ดํ„ฐ์˜ ๋ฌผ๋ฆฌ์  ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ์ธ๋ฑ์Šค๊ฐ€ ์„ค๊ณ„๋˜๋Š”๋ฐ์š”

 

์ €์žฅ ๋ฐฉ์‹ ๊ธฐ๋ฐ˜ ์ธ๋ฑ์Šค๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋‰ฉ๋‹ˆ๋‹ค  !!

  1. Clustered Index
  2. Non-Clusted Index

 

2-1. Clustered Index

 

๋ฐ์ดํ„ฐ ์ž์ฒด๊ฐ€ ์ •๋ ฌ๋œ ์ธ๋ฑ์Šค์˜ ์ˆœ์„œ๋Œ€๋กœ ๋””์Šคํฌ์— ์ €์žฅ๋˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค !!

 

์˜ˆ๋ฅผ ๋“ค์–ด ์ฑ…์—์„œ "์ธ๋ฑ์Šค"  ๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์ฐพ๊ณ ์ž ํ•  ๋•Œ Clustered Index ๋Š” ํ•ด๋‹น ํ‚ค์›Œ๋“œ๊ฐ€ ์žˆ๋Š” ํŽ˜์ด์ง€๋ฅผ ์•Œ๊ณ  ์žˆ์–ด์„œ ํ•ด๋‹น ํŽ˜์ด์ง€๋ฅผ ๋ฐ”๋กœ ํŽผ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

 

๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ •๋ ฌ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฒ€์ƒ‰ ์„ฑ๋Šฅ์ด ๊ต‰์žฅํžˆ ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค.

ํŠนํžˆ ๋ฒ”์œ„ ๊ฒ€์ƒ‰์„ ํ•  ๋•Œ ๋”์šฑ ์œ ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

 

๋ฐ์ดํ„ฐ๋ฅผ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ •๋ ฌ๋œ ํ˜•ํƒœ๋กœ ์ €์žฅํž‰ ๋•Œ๋ฌธ์— ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์— ํ•˜๋‚˜์˜ ํด๋Ÿฌ์Šคํ„ฐ๋“œ ์ธ๋ฑ์Šค๋งŒ ์กด์žฌ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค !

๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๋ณดํ†ต PK ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํด๋Ÿฌ์Šคํ„ฐ๋“œ ์ธ๋ฑ์Šค๊ฐ€ ์ž๋™ ์ƒ์„ฑ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค.

 

 

 

2-2. Non-Clusted Index

 

Non-Clusted Index ๋Š” ๋ฐ์ดํ„ฐ ์ž์ฒด๊ฐ€ ์ •๋ ฌ๋˜์–ด ์ €์žฅ๋˜๋Š” Clustered Index ์™€๋Š” ๋‹ค๋ฅด๊ฒŒ

๋ฐ์ดํ„ฐ๊ฐ€ ์ •๋ ฌ๋˜์ง€ ์•Š์€ ์ƒํƒœ์—์„œ ๋ณ„๋„์˜ ์ธ๋ฑ์Šค ํ…Œ์ด๋ธ”์„ ๋‘๊ณ  ๊ฒ€์ƒ‰์„ ํ•˜๋Š” ๋ฐฉ์‹ ์ž…๋‹ˆ๋‹ค

 

์˜ˆ๋ฅผ ๋“ค์–ด ์ฑ…์—์„œ "์ธ๋ฑ์Šค" ๋ผ๋Š” ํ‚ค์›Œ๋“œ๋ฅผ ์ฐพ๊ณ ์ž ํ•œ๋‹ค๋ฉด ๋ชฉ์ฐจ์—์„œ ํ•ด๋‹น ํ‚ค์›Œ๋“œ์˜ ์ฑ… ํŽ˜์ด์ง€๋ฅผ ์ฐพ๊ณ , ํŽ˜์ด์ง€๋ฅผ ํŽผ์น  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค 

 

๋ฐ์ดํ„ฐ๋ฅผ ๋ฌผ๋ฆฌ์ ์œผ๋กœ ์ •๋ ฌํ•ด์„œ ์ €์žฅํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ํ•˜๋‚˜์˜ ํ…Œ์ด๋ธ”์— ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋…ผํด๋Ÿฌ์Šคํ„ฐ๋“œ ์ธ๋ฑ์Šค๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

 

 

2-3. Clustered Index vs Non-Clusted Index

  Clustered Index Non-Clustered Index
๋ฐ์ดํ„ฐ ์ •๋ ฌ ๋ฐฉ์‹ ๋””์Šคํฌ์— ์ •๋ ฌ ์ €์žฅ ์ •๋ ฌ๋˜์ง€ ์•Š์Œ
๊ฒ€์ƒ‰ ์†๋„ ๋น ๋ฆ„ (๋ฐ์ดํ„ฐ๊ฐ€ ์ •๋ ฌ๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ) ๋‹ค์†Œ ๋А๋ฆผ (๋ชฉ์ฐจ๋ฅผ ํ†ตํ•ด์„œ ์ฐพ์•„์•ผํ•จ)
์‚ฝ์ž… / ์‚ญ์ œ ์†๋„ ๋А๋ฆผ (๋ชจ๋“  ๋ฐ์ดํ„ฐ๋ฅผ ์žฌ์ •๋ ฌ) ๋น ๋ฆ„ (๋ชฉ์ฐจ์— ์ถ”๊ฐ€๋งŒ)
ํ…Œ์ด๋ธ” ๋‹น ๊ฐœ์ˆ˜ 1๊ฐœ๋งŒ ๊ฐ€๋Šฅ n๊ฐœ ๊ฐ€๋Šฅ
ํ™œ์šฉ ์ž์ฃผ ๊ฒ€์ƒ‰๋˜๋Š” ์ปฌ๋Ÿผ ์ด๋‚˜ PK ์ž์ฃผ ํ•„ํ„ฐ๋ง ๋˜๋Š” ์ปฌ๋Ÿผ