将原始数据拆分为列

时间:2014-05-08 06:52:36

标签: hadoop mapreduce apache-pig

这是我的示例日志文件中的一行

  

[Sun Mar 7 16:05:49 2004] [info] [client 64.242.88.10](104)通过对等方重置连接:客户端在发送主体完成之前停止连接

大多数线具有相同的固定长度,在SAS中我曾经根据位置/位置将其拆分。例如,2-24中的字符将是TimeStamp列,29-31将是MessageType,依此类推。

有没有办法在Pig / MapReduce中进行相同类型的基于位置的拆分或如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

是的。在Map Reduce代码中有类似

的代码
 @Override   public void map(LongWritable key, Text value, Context
 context) throws IOException, InterruptedException {

     String fields = value.toString();
      // use the start and end index based on your needs
      String date = fields.substring(2,3);

     .........