后端岗位面试题更新 2026-08-05

请描述 AI 万能视频下载总结器项目中的数据库设计方案,并解释选择 SQLite 的原因。

后端开发系统设计技术选型

考察说明

考察候选人对数据库表结构设计、SQLite 特性及其适用场景的理解。

回答思路

  1. 【回答框架 1】SQLite 是一种嵌入式关系型数据库,无需独立服务进程,数据以单个文件存储,适合桌面端、移动端或轻量级应用。其核心优势是零配置、跨平台、事务支持 ACID,且通过 Python 的 sqlite3 标准库即可直接使用,无需额外安装依赖。
  2. 【回答框架 2】在 AI 视频下载总结器项目中,数据库设计通常包含视频任务表、下载状态表、总结结果表等。视频任务表存储视频 URL、标题、状态、创建时间;下载状态表记录下载进度、文件路径、错误信息;总结结果表保存总结文本、模型名称、生成时间。外键关联任务 ID,索引加速 status 和时间字段查询。
  3. 【回答框架 3】选择 SQLite 的原因:单用户或小规模并发场景下,文件锁和写入串行化足以满足需求;无需数据库服务运维,降低部署复杂度;支持事务和常用 SQL 特性,适合项目快速迭代。若未来需要多用户并发写入或分布式部署,可迁移至 PostgreSQL 或 MySQL。
  4. 【关键点 1】SQLite 是嵌入式数据库,零配置、单文件存储,适合轻量级应用。
  5. 【关键点 2】数据库表设计围绕视频任务、下载状态和总结结果,使用外键关联。
  6. 【关键点 3】基于索引优化 status 和时间字段的查询。
  7. 【关键点 4】选择 SQLite 的考虑包括并发要求低、部署简单和事务支持。
  8. 【关键点 5】并发写入或分布式需求出现时,考虑迁移到客户端-服务器型数据库。
  9. 【易错点 1】错误认为 SQLite 适合高并发写入,其写入锁是库级别的。
  10. 【易错点 2】忽视创建索引,导致状态查询慢。
  11. 【易错点 3】未说明与项目规模匹配,可能让面试官觉得缺乏选型权衡。