在hcatalog regex或serde中解析日志文件

6psbrbz9  于 2021-05-30  发布在  Hadoop
关注(0)|答案(1)|浏览(275)

我是hadoop的新手。
我正在尝试将日志文件加载到hcatalog中。以下是我的日志文件的格式。

Time: 2014-10-28 06:32:34Z
UserID: arun
GroupID: admin
Page: welcome.aspx
Message: Login successful

Time: 2014-10-28 06:32:34Z
UserID: arun
GroupID: admin
Page: main.aspx
Message: menu load
..
..

我需要写一个serde来解析它吗?还是可以通过regex来实现?

tcomlyy6

tcomlyy61#

我相信您希望将外部日志文件加载到配置单元表中,其中配置单元元存储由hcatalog服务管理。
如果是这样,首先分析源日志记录中的固定分隔符,这将有助于配置单元将记录解析为所需的n个列,主要是tab(\t)字符。
下一个选项是使用hiveregexserde类和相关的正则表达式从源日志记录实现列解析。
如果regex解析不可行,那么另一个选项是创建定制的hiveserde类来解析源日志文件记录。在自定义serde类的帮助下,hive将能够将分隔的单元格完美地放入hive外部表的相关列中。
请参考,
http://docs.aws.amazon.com/gettingstarted/latest/emr/getting-started-emr-load-data.html
apache hive regex serde:数据类型
http://blog.cloudera.com/blog/2012/12/how-to-use-a-serde-in-apache-hive/

相关问题