一,Spark读Hudi读不出数据
Hudi路径下有数据,但是用spark读不出来
.option(DataSourceReadOptions.QUERY_TYPE_OPT_KEY(),DataSourceReadOptions.QUERY_TYPE_INCREMENTAL_OPT_VAL())
.option(DataSourceReadOptions.BEGIN_INSTANTTIME_OPT_KEY(),"20211123215558")
此时读取数据报错:
Caused by: java.lang.classNotFoundException: org.apache.hudi.common.model.EventTimeAvroPayload
原因是Hudi版本不对,本地版本是0.9,同事写入Hudi时使用的是0.10,换jar包即可
二,spark读hudi时报错 org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat
原因是少包,添加依赖即可:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-hive_2.12</artifactId>
<version>${spark.version}</version>
</dependency>
三,spark读取Hudi报错Caused by: java.lang.classNotFoundException: org.apache.spark.sql.catalyst.StructFilters
Caused by: java.lang.classNotFoundException: org.apache.spark.sql.catalyst.StructFilters
at java.net.urlclassloader.findClass(urlclassloader.java:381)
at java.lang.classLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.classLoader.loadClass(ClassLoader.java:357)
spark版本不对,本地用3.0.2,实际上服务器用的是3.1.2,换成3.1.2即解决问题
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。