๊ฐ๋ฐ์๋ผ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๊ณ๋ฅผ ํ๊ฑฐ๋ API๋ฅผ ๋ง๋ค ๋ 'UUID'๋ผ๋ ์ฉ์ด๋ฅผ ํ ๋ฒ์ฏค ๋ค์ด๋ณด์ จ์ ๊ฒ๋๋ค. ํนํ ๋ถ์ฐ ์์คํ ํ๊ฒฝ์์ ๊ณ ์ ์๋ณ์๊ฐ ํ์ํ ๋ UUID๋ ํ์ค์ฒ๋ผ ์ฌ์ฉ๋ฉ๋๋ค.
1. UUID๋ ๋ฌด์์ธ๊ฐ?
UUID(Universally Unique Identifier)๋ '๋ฒ์ฉ ๊ณ ์ ์๋ณ์'์ ์ฝ์๋ก, ๋คํธ์ํฌ ์์์ ๊ณ ์ ์ฑ์ด ๋ณด์ฅ๋๋ ID๋ฅผ ๋ง๋ค๊ธฐ ์ํ ํ์ค ๊ท์ฝ์
๋๋ค. 128๋นํธ์ ์ซ์๋ก ๊ตฌ์ฑ๋๋ฉฐ, ๋ณดํต 32์๋ฆฌ์ 16์ง์ ๋ฌธ์์ด๋ก ํํ๋ฉ๋๋ค. (์: 550e8400-e29b-41d4-a716-446655440000)
2. ์ Auto Increment ๋์ UUID๋ฅผ ์ธ๊น?
- ๊ณ ์ ์ฑ ๋ณด์ฅ: ์ค์ ์๋ฒ ์์ด๋ ID๋ฅผ ์์ฑํ ์ ์์ด ๋ถ์ฐ ์์คํ ์ ์ ํฉํฉ๋๋ค.
- ๋ณด์: ์์ฐจ์ ์ธ ID(1, 2, 3...)๋ ๋ค์ ID๋ฅผ ์์ธกํ๊ธฐ ์ฝ์ง๋ง, UUID๋ ์์ธก์ด ๋ถ๊ฐ๋ฅํฉ๋๋ค.
- ๋ณํฉ ์ฉ์ด์ฑ: ์ฌ๋ฌ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐ๋ฅผ ํฉ์น ๋ ID ์ถฉ๋ ๊ฑฑ์ ์ด ์์ต๋๋ค.
3. UUID ๋ฒ์ ๋ณ ์ฐจ์ด์
- v1: ํ์์คํฌํ์ MAC ์ฃผ์ ๊ธฐ๋ฐ. ์์ฑ ์์๊ฐ ๋ณด์ฅ๋์ง๋ง, MAC ์ฃผ์ ๋ ธ์ถ๋ก ๋ณด์ ์ด์๊ฐ ์์ ์ ์์ต๋๋ค.
- v4: ์์ ๋๋ค ๊ธฐ๋ฐ. ๊ฐ์ฅ ๋๋ฆฌ ์ฌ์ฉ๋๋ฉฐ ์ถฉ๋ ํ๋ฅ ์ด ๊ทนํ ๋ฎ์ต๋๋ค. (์นํธ์ ์์ฑ๊ธฐ๊ฐ ์ฌ์ฉํ๋ ๋ฐฉ์)
- v5: ์ด๋ฆ(Name) ๊ธฐ๋ฐ. ํน์ ์ ๋ ฅ๊ฐ์ ๋ํด ํญ์ ๊ฐ์ UUID๊ฐ ์์ฑ๋ฉ๋๋ค.
4. ์ธ์ UUID v4๋ฅผ ์จ์ผ ํ ๊น?
๋๋ถ๋ถ์ ์น ์ ํ๋ฆฌ์ผ์ด์ , ํนํ ์ฌ์ฉ์ ์ธ์ ID, ํธ๋์ญ์ ID, ํ์ผ๋ช ๋ฑ์ ์์ฑํ ๋ UUID v4๊ฐ ๊ฐ์ฅ ์ ํฉํฉ๋๋ค. ์ถฉ๋ ํ๋ฅ ์ ๋ก๋ 1๋ฑ์ ์์ญ ๋ฒ ์ฐ์ ๋น์ฒจ๋ ํ๋ฅ ๋ณด๋ค ๋ฎ์ผ๋ฏ๋ก ์์ฌํ๊ณ ์ฌ์ฉ์ ๋ ๋ฉ๋๋ค.
์ง๊ธ ๋ฐ๋ก UUID ์์ฑ๊ธฐ๋ฅผ ํตํด ์์ ํ ์๋ณ์๋ฅผ ๋ง๋ค์ด๋ณด์ธ์.