2015-04-03 21 views
0

一行数据看起来像如何为Hive中的不同列指定不同的分隔符?

"!Next?" (1994)      Italy 

我需要创建3列。

  1. 是封闭与""
  2. 发布日期是封闭与()
  3. 国家那里的电影生产

我需要为每个列指定不同的分隔符的电影名称。

一件重要的事 - 我从文件/home/ap/Downloads/country.list

加载数据这将是巨大的,如果能沿着解释查询的一点点。

在此先感谢...

+0

为什么不先格式化文件,以便您可以有三个具有相同分隔符的列? – amow 2015-04-03 07:28:15

+0

它有近20,000条记录的60Mb文件,我该怎么做 – 2015-04-03 11:24:29

回答

0

使用这种CMD

cat YOUR_FILE_HERE|sed 's/"\(.*\)"\s*(\(.*\))\s*\([^\s].*\)/\1^A\2^A\3/g' > OUTPUT_FILE 

然后加载这个OUTPUT_FILE您的蜂巢表。

记住:

我用\001作为分隔符here.If您更改默认的表的字段终止子,用它来代替^A在我的CMD。
而且^Actrl-v输入,然后ctrl-a而不是^A输入。

相关问题