0

所以我试图通过 HUE web interface 使用 Hive 将我的日志文件导入到 hadoop 集群中。日志文件的格式是

"/log/apache/apache91" "10.93.123.135" "8081" "12.93.145.7" "12.93.123.7" "/index.html" ""  "114" "111211" "21111" "200" "200" "[14/Mar/2013:23:00:15 -0400]" "-" "-" "-" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)" "-" "-" "-" "-" 

所以我尝试使用 HUE 中的自动表创建,使用引号作为分隔符。但这给了我每隔一列的空列。我理解为什么会因为分隔符而发生这种情况。有没有办法在没有空列的情况下导入数据,或者我可以删除空列,或者我可以从现有表中创建一个新表并提取我想要的唯一数据。

我有很多数据要导入。如果有人对我有更好的解决方案,我会对此持开放态度。

4

1 回答 1

0

Hive 仅支持一个字符作为分隔符,因此您确实需要一个字段分隔符或 TSV/CSV 格式。

也许您可以配置记录器的分隔符(切换到 TAB 或逗号而不是空格)并且您不需要预处理步骤。

于 2013-08-08T15:48:52.410 回答