如何使用输入日志.PCAP(二进制)与Mapreduce Hadoop

时间:2009-08-07 14:45:34

标签: hadoop input

日志Tcpdumps是二进制文件,我想知道hadoop的FileInputFormat我应该用于分割块的输入数据......请帮助我!!

3 个答案:

答案 0 :(得分:2)

用户列表中有一个关于此的线程: http://hadoop.markmail.org/search/list:org%2Eapache%2Ehadoop%2Ecore-user+pcap+order:date-forward

基本上,格式不可拆分,因为您无法找到从文件中任意偏移量开始的记录的开头。所以你必须做一些预处理,插入同步点或类似的东西。也许将较小的文件转换为sequencefiles,然后合并小的sequencefile?

如果您最终写出可重复使用的内容,请考虑回馈该项目。

答案 1 :(得分:1)

编写一个读取PCAP文件的InputFormat,为密钥(文件中的第n个数据包)返回类似LongWritable的内容,并返回PacketWritable作为值(包含PCAP数据)。对于InputSplit,您可以使用FileSplit或MultiFileSplit来获得更好的性能,因为可以非常快速地读取单个PCAP文件。

除非你的块大小超过pcap文件的大小,否则你会遇到很多网络IO ......

答案 2 :(得分:1)

我们最近发布了一个PCAP格式文件库:https://github.com/RIPE-NCC/hadoop-pcap