Split Size Hint

MaxCompute支持通过调整Split Size控制并发度,调整计算性能。Split Size功能可以作用到表级别。指定的值单位为MB,默认值为256 MB。

注意事项

  • Hint对于Cluster表,如果优化中使用Cluster的分桶属性,那么Split Size Hint会失效。

  • Split Size的值按照256 MB的倍数进行调整,例如512 MB。

  • 一个SQL中有重复读同张表,那么Hint会被合并为指定的最小值。

    • SQL中有两个读表src的地方,一个Hint1MB一个为10MB,那么最后会按照1MB来切分。

    • SQL中有两个读表src的地方,一个Hint1MB一个没有,那么最后会按照1MB来切分。

使用场景

  • 当作业有很多子任务等待资源,却又无法申请到更多资源时,可以通过调高Split Size值,减少并发度,节省起停子任务的时间。

  • 当并发度比较低且当前执行的子任务运行较长时间没有出结果,而资源池中还有很多资源时,可以调低值来提高并发度,缩短整个作业的运行时间。

使用示例

--设置split size大小为1 MB,hint会在读表src时,按照1M的大小来切分task
SELECT a.key FROM src a /*+split_size(1)*/ JOIN src2 b ON a.key=b.key;