我使用以下配置单元查询:
hive> INSERT OVERWRITE LOCAL DIRECTORY "gs:// Google/Storage/Directory/Path/Name" row format delimited fields terminated by ','
select * from <HiveDatabaseName>.<HiveTableName>;
我得到以下错误:
"Error: Failed with exception Wrong FS:"gs:// Google/Storage/Directory/PathName", expected: file:///
我会做错什么?
2条答案
按热度按时间7tofc5zh1#
hive中有一个bug,包括iirc Hive1.2.1,它使用配置的
fs.default.name
或者fs.defaultFS
对于它的scratchdir,即使表路径位于不同的文件系统中。在您的情况下,似乎您有现成的默认设置fs.defaultFS
至file:///
,这就是为什么它说“expected:file://”。在分布式hadoop集群上,您可能会看到它说“expected:hdfs://...“相反。您可以通过重写
fs.default.name
以及fs.defaultFS
:您可能还需要修改
core-site.xml
文件指向你的地面军事系统的位置,使它更容易。eulz3vhy2#
删除
Local
从你的语法。请参见下面的语法