使用Apache Drill查询Parquet文件时遇parquetReaderStats空指针错误
解决Apache Drill读取Parquet文件时的
parquetReaderStats空指针错误 针对你遇到的Cannot read field "timeProcess" because "this.parquetReaderStats" is null内部错误,可尝试以下几种解决方案:
升级/降级Apache Drill版本
该错误多由特定版本的Drill存在Parquet读取统计模块的初始化bug导致,比如Drill 1.17及更早版本的部分发行版有此问题。建议升级至最新稳定版(如1.20+),或降级到已知无该问题的版本(如1.16),再重新运行查询。禁用Parquet读取统计功能
编辑Drill的配置文件drill-override.conf,添加以下配置项来关闭统计功能,绕过空指针异常:drill.exec.storage.parquet.reader.stats.enabled: false修改完成后重启
drill-embedded,再次执行查询操作。验证Parquet文件完整性
使用parquet-tools工具检查目标文件是否损坏:# 查看文件元数据 parquet-tools meta /path/to/my/file.parquet # 读取文件内容 parquet-tools cat /path/to/my/file.parquet如果文件存在损坏,需重新生成或修复该Parquet文件后再尝试读取。
检查DFS存储插件配置
访问Drill Web UI(默认地址http://localhost:8047),找到dfs存储插件,确认其配置中Parquet格式已正确启用,路径配置无误。示例正确配置片段:{ "type": "file", "enabled": true, "formats": { "parquet": { "type": "parquet", "enabled": true } } }
内容的提问来源于stack exchange,提问作者robertspierre
相关产品推荐
相关产品推荐

