问题
Apachespark作业正确触发,但在启动前长时间闲置
Spark工作运行良好一阵子,但在恢复前闲置很长时间
症状包括:
- 分组缩放最小数工节点闲置时间
- 驱动日志闲置时不显示spark作业,但有元数据重复信息
- Ganglia只在驱动节点显示活动
- 执行器日志显示无活动
- 过段时间后,集群升级和spark作业启动或恢复
因果
这些症状显示,在这个工作段段内有大量文件扫描操作表读取下游操作
文件扫描操作细节审查sparkUISQL标签查询似已完成, 令查询似空闲期间未执行工作
驱动节点繁忙,因为它执行文件列表处理数据这项工作只在驱动节点上发生,正因如此,你在此时间只看到Ganglia矩阵中的驱动节点活动
问题越大越大
求解
文件大小和文件数应用预处理步骤控制源址也可以分解进数小步数,所以小数文件同时扫描
另一种选择是迁移数据存储点到三角湖,Delta湖使用事务日志作为所有底层文件索引