分享

hadoop面试题,测试一下你的实力

 
pig2 发表于 2013-11-10 23:18:07 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 62 139339
cxzdy 发表于 2015-11-26 01:30:20
楼主,好像手机基站那道题的数据格式有问题。跑成功发现没结果,执行jar的时候看到任务那Map的输出记录为0。拿一行数据测试发现有些列不是\t。
13429100031        22554        8        2013-03-11 08:55:19.151754088        571        571        282        571
13429100082        22540        8        2013-03-11 08:58:20.152622488        571        571        270        571
13429100082        22691        8        2013-03-11 08:56:37.149593624        571        571        103        571
13429100087        22705        8        2013-03-11 08:56:51.139539816        571        571        220        571
13429100087        22540        8        2013-03-11 08:55:45.150276800        571        571        66        571
13429100082        22540        8        2013-03-11 08:55:38.140225200        571        571        133        571
13429100140        26642        9        2013-03-11 09:02:19.151754088        571        571        18        571
13429100082        22691        8        2013-03-11 08:57:32.151754088        571        571        287        571
13429100189        22558        8        2013-03-11 08:56:24.139539816        571        571        48        571
13429100349        22503        8        2013-03-11 08:54:30.152622440        571        571        211        571
回复

使用道具 举报

yyb_bj 发表于 2016-1-28 14:00:23
upupupupupupupupupupupupupupupupupup
回复

使用道具 举报

hamlai 发表于 2016-2-17 16:28:10
回复,求答案。其实我是个初学者
回复

使用道具 举报

abner_K2jFv 发表于 2016-6-23 15:33:17
pig2 发表于 2013-11-11 13:37
这是about云(39327136)群友提供,有什么有问题的地方大家一起讨论一下。

1. 考虑后,决定使用 MR 来 ...

  •                 for (Record r2 : result) {
  •                     long r2_stop_time = r2.start_time + r2.stay_time;
  •                     if (r1.start_time > r2.start_time && r1.start_time <= r2_stop_time && r1_stop_time > r2_stop_time) {
  •                         //  merge the new slice
  •                         r2.stay_time = r1_stop_time - r2.start_time;
  •                         found = true;
  •                     }
  •                 }
  •                 if (!found) {
  •                     result.add(r1);
  •                 }
  •             }这个应该有问题应该改成
  • for (Record r2 : list) {
  •                     long r2_stop_time = r2.start_time + r2.stay_time;
  •                     if (r1.start_time > r2.start_time && r1.start_time <= r2_stop_time && r1_stop_time > r2_stop_time) {
  •                         //  merge the new slice
  •                         r2.stay_time = r1_stop_time - r2.start_time;
  •                         found = true;
  •                     }
  •                 }
  •                 if (!found) {
  •                     result.add(r1);
  •                 }

回复

使用道具 举报

xw2016 发表于 2016-7-5 09:38:16
不错,来测试一下。
回复

使用道具 举报

狂乱桂公子 发表于 2017-3-22 18:09:56
本帖最后由 狂乱桂公子 于 2017-3-22 18:22 编辑

hive来做应该比较简单:
select * from table_name distribute BY product_no sort by start_time desc;
回复

使用道具 举报

zuoseven 发表于 2017-4-6 11:48:58
要学习学习
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条