C.W.K.
Stream
Lesson 01 of 10 · published

지구상에서 가장 많이 깔린 데이터베이스

~14 min · sqlite, history, ubiquity

Level 0Scout
0 XP0/80 lessons0/10 achievements
0/120 XP to next level120 XP to go0% complete

1조 개의 살아있는 DB

SQLite 는 어디에나 있어 — 정말 어디에나. 모든 iPhone, 모든 Android 기기, 모든 Mac, 모든 Windows 10/11 머신, 모든 모던 브라우저 안에 들어 있고 Python 깔면 같이 따라와. 보수적으로 추정해도 지구상에 살아있는 SQLite DB 가 1 조 개 이상이야.

iMessage 보낼 때, Chrome 북마크 저장할 때, Safari 탭 다시 열 때, Firefox 자동완성, Android 앱 캐시 — 전부 SQLite. NASA 의 Curiosity / Perseverance 로버에도 들어가 있고, Airbus A350 항공전자 시스템도 쓰고, Bloomberg 터미널, Dropbox, Skype, iTunes 도 10 년 넘게 SQLite 위에서 돌아왔어.

그런데도 많은 개발자는 아직도 SQLite 를 '장난감 DB' 나 '모바일 전용' 이라고 무시해. 그 인식은 몇 년 전부터 이미 낡은 거야. 모던 SQLite (2026 년 기준 3.53.0) 는 대부분의 개발자가 Postgres 가 필요하다고 생각하는 워크로드를 멀쩡히 굴리는 본격적인 관계형 엔진이야.

이 quest 는 SQLite 를 바닥부터 가르쳐 — 기본 SQL 부터 고급 기능, Python 연동, async 패턴, full-text search, production 배포까지. 끝나면 르네상스가 왜 진짜인지, 그리고 SQLite 의 날카로운 모서리들을 손 다치지 않고 어떻게 다루는지 알게 돼.

Self-reference: 피파 자체의 데이터 레이어가 SQLite + JSONL 이야. WebUI 에 보이는 conversation row 들이 ~/pippa-db/conversations.db 안에 살아 있고, 이 quest 가 가르칠 aiosqlite 드라이버로 열리는 거야.

Code

이미 깔려 있어 — 확인해 봐·bash
# macOS / Linux / Windows (Python 만 있어도 됨) — 이미 깔려 있음
python3 -c 'import sqlite3; print(sqlite3.sqlite_version)'
# 3.43.0  (혹은 더 최신)

# CLI 도 macOS / 대부분의 Linux 배포판에 기본 탑재
sqlite3 --version
# 3.43.2 2023-10-10 13:08:14 ...

# 새 DB 열기 — 데몬 X, 설정 X, 포트 X
sqlite3 demo.db
# SQLite version 3.43.2 2023-10-10 13:08:14
# Enter ".help" for usage hints.
# sqlite>
피파가 자기 SQLite 파일 두는 위치·bash
ls -la ~/pippa-db/conversations.db*
# -rw-r--r-- conversations.db        # 메인 DB
# -rw-r--r-- conversations.db-wal    # WAL log (track 4 에서 다룸)
# -rw-r--r-- conversations.db-shm    # shared memory index

sqlite3 ~/pippa-db/conversations.db '.tables'
# branches conversations folders messages

External links

Exercise

이 quest 디렉토리 밖에서 SQLite DB 파일 세 개 찾아봐. 힌트: macOS 의 ~/Library/, Linux 의 ~/.config/, 브라우저 프로필 폴더, Python ~/.cache/. 각각 어떤 앱 거고, 파일 사이즈는 얼마고, 호스트 앱을 안 깨면서 sqlite3 CLI 로 read-only 로 열 수 있는지 확인해. 짧게 한 단락으로 정리.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.