libSQL ํ๋ก์ ํธ๋ ์ปค๋ฎค๋ํฐ ๊ฐ๋ฐ์ ์ฐธ์ฌ์ ๋ํ ๊ฐ๋ฐฉ์ฑ๊ณผ SQLite์ ์๋ ๋ชฉ์ ์ ๋์ด์๋ ํ์ ์ด์ง์ ์ด์ ์ ๋ง์ถ SQLite DBMS์ ํฌํฌ๋ฅผ ๋ง๋ค๋ ค๊ณ ์๋ํ์ต๋๋ค. ํฌํฌ๋ฅผ ๋ง๋๋ ์ด์ ๋ ๊ฐ์ ์ ์ด์งํด์ผ ํ๋ ๊ฒฝ์ฐ ์ปค๋ฎค๋ํฐ์์ ํ์ฌ ์ฝ๋๋ฅผ ํ์ฉํ๋ ๊ฒ๊ณผ ๊ด๋ จ๋ SQLite์ ์๋นํ ์๊ฒฉํ ์ ์ฑ ๋๋ฌธ์ ๋๋ค. ํฌํฌ ์ฝ๋๋ MIT ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค(SQLite๋ ๊ณต๊ฐ ๋๋ฉ์ธ์ผ๋ก ๋ฆด๋ฆฌ์ค๋ฉ๋๋ค).
ํฌํฌ ์์ฑ์๋ ์ฃผ์ SQLite์์ ํธํ์ฑ์ ์ ์งํ๊ณ ๋์ผํ ์์ค์ ํ์ง์ ์ ์งํ๋ฉด์ ์ผ๋ จ์ ํ ์คํธ ์ฌ๋ก๋ฅผ ์ ์งํ๊ณ ํ์ ์ด ์ถ๊ฐ๋จ์ ๋ฐ๋ผ ์ ์ฐจ ํ์ฅํ ๊ณํ์ ๋๋ค. ์๋ก์ด ๊ธฐ๋ฅ์ ๊ฐ๋ฐํ๊ธฐ ์ํด์๋ C ์ธ์ด์ ๊ธฐ๋ณธ์ ์ธ ๋ถ๋ถ์ ์ ์งํ๋ฉด์ Rust ์ธ์ด๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒ์ด ์ ์๋์์ต๋๋ค. ๋ณ๊ฒฝ ์ฌํญ ์์ฉ์ ๊ดํ ์ฃผ์ SQLite ํ๋ก์ ํธ์ ์ ์ฑ ์ด ๋ณ๊ฒฝ๋๋ฉด libSQL ๊ฐ๋ฐ์๋ ๋์ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ์ฃผ์ ํ๋ก์ ํธ๋ก ์ ์กํ๊ณ ๊ฐ๋ฐ์ ์ฐธ์ฌํ ๊ณํ์ ๋๋ค.
SQLite ๊ธฐ๋ฅ ํ์ฅ์ ๋ํ ์์ด๋์ด๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ํ์ผ ์์คํ (LiteFS)์ ๋ณ๊ฒฝ ์ฌํญ ๋ณต์ ๋ฅผ ํตํ์ง ์๊ณ ๋ณ๋์ ์ ํ(dqlite, rqlite, ChiselStore)์ ๊ฐ๋ฐํ์ง ์๊ณ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์์ฒด ์์ค์์ ์๋ํ๋ ๋ถ์ฐ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์ถ์ ์ํ ๋๊ตฌ ํตํฉ.
- Linux ์ปค๋์์ ์ ๊ณตํ๋ io_uring ์ธํฐํ์ด์ค์ ๊ฐ์ ๋น๋๊ธฐ API ์ฌ์ฉ์ ๋ํ ์ต์ ํ.
- RAM์ ๋ง์ง ์๋ ์ปค๋์ ๋ฐ์ดํฐ ์ธํธ๋ฅผ ์ ์ฅํด์ผ ํ๋ ์ํฉ์ ๋ํด eBPF ๊ฐ์ ๋จธ์ ์ปค๋ ์ง์๊ณผ ์ ์ฌํ๊ฒ Linux ์ปค๋์์ SQLite๋ฅผ ์ฌ์ฉํ๋ ๊ธฐ๋ฅ์ ๋๋ค.
- ๋ชจ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ก ์์ฑ๋๊ณ WebAssembly ์ค๊ฐ ์ฝ๋๋ก ์ปดํ์ผ๋ ์ฌ์ฉ์ ์ ์ ํจ์๋ฅผ ์ง์ํฉ๋๋ค.
์ถ์ฒ : opennet.ru