首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法读取亚马逊s3上的拼花文件并将其加载到FlinkSql中

无法读取亚马逊s3上的拼花文件并将其加载到FlinkSql中
EN

Stack Overflow用户
提问于 2021-05-12 17:57:12
回答 1查看 428关注 0票数 0

I成功地将csv文件数据从s3加载到FlinkSql本地机器中。

代码语言:javascript
复制
CREATE TABLE fs_table (
  username STRING,
  age STRING
) WITH (
  'connector'='filesystem',
  'path'='s3://d11-data-lake-load/flink/events_data/test_flink/test-csv',
  'format'='csv'
); 

与我尝试从S3加载到FlinkSql的Parquet文件相同:获取异常

代码语言:javascript
复制
CREATE TABLE fs_table (
  username STRING,
  age STRING
) WITH (
  'connector'='filesystem',
  'path'='s3://d11-data-lake-load/flink/events_data/test_flink/test-parquet',
  'format'='parquet'
);

[INFO] Table has been created.

Flink SQL> select * from fs_table;

[ERROR] Could not execute SQL statement. Reason:
java.lang.NoClassDefFoundError: Could not initialize class org.apache.hadoop.security.KerberosName

我已经将相关的jar包含在flink类路径中,但是一个新的异常出现了,这将永远持续下去。

EN

回答 1

Stack Overflow用户

发布于 2021-05-13 11:36:16

如果flink没有找到任何与文件系统相关的库,它将在HADOOP类路径中查找。因此,请在~/..bash_profile中添加以下类路径变量。

导出HADOOP_CLASSPATH= 'hadoop类路径‘

在我的机器上看起来像~/..bash_profile:

代码语言:javascript
复制
export HADOOP_HOME="/usr/local/Cellar/hadoop"
export HADOOP_CLASSPATH=$(find $HADOOP_HOME -name '*.jar' | xargs echo | tr ' ' ':')

在flink目录的lib文件夹中还包括flink(已安装)相同版本的flink-sql-parquet jar。这里是1.12.2

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-sql-parquet_2.11</artifactId>
    <version>1.12.2</version>
</dependency>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67508781

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档