Index
Last updated
Last updated
Index๋ ์ฑ ์ ๋ชฉ์ฐจ์ ๊ฐ์ ์์ธ์ด๋ผ ํ ์ ์๋ค. ์ถ๊ฐ์ ์ธ ์ฐ๊ธฐ ์์ ๊ณผ ์ ์ฅ๊ณต๊ฐ์ ํ์ฉํ์ฌ ํ ์ด๋ธ์ ๊ฒ์์๋๋ฅผ ๋์ผ ์ ์๊ฒ ์ฌ์ฉ๋๋ค.
๊ทธ๋ฆผ์์ ๋ณด์ด๋ฏ์ด index๋ ์ ๋ ฌ๋ ํํ๋ฅผ ์ ์งํ๊ณ ์๊ธฐ์, ์ํ๋ ๊ฐ์ ์ฝ๊ฒ ํ์ํ ์ ์์ด ๋ถํ๋ฅผ ์ค์ฌ์ค๋ค.
์ฆ ORDER BY ํน์ MIN/MAX ๊ฐ์ ๊ฒฝ์ฐ ์ด๋ฏธ ์ ๋ ฌ๋์ด ํจ์จ์ ์ผ๋ก ํ์ํ ์ ์๋ค.
์ธ๋ฑ์ค๊ฐ ํญ์ ์ ๋ ฌ๋ ์ํ๋ก ์ ์ง๋์ด์ผ ํ๊ธฐ์, ์ด์ ๋๋ฐ๋๋ ๋จ์ ๋ค์ ๋ค์๊ณผ ๊ฐ๋ค.
์ธ๋ฑ์ค๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ ์์ ๋ฐ ๊ณต๊ฐ ํ์ (๋๋ต 10%)
๋จ์ฉ๋๋ ๊ฒฝ์ฐ ๊ฒ์ ์ฑ๋ฅ์ ์ ํ๊ฐ ๋ฐ์
์ฆ ํญ์ ์ ๋ ฌ๋์ด ์๊ธฐ์, INSERT, DELETE, UPDATE์ ๊ฐ์ ์์ ์ธ ๊ฒฝ์ฐ ์ถ๊ฐ ์์ ์ด ํ์ํ๊ฒ ๋๋ค.
์ฆ ๊ท๋ชจ๊ฐ ํฌ๊ณ , INSERT, UPDATE, DELETE ๋ฑ์ด ์์ฃผ ๋ฐ์ํ์ง ์์ผ๋ฉฐ WHERE, ORDER BY, JOIN๋ฑ SELECT๊ฐ ์์ฃผ ๋ฐ์ํ๋ ํ ์ด๋ธ์ ์ ์ฉํ๊ฒ ์ฌ์ฉ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก <key, value> ์์ ์ด๋ฃจ์ด O(1)์ ๋งค์ฐ ๋น ๋ฅธ ๊ตฌ์กฐ๋ฅผ ๊ฐ์ง๊ณ ์์ง๋ง, equal ์ฐ์ฐ์ ์ต์ ํ ๋์ด ์์ด ํด์ ํ ์ด๋ธ ๋ด์ ๋ฐ์ดํฐ๋ค์ด ์ ๋ ฌ๋์ง ์๊ณ , ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ ๋ถ๋ฑํธ ์ฐ์ฐ์ ์์ฃผ ์ฌ์ฉํ๊ธฐ์ ๋ง์ด ์ฌ์ฉ๋์ง ์๋๋ค.
์ผ๋ฐ์ ์ผ๋ก B- Tree์์linked list๊ฐ ์ถ๊ฐ๋๊ณ , leaf node์๋ง ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ํํ๋ก, ๋ถ๋ฑํธ ์ฐ์ฐ์ ์ด์ฉํ ์์ฐจ ๊ฒ์์ด ์์ฃผ ์ฌ์ฉ๋๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํน์ง์ ๋ ํจ์จ์ ์ผ๋ก ๊ฒ์์ด ๊ฐ๋ฅํ๋ค.
Index๊ฐ ์์ฑ๋ ํ SELECT ์ฟผ๋ฆฌ๋ฌธ์ ์คํํ๊ฒ ๋๋ฉด, ์ตํฐ๋ง์ด์ ๊ฐ ํ๋จํ์ฌ ์์ฑ๋ ์ธ๋ฑ์ค๋ฅผ ์ ์ฉํ์ฌ ์ฟผ๋ฆฌ๋ฅผ ์คํํ๊ฒ ๋๋ค.
์ธ๋ฑ์ค๊ฐ ์ค์ ๋์ง ์์์ ๋ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๊ฒ๋ ๊ฒฝ์ฐ, Full Table Scan์ ํ๋ฉฐ ์์์ ์๋ชจํ๋ฉฐ Index๋ฅผ ์์ฑํ๊ฒ ๋๋ค.
๋ค์ ์ธ๋ฑ์ค๊ฐ ์กด์ฌํ ํ ์กฐํ๋ฅผ ํ๊ฒ ๋๋ฉด, Index๋ฅผ ํตํด Location์ ์ฝ๊ฒ ์ฐพ์ ํ TABLE์ ์กฐํํ์ฌ ๋น ๋ฅด๊ฒ ์ฒ๋ฆฌํ ์ ์๊ฒ๋๋ค.
์ฐธ๊ณ