presto不从配置单元元数据库返回行

xdyibdwo  于 2021-06-02  发布在  Hadoop
关注(0)|答案(1)|浏览(370)

我对aws emr很陌生。我已经启动并运行了配置单元,并且一直在s3中查询外部表,没有任何问题。我现在已经将presto安装到emr集群上,它似乎已经启动并运行,并且可以读取hive元数据库。但是,我运行的每个查询都返回列标题,但实际上不返回任何列(下面的查询)。

presto:default> select count(*) from patrequests;
 _col0
-------
     0
(1 row)

Query 20171113_163811_00033_vdw6c, FINISHED, 1 node
Splits: 17 total, 17 done (100.00%)
0:00 [0 rows, 0B] [0 rows/s, 0B/s]

配置单元中的同一查询运行正常:

hive> select * from patrequests limit 10;
OK
2017-10-01T00:00:18.6772628Z    779   ***************  *****    2017    10
Time taken: 2.876 seconds, Fetched: 10 row(s)

数据以json格式存储在s3 bucket中-没有嵌套。
非常感谢您的帮助。
谢谢

nfzehxib

nfzehxib1#

问题似乎出在json serde org.openx.data.jsonserde.jsonserde对presto不可用。从s3存储桶中使用以下内容引导示例似乎可以解决问题:


# !/bin/bash

wget -P /usr/lib/presto/plugin/hive-hadoop2/  'https://s3-eu-west-1.amazonaws.com/########/json-serde-1.3.9-SNAPSHOT-jar-with-dependencies.jar';
wget -P /usr/lib/hive-hcatalog/share/hcatalog/ 'https://s3-eu-west-1.amazonaws.com/########/json-serde-1.3.9-SNAPSHOT-jar-with-dependencies.jar';

相关问题