【发布时间】:2016-07-14 09:52:21
【问题描述】:
使用 HDP 2.4 和 HAWQ 2.0
想要将保存在HDFS路径中的json数据读入HAWQ外部表中?
按照以下步骤将新的 json 插件添加到 PXF 中并读取数据。
从以下位置下载插件“json-pxf-ext-3.0.1.0-1.jar” https://bintray.com/big-data/maven/pxf-plugins/view#
将插件复制到路径/usr/lib/pxf。
-
创建外部表
创建外部表 ext_json_mytestfile ( created_at TEXT, id_str TEXT, text TEXT, source TEXT, "user.id" INTEGER, “user.location”文本, “坐标。类型”文本, "coordinates.coordinates[0]" 双精度, “coordinates.coordinates[1]” 双精度) 位置('pxf://localhost:51200/tmp/hawq_test.json' '?FRAGMENTER=org.apache.hawq.pxf.plugins.hdfs.HdfsDataFragmenter' '&ACCESSOR=org.apache.hawq.pxf.plugins.json.JsonAccessor' '&RESOLVER=org.apache.hawq.pxf.plugins.json.JsonResolver' '&ANALYZER=org.apache.hawq.pxf.plugins.hdfs.HdfsAnalyzer') 格式化“自定义”(格式化=“pxfwritable_import”) 将错误记录到 err_json_mytestfile 段拒绝限制 10 行;
当执行上述DDL表创建成功时。之后尝试执行选择查询
select * from ext_json_mytestfile;
但出现错误:-
ERROR: remote component error (500) from 'localhost:51200': type Exception report message java.lang.ClassNotFoundException: org.apache.hawq.pxf.plugins.json.JsonAccessor description 服务器遇到内部错误阻止它从满足这个要求。异常 javax.servlet.ServletException: java.lang.ClassNotFoundException: org.apache.hawq.pxf.plugins.json.JsonAccessor (libchurl.c:878) (seg4 sandbox.hortonworks.com:40000 pid=117710) (dispatcher.c :1801) 详情:外部表 ext_json_mytestfile
任何帮助将不胜感激。
【问题讨论】:
标签: hortonworks-data-platform greenplum hawq