离线数仓开发SQL编写和调试的最佳实践(如何又快又好完成任务,学会几条就不用当很辛苦的牛马)
目录
在开发阶段对数据进行抽样
理论基础
实践应用
使用Hive进行数据采样
使用Spark进行数据采样
采用CTE模块化设计
逐步验证
逐步验证案例实践:
验证sales_data CTE:
验证ranked_sales CTE:
验证top_sales CTE:
结论
用Doris或Impala等更快查询的代替Hive
Impala简介和优势
Doris简介和优势
利用大模型进行结对编程
1. 人工编写SQL的挑战
2. 利用大模型生成SQL
3.国内外大模型
4.案例
4.1实现需求,让大模型给出参考sql
4.2遇到问题时不知道怎样解决,可以通过大模型寻找思路
在开发阶段对数据进行抽样
在离线数仓开发中,面临难题是数据量太大,有时一个任务跑完要几个小时,在开发阶段,如果每次要等很久,就会耗费大量时间在等待上。使用Hive或Spark进行数据处理时,采样数据是一种常见的优化手段。通过采样,可以显著提高查询速度,并且方便进行数据的抽样检查以验证正确性。离线数仓的表要分开发环境、预生产环境和生产环境,开发环境的表可以通过精心抽样,这样开发时执行速度就很快。
以下是详细的说明:
理论基础
-
采样原理:
- 采样是从大规模数据集中随机选取一部分数据子集的过程。通过减少数据量,可以加快查询和处理速度。
- 采样可以是随机采样、分层采样或系统采样等。
-
优势:
- 提高查询速度