distribute by f(col):
控制数据经过map后如何分给reduce的,
把数据按照col列(以及总共reduce个数,默认是采用hash算法)分散到不同的reduce,即col值经过hash后相同的数据会被分到同一个reduce,当然这里我用的f(col),表示划分的可以是任何col的函数如length等。
group by f(col):
用于分类所有记录结果的特定集合列,查询一组记录,后续通常有聚合操作如count(*)等。
sort by f(col)
每个reduce上面输出的数据有序。
order by f(col)
全部reduce上面输出的数据有序。
cluster by f(col)
等于distribute by f(col) + sort by f(col)。