0

以下 hive 查询在单个列上查找领先和滞后。该查询产生 1 个 Mapper 和 50 个 Reducer。我如何优化查询以减少产生的减少。

表说明

col_name        data_type       comment
# col_name              data_type               comment

a                       int

故事中的数据

 select * from foo;
OK

 foo.a 1 2 3 4 5 6 3 4 6 78 9 7 NULL

select lag(a,1) over (order by a) as next,lead(a,1) over (order by a) as prev from foo;

查询 ID = phodisvc_20170403015502_de129135-eb19-4c4d-8161-c3f217a45928 总作业 = 1 正在启动作业 1 / 1 未指定减少任务的数量。默认为 jobconf 值:50 为了更改减速器的平均负载(以字节为单位):设置 hive.exec.reducers.bytes.per.reducer= 为了限制减速器的最大数量:设置 hive.exec。 reducers.max= 为了设置一个恒定数量的reducer: set mapreduce.job.reduces= Kill Command = /opt/mapr/hadoop/hadoop-2.7.0/bin/hadoop job -kill job_1489146839620_136214 Hadoop job information for Stage- 1:映射器数量:1;减速机数量:50

4

0 回答 0