因此,我有一个包含三个节点的Hadoop集群。 Vertica位于群集中。在HDFS上有Parquet文件(由Hive分区)。我的目标是使用Vertica查询这些文件。通过Vertica查询Parquet数据(Vertica Hadoop集成)
现在我所做的是使用HDFS连接器,基本都在Vertica的创建外部表,然后将其链接到HDFS:
CREATE EXTERNAL TABLE tableName (columns)
AS COPY FROM "hdfs://hostname/...../data" PARQUET;
由于数据量是很大的。这种方法不会达到良好的性能。
我做了一些研究,Vertica Hadoop Integration
我已经试过HCatalog但在我的Hadoop的一些配置错误,这样不工作。
我的用例是不改变HDFS(Parquet)上的数据格式,而使用Vertica查询它。任何想法如何做到这一点?
编辑:Vertica性能低下的唯一原因是因为它不能使用Parquet的分区。使用更高版本的Vertica(8+),它现在可以使用配置单元的元数据。所以没有HCatalog需要。
你好莫妮卡!你救了我的命!是的,我的Parquet数据由Impala分区(月,日)。但我的Vertica版本是7.2.3。我必须升级Vertica,以便它可以使用您所写的查询吗? – Jesse
@Jesse在8.0.1中添加了PARQUET(和ORC)的hive_partition_cols参数。 (对不起,我以为你可能已经在使用8.0了,因为我不记得之前支持的hdfs URI方案,但我想我错了。) –
是hdfs URI被支持,但hive_partition_cols不支持。我正在升级我的Vertica。非常感谢! – Jesse