I成功地将csv文件数据从s3加载到FlinkSql本地机器中。
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文件相同:获取异常
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类路径中,但是一个新的异常出现了,这将永远持续下去。
发布于 2021-05-13 11:36:16
如果flink没有找到任何与文件系统相关的库,它将在HADOOP类路径中查找。因此,请在~/..bash_profile中添加以下类路径变量。
导出HADOOP_CLASSPATH= 'hadoop类路径‘
在我的机器上看起来像~/..bash_profile:
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
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-sql-parquet_2.11</artifactId>
<version>1.12.2</version>
</dependency>https://stackoverflow.com/questions/67508781
复制相似问题