apache-spark - 火花错误读取镶木地板
问题描述
我们正在使用 apache spark,我们将 json 文件作为 gzip 压缩的 parquet 文件保存在 hdfs 中。但是,当读回它们以生成数据帧时,某些文件(但不是全部)会引发以下异常:
ERROR Executor: Exception in task 2.0 in stage 72.0 (TID 88)
org.apache.parquet.io.ParquetDecodingException: Can not read value at 351 in
block 0 in file file:/path/to/file [...]
Caused by: java.lang.ClassCastException:
org.apache.spark.sql.catalyst.expressions.MutableLong cannot be cast to
org.apache.spark.sql.catalyst.expressions.MutableDouble
任何帮助深表感谢!
解决方案
当您尝试同时读取具有不同架构的 parquet 文件时,会发生这种错误。尝试让 /convert 您的所有源文件具有相同的架构或同时转换所有源文件。
推荐阅读
- javascript - 如何使用 JavaScript 删除第 n 个类型的样式
- sql - 如何设置查询 SQL COUNT - 不同但值是唯一的
- python - 如何让 pd.Grouper() 包含空组
- json - 在 Reddit API url 中放置访问令牌的位置?
- java - Selenium-extract WebDriver 从 jar 中执行
- sql-server - SQL Server 中的语义搜索结果不返回超过 10 行
- angular - 用于传单标记的角形过滤管
- xpath - Scrapy - 抓取隐藏元素
- javascript - 密码表达式的正则表达式方法
- android - 仅在表大小更改时通知 (RX) 数据观察者