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.