我有一个Hive DB - 我创建了一个与Parquet文件类型兼容的表。
CREATE EXTERNAL TABLE `default.table`(
`date` date,
`udid` string,
`message_token` string)
PARTITIONED BY (
`dt` date)
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat'
LOCATION
's3://Bucket/Folder')
我在此表中添加了分区,但我无法查询数据。
在Hive中:我可以在使用"显示default.table"中的分区时看到分区,并且在使用&#34时我得到查询的数量;从default.table&#中选择count(*) 34。
在Presto中:我可以在使用"显示default.table"中的分区时看到分区,但是当我尝试查询数据本身时 - 看起来没有数据 - 空返回使用"选择*",并在尝试&#34时选择0;选择计数(*)"。
Hive群集是AWS EMR,版本:emr-5.9.0,应用程序:Hive 2.3.0,Presto 0.184,实例类型:r3.2xlarge。
有人知道为什么我会在Hive和Presto之间获得这些差异吗? 谢谢!