Discussion on why SQLite is gaining popularity [audio]
Transcription and tooling
- Some prefer reading to listening and point to the official transcript, but several note it has many errors.
- Speculation and light reverse‑engineering suggest a commercial STT service plus references to other tooling (e.g., Whisper, prior episodes explaining workflow).
Has SQLite “taken over”?
- Many argue SQLite has already been the most deployed DB for years (browsers, phones, apps, vehicles, etc.).
- Others say the “taking over” framing is misleading: it dominates embedded/local use, not classic multi‑user client–server workloads.
Strengths and sweet spots
- Single‑file DB, mental simplicity, and ease of backup are repeatedly praised.
- Embedded/local data store for desktop, mobile, and single‑server web apps is a common use; often “more than enough” for small and medium traffic.
- WAL mode plus SSD/NVMe yields surprisingly high write throughput for many real‑world apps.
- Popular as an application file format and serialization layer (Audacity projects, scientific/industrial formats, games, message queues), with advantages over ad‑hoc binary or JSON formats.
- “Competes with fopen,” not with big RDBMSes, in many people’s framing.
Limitations and pain points
- Concurrency: single‑writer model and lack of network awareness make it a poor fit for multi‑node, high‑concurrency, multi‑tenant systems.
- Replication and HA must be bolted on (Litestream, rqlite, Turso, Cloudflare D1); some see this as clever, others as missing the point of SQLite.
- Features: missing stored procedures, limited DDL (schema migrations often require table copies), no real parallel query execution, single large file scaling issues.
- SQLite itself warns against network filesystems and recommends client–server DBs when data is accessed over a network.
Ecosystem, web, and tooling
- Browser story: IndexedDB is native, but wasm‑based SQLite is seen as viable for heavier client‑side apps, with debate about download size.
- Some like “SQLite everywhere” stacks, possibly with a thin API layer, while others argue that extra API hops create unnecessary complexity and latency.
- Versioning SQLite‑backed formats requires special tooling (SQL dumps, custom diff tools) and careful handling of journal/WAL files to avoid user confusion and corruption.
Broader architectural debate
- Strong current against premature “web‑scale” overengineering; single powerful server + SQLite is often deemed more than sufficient.
- Skeptics call the hype overblown and insist a dedicated DB server is the professional default for app backends.