从Hive表中检索JSON原始文件数据

问题描述 投票:0回答:1

我有一个JSON文件。我只想将选定的字段移到Hive表。因此,下面是我用来创建新表以将数据从JSON文件导入到HIVE表的语句。创建它时不会给出任何错误,但是当我使用JsonFile1中的select *或JsonFile1中的count(*)时,我得到了错误[几天以来,我一直在浏览与此相关的互联网。我找不到解决方案。我检查了HDFS。我看到有一个表已创建,并且完整文件按原样导入(不仅是我选择的字段,还包括所有字段)。我只是提供了示例数据,实际数据包含了50多个字段名。创建所有列名很麻烦。那是我们需要做的吗?预先谢谢你。

CREATE EXTERNAL TABLE JsonFile1(user STRUCT<id:BIGINT,description:STRING, followers_count:INT>) ROW FORMAT SERDE 'com.cloudera.hive.serde.JSONSerDe' LOCATION 'link/data';
我有以下数据

{filter_level“:” low“,geo”:null,“ user”:{“ id”:859264394,“ description”:“我不想要它。构建#techteam,#LetsTalk !!! def @ abc .com”,“ contributors_enabled”:否,“ profile_sidebar_border_color”:“ C0DEED”,“名称” krogmi“,“ screen_name”:“ jkrogmi”,“ id_str”:“ 859264394”,}} 06:20:16 +0000 2012“,” default_profile_image“:false,” followers_count“:88,“ profile_sidebar_fill_color”:“ DDFFCC”,“ screen_name”:“ abc_abc”}}

hive
1个回答
0
投票
回答我自己的问题。我已经删除了我在LOCATION'...'中指向的hdfs中的数据,再次将数据从本地复制到hdfs,并再次创建了表,该表可以正常工作。我以为数据就是问题。
© www.soinside.com 2019 - 2024. All rights reserved.