Java json serde中的Select查询返回空值

Java json serde中的Select查询返回空值,java,mysql,json,hadoop,hive,Java,Mysql,Json,Hadoop,Hive,我的日志文件包含登录输入_至_log.txt的一部分,如下所示: {"agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36", "context":{"course_id":"edx/AN101/2014_T1","module":{"display_name":"Multiple Choice Questions"},"o

我的日志文件包含登录输入_至_log.txt的一部分,如下所示:

{"agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36",
"context":{"course_id":"edx/AN101/2014_T1","module":{"display_name":"Multiple Choice Questions"},"org_id":"edx","user_id":9999999}}
我在配置单元外壳中的查询:

ADD JAR /usr/lib/hive/apache-hive-0.13.0-bin/lib/hive-serde-0.13.0.jar;

CREATE EXTERNAL TABLE edx_lg ( agent STRING,context STRUCT<course_id:STRING,module:STRUCT<display_name:STRING>,org_id:STRING,user_id:INT>)ROW FORMAT SERDE 'org.apache.hadoop.hive.contrib.serde2.JsonSerde' WITH SERDEPROPERTIES("agent"="$.agent","context"="$.context.course_id,$.context.module.display_name,$.context.org_id,$.context.user_id");

load data local inpath '/home/hduser/input_to_log.txt' into table edx_lg;

select agent,context.course_id,context.module.display_name,context.org_id,context.user_id from edx_lg;
推出MapReduce作业:

Job 0: Map: 1   Cumulative CPU: 0.72 sec   HDFS Read: 467 HDFS Write: 30 SUCCESS
Total MapReduce CPU Time Spent: 720 msec
OK
NULL    NULL    NULL    NULL    NULL
NULL    NULL    NULL    NULL    NULL
Time taken: 11.278 seconds, Fetched: 2 row(s)

Select语句返回空值。我应该如何获取表中的数据?

此查询返回什么

select * from edx_lg
检查这是否有帮助:

它正在返回空值,也请选中此复选框,它仍然在返回空值,即使尝试了其他一些示例,但仍然不起作用。。
select * from edx_lg