apache / apache/parquet-java

provide an option to skip a page in case corrupted bytes occur

未关闭
#1,700 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Component: Parquet Priority: Major Type: enhancement
主要语言
Java
星标
3.1k
派生
1.6k
平均合并
3 天 12 小时
30 天内合并 PR
33

描述

In case of hardware failure (disk, memory, etc), there might be corrupted bytes. That will result in ArrayIndexOutOfBoundException or/and data garbled.

Currently, jobs reading those Parquet files will fail unless the corrupted files are deleted/moved.

Currently page metadata has a CRC field (not used so far), which can be used to check integrity of the page. If page data is corrupted, skip the whole page.

related issue: PARQUET-148

**Reporter**: [Tongjie Chen](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=tongjie) / @tongjiechen

**Note**: *This issue was originally created as [PARQUET-149](https://issues.apache.org/jira/browse/PARQUET-149). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

贡献指南

这个仓库没有索引到贡献指南

调研方向

从 Parquet 页面读取路径以及 issue 中描述的页面元数据处理入手;检查如何在页面数据被使用之前校验现有的 CRC 字段。复现损坏情况,或为损坏的页面字节添加有针对性的覆盖,然后验证受影响的页面会被跳过,同时作业会继续执行,而不是失败或返回乱码数据。

由索引模型根据 Issue 内容生成。

评估

技术栈
java
领域
data-engineering
Issue 类型
功能
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
30/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。