使用Scala进行日志解析

时间:2018-04-18 22:46:27

标签: scala apache-spark hive logparser

我们如何使用Scala解析下面的日志类型?
我想阅读这种数据并将其放入Hive表中。

realloc

日志内容实际上是HTML标记< />

1 个答案:

答案 0 :(得分:1)

为什么不能直接在Hive中加载数据日志呢? Use a RegexSerde in Hive

制作目录

hdfs dfs -mkdir -p /some/hdfs/path

制作表格

DROP TABLE IF EXISTS logdata;

CREATE EXTERNAL TABLE logdata (
  timestamp STRING,
  eventCategory STRING,
  eventType STRING,
  )
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe'
WITH SERDEPROPERTIES (
  "input.regex" = "log timestamp=\“([^ ]*)\” eventCategory=\“([^ ]*)\” eventType=\“([^ ]*)\”",
  "output.format.string" = "%1$s %2$s %3$s"
)
STORED AS TEXTFILE
LOCATION '/some/hdfs/path/';

上传您的日志

hdfs dfs -copyFromLocal data.log /some/hdfs/path/

查询表

SELECT * FROM logdata;