在Hive中使用key = value对导入平面文件

时间:2014-02-07 03:11:13

标签: hadoop hive

我在HDFS中有原始文件,格式为

  

name = ABC age = 10 Location = QWERTY
  name = DEF年龄= 15位置= IWIORS

如何将这些平面文件中的数据导入到仅包含列'name'和'location'的Hive表中。

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作。

在表格声明中,使用:

ROW FORMAT DELIMITED
        FIELDS TERMINATED BY ' ' --space
        MAP KEYS TERMINATED BY '='

此外,您的表格将包含一个数据类型为Map的列。

因此,当您可以使用密钥从单列中退出数据时。

其他选择: 写你自己的SerDe。下面的链接解释了JSON数据的过程。我相信您可以根据您的要求进行自定义: http://blog.cloudera.com/blog/2012/12/how-to-use-a-serde-in-apache-hive/