linbo_eman 2016-12-20 11:05 采纳率: 100%
浏览 1421

hadoop mapreduce 统计所有的key-value中value为空的数目

遇到一个问题,望大家有空可以帮忙看看,小弟感激不尽!

现在在做信令解析,有一条信令:[2016-04-02 09:58:09,724] len:78;type:1002;msc:0E1F;bsc:3F17;time:2016-04-01 16:48:46.494;lac:13883;ci:8713;imsi:460004544938252;msisdn:13994482976;callType:0;disLen:11;disMsisdn:13503531697;remark:0;

map0:
输入:一条信令(上面那一条)
通过解析,得到一个Object
输出:key:imsi

value:{imsi:460004544938252,msisdn:13994482976}

reduce0:
输入:key:imsi
value:List<> {imsi:460004544938252,msisdn:''},{imsi:460004544938252,msisdn:13994482976},{imsi:460004544938252,msisdn:''}

在这里我想统计一下:
1、所有的msisdn为空的个数
2、imsi对应的msisdn为空的个数(List里的msisdn全为空计1)

现在问题是:要把统计的值(一行:日期 | 呼叫总量 | IMSI未解析总呼叫次数 | 占比1 | 总IMSI | 未解析总IMSI数 | 占比2)写到文件中,怎么判断我读的是最后一条信令呢?如果不行的话,把这个reduce的结果传给第二个mapreduce统计怎么实现呢?

希望有空的朋友多多指点!谢谢

  • 写回答

1条回答 默认 最新

  • dabocaiqq 2016-12-20 16:35
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 怎么获取下面的: glove_word2id.json和 glove_numpy.npy 这两个文件
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 oracle集群安装出bug