SQLite ํ๋ก์ ํธ ๊ฐ๋ฐ์๋ค์ ํ ์์ค ์ ๊ธ์ ์ง์ํ๊ณ ์ฟผ๋ฆฌ ์ฒ๋ฆฌ ์ ๋์ ์์ค์ ๋ณ๋ ฌ์ฑ์ ์ ๊ณตํ๋ ์คํ์ฉ HCtree ๋ฐฑ์๋ ํ ์คํธ๋ฅผ ์์ํ์ต๋๋ค. ์ด ์๋ก์ด ๋ฐฑ์๋๋ ๋๋์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฐ๊ธฐ ์ฟผ๋ฆฌ๋ฅผ ๋์์ ์ฒ๋ฆฌํด์ผ ํ๋ ํด๋ผ์ด์ธํธ-์๋ฒ ์์คํ ์์ SQLite ์ฌ์ฉ์ ํจ์จ์ฑ์ ๋์ด๋ ๊ฒ์ ๋ชฉํ๋ก ํฉ๋๋ค.
SQLite์์ ์๋ ๋ฐ์ดํฐ ์ ์ฅ์ ์ฌ์ฉ๋์๋ B-ํธ๋ฆฌ ๊ตฌ์กฐ๋ ์ด๋ฌํ ์ ํ์ ๋ถํ์ ๋ง์ถฐ ์ค๊ณ๋์ง ์์๊ธฐ ๋๋ฌธ์ SQLite๋ ๋จ ํ๋์ ์ค๋ ๋์๋ง ์ฐ๊ธฐ ์์ ์ ์ํํ ์ ์์ต๋๋ค. ๊ฐ๋ฐ์๋ค์ ์คํ์ ์ผ๋ก ์ฐ๊ธฐ ์์ ์ ๋ณ๋ ฌ ์ฒ๋ฆฌ์ ๋ ์ ํฉํ HC-ํธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ์ ์ฅ์ ์ฌ์ฉํ๋ ๋์ฒด ์๋ฃจ์ ์ ๊ฐ๋ฐํ๊ธฐ ์์ํ์ต๋๋ค.
HCtree์์ ์ฌ๋ฌ ์์ ์ ๋์์ ์คํํ๊ธฐ ์ํด ํธ๋์ญ์ ๋ถํ ๋ฉ์ปค๋์ฆ์ด ์ฌ์ฉ๋ฉ๋๋ค. ์ด ๋ฉ์ปค๋์ฆ์ ํ์ด์ง ์์ค ์ ๊ธ์ ์ฌ์ฉํ๊ณ MVCC(๋ค์ค ๋ฒ์ ๋์์ฑ ์ ์ด)์ ์ ์ฌํ์ง๋ง, ํ์ด์ง ์งํฉ ๋์ ํค์ ํค ๋ฒ์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํธ๋์ญ์ ๊ฒ์ฌ๋ฅผ ์ํํฉ๋๋ค. ์ฝ๊ธฐ ๋ฐ ์ฐ๊ธฐ ์์ ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ค๋ ์ท์ ๊ธฐ์ค์ผ๋ก ์ํ๋๋ฉฐ, ๋ณ๊ฒฝ ์ฌํญ์ ํธ๋์ญ์ ์ด ์๋ฃ๋ ํ์๋ง ์ฃผ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ํ์๋ฉ๋๋ค.
ํด๋ผ์ด์ธํธ๋ ์ธ ๊ฐ์ง ๊ฑฐ๋ ๊ฐ์ ์์ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- "BEGIN" โ ํธ๋์ญ์ ์ ๋ค๋ฅธ ํด๋ผ์ด์ธํธ์ ์ก์ธ์ค ๊ด๋ จ ๋ฐ์ดํฐ๋ฅผ ๊ณ ๋ คํ์ง ์์ต๋๋ค. ํธ๋์ญ์ ๋ด์์ ์ฐ๊ธฐ ์์ ์ด ์คํ๋๋ ๊ฒฝ์ฐ, ์คํ ์ค ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ค๋ฅธ ์ฐ๊ธฐ ์์ ์ด ์๋ ๊ฒฝ์ฐ์๋ง ํธ๋์ญ์ ์ด ์ปค๋ฐ๋ ์ ์์ต๋๋ค.
- "BEGIN CONCURRENT" โ ํธ๋์ญ์ ์ ๋ค๋ฅธ ํด๋ผ์ด์ธํธ์ ์ก์ธ์ค ์ ๋ณด๋ฅผ ์์งํฉ๋๋ค. ํธ๋์ญ์ ๋ด์์ ์ฐ๊ธฐ ์์ ์ด ์ํ๋๋ ๊ฒฝ์ฐ, ์ค๋ ์ท ์์ฑ ์ดํ ๋ค๋ฅธ ํธ๋์ญ์ ์ด ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ์ปค๋ฐ๋ ๊ฒฝ์ฐ ํด๋น ํธ๋์ญ์ ์ด ์ปค๋ฐ๋ ์ ์์ต๋๋ค.
- "๋ ์ ์์" - ๊ฑฐ๋๋ฅผ ์์ํ ํ ํด๋น ๊ฑฐ๋๊ฐ ์๋ฃ๋ ๋๊น์ง ๋ค๋ฅธ ๊ฑฐ๋์ ์์ ์ ์ฐจ๋จํฉ๋๋ค.
HCtree๋ ๋ง์คํฐ-์ฌ๋ ์ด๋ธ ๋ณต์ ๋ฅผ ์ง์ํ์ฌ ํธ๋์ญ์
์ ๋ค๋ฅธ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ก ๋ง์ด๊ทธ๋ ์ด์
ํ๊ณ ๋ณด์กฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ๋ณธ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋๊ธฐํ๋ฅผ ์ ์งํฉ๋๋ค. HCtree๋ ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํฌ๊ธฐ ์ ํ์ ์ ๊ฑฐํฉ๋๋ค. HCtree๋ 32๋นํธ ๋์ 48๋นํธ ๋ฐ์ดํฐ ํ์ด์ง ์๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ต๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค ํฌ๊ธฐ๋ฅผ 16ํ
๋น๋ฐ์ดํธ์์ 1์์ฌ๋น๋ฐ์ดํธ(XNUMX๋ง ํ
๋น๋ฐ์ดํธ)๋ก ๋๋ฆฝ๋๋ค. HCtree ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ๋ SQLite์ ์ฑ๋ฅ์ ๊ธฐ์กด ๋จ์ผ ์ค๋ ๋ ๋ฐฑ์๋์ ํฌ๊ฒ ๋ค๋ฅด์ง ์์ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. HCtree๋ฅผ ์ง์ํ๋ SQLite ํด๋ผ์ด์ธํธ๋ HCtree ๊ธฐ๋ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ธฐ์กด SQLite ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋์ ์ก์ธ์คํ ์ ์์ต๋๋ค.
์ถ์ฒ : opennet.ru
