我是新来的,我想用Apache hive分析推文。我能够检索在csv.文件的推文
然后我简单地创建一个表Create external table if not exists tweets 3(id bigint,text string)ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde';
enter image description here
然后我在文本列中使用split函数创建另一个表。
如果不存在则创建表split_word as select id as id,split(text,' ')as words from tweets 3;
但是当我运行query select * from split_word时,这是我看到的enter image description here单词没有分隔
我对这个很陌生。请帮
我想也许我应该尝试用json格式保存tweet?
1条答案
按热度按时间gudnpqoy1#
我有更好的解决办法。你可以在tweet中有100个单词,所以你需要创建许多列。您可以使用单词创建行而不是列。
例如,字符串
'Air canada is bad...'
看起来像这样-解决方案-
1.首先,我们将整个推文拆分成一组单词,就像你的解决方案一样。
1.然后分解数组以获得不同行中的单个单词。
现在,如果你愿意,你可以很容易地将这些数据透视到不同的列中,但我不认为这会有用,但它符合你的要求。