在 Impala 中创建外部表 - 错误

Posted

技术标签:

【中文标题】在 Impala 中创建外部表 - 错误【英文标题】:Create External table In Impala - Error 【发布时间】:2014-10-21 19:44:18 【问题描述】:

我正在使用 Hadoop EMR (AWS)。

我尝试创建一个外部表(基于 S3 中的特定位置)并得到以下错误:

错误:AnalysisException:null 原因:RuntimeException: java.lang.ClassNotFoundException:类 com.amazon.ws.emr.hadoop.fs.EmrFileSystem 未找到原因: ClassNotFoundException:类 com.amazon.ws.emr.hadoop.fs.EmrFileSystem 未找到

当创建一个非外部表(没有位置)时,它就可以工作了。

在 hive 上,这两种表都没有问题。

知道我能做些什么来解决它吗?

谢谢!

【问题讨论】:

【参考方案1】:

Impala 目前不支持 S3。

【讨论】:

【参考方案2】:

今天,Impala 仅使用 HDFS。 Cloudera 承诺在 2015 年支持 S3(查看他们的路线图 http://blog.cloudera.com/blog/2014/08/whats-next-for-impala-focus-on-advanced-sql-functionality/) 有与 S3 配合使用的 Impala 风味(称为 ImpalaToGo)。 https://github.com/ImpalaToGo/ImpalaToGo/wiki 免责声明 - 我深深参与了这个项目。

【讨论】:

以上是关于在 Impala 中创建外部表 - 错误的主要内容,如果未能解决你的问题,请参考以下文章

使用 Polybase 在 SQL Server 2016 中创建外部表的问题

Impala 不能删除外部表

可以在 Redshift 中的特定目录中创建外部表吗?

如何将数据从 CSV 加载到 impala 的外部表中

在 spark 中创建带有模式的配置单元外部表

Impala 不支持 Unicode 字符