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。
- 快速生成聚合数据。
- 保障分析可复现。