跳转至

DuckDB 与 Parquet 方案

1. 为什么考虑 DuckDB

DuckDB 是面向分析场景的本地数据库,适合在电脑上直接分析 CSV、Parquet 等文件。它可以用 SQL 查询大文件,不需要先把数据导入大型数据库。

官方文档参考:

  • DuckDB CSV 文档:https://duckdb.org/docs/stable/data/csv/overview.html
  • DuckDB Parquet 文档:https://duckdb.org/docs/stable/data/parquet/overview.html

2. 推荐原因

  • SQL 比复杂 pandas 分组更容易给队员解释。
  • 可直接读取多个 CSV 分片。
  • 适合做日、小时、类目等聚合。
  • 可把中间结果导出为 Parquet 或 CSV。
  • 本地运行,不需要服务器数据库。

3. 推荐数据流程

原始 CSV
  -> DuckDB / Python 清洗
  -> 清洗明细 Parquet
  -> 聚合指标表 CSV/XLSX
  -> HTML 看板 / BI 工具 / 报告

4. 适合用 DuckDB 做的查询

  • 统计总记录数。
  • 统计各行为类型分布。
  • 按日期和小时聚合 PV、UV、buy。
  • 统计类目 Top 排行。
  • 过滤观察期外记录。
  • 生成看板用宽表。

5. 什么时候不强制使用

如果队员完全不熟悉 SQL,且 Python 分块脚本已经能跑通,可以不强行切换。DuckDB 是增强方案,不是主线必须项。

6. 与 Excel 的关系

Excel 更适合:

  • 展示最终指标表。
  • 做透视表。
  • 给老师快速查看结果。

DuckDB 更适合:

  • 处理原始大 CSV。
  • 快速生成聚合数据。
  • 保障分析可复现。