主要观点总结
本文介绍了在阿里云MaxCompute(ODPS)平台上对SQL任务进行优化的方法,特别是在大数据处理和分析场景下的性能优化。文章涵盖了SQL优化的各个方面,包括logview的使用、常见原因、实战案例等。
关键观点总结
关键观点1: Logview的使用和定位问题的方法
介绍了如何通过Logview查看Fuxi Job Dag图、Fuxi Task和Fuxi Instance等信息,以及定位问题的一般步骤和小技巧。
关键观点2: SQL运行慢的常见原因
列举了导致SQL运行缓慢的几个常见原因,包括资源紧张、参数设置不合理、SQL语句不当、数据倾斜等。
关键观点3: SQL任务优化实战
介绍了几种SQL任务优化的实战方法,包括大表join小表的优化、用双重group by代替count(distinct)、进阶版本处理多重count distinct、临时表较大进行拆分、合理采用UDF函数、Hash分桶优化等。
关键观点4: 结语
总结了大数据处理和分析场景下数据治理的重要性,并分享了业务实战中常见慢SQL场景和优化方式。
文章预览
阿里妹导读 这篇文章主要探讨了如何在阿里云MaxCompute(原ODPS)平台上对SQL任务进行优化,特别是针对大数据处理和分析场景下的性能优化。 一、前言:SQL从提交到运行 SQL代码提交到ODPS上后,会经过一段时间的运行,得到最终的运行结果。SQL优化,就是对这个运行过程进行优化,主要表现在: 缩短运行时间、减小运行消耗成本 。在正式进行任务优化之前,可以先了解ODPS上SQL从提交到运行的整个链路。 先看看我们熟悉的ODPS,作为阿里巴巴自主研发的大数据处理平台,ODPS提供海量数据的计算处理和分析服务,使用户不用了解数据计算存储细节,而可以直接进行数据查询和处理。下图简单介绍了ODPS的组成及ODPS上提交作业和运行作业流程。 MaxCompute(ODPS)四大组成部分: ODPS上提交作业和运行作业流程图: 二、优化第一步,先看logview Logview查看:
………………………………