No need to read full RowGroup when using RowRanges
- 主要语言
- Java
- 星标
- 3.1k
- 派生
- 1.6k
- 平均合并
- 3 天 12 小时
- 30 天内合并 PR
- 33
描述
### Describe the enhancement requested
I'm using ParquetFileReader and would like to read the few first line of a parquet file to show a preview to the user.
I'm doing this :
PageReadStore rowGroup = reader.readFilteredRowGroup(0, RowRanges.createSingle(10));
and then :
ColumnReadStore colReadStore = new ColumnReadStoreImpl(rowGroup,
new GroupRecordConverter(schema).getRootConverter(),
schemaLecture, ...);
etc.
The problem is when calling readFilteredRowGroup(), it reads the full row group in memory, which in my case is slow because the parquet file is on a network drive and has quite big row group. On top of that, it consumes RAM for nothing.
Is this an issue or could it be improved ?
Thanks in advance.
Olivier
### Component(s)
_No response_
贡献指南
这个仓库没有索引到贡献指南
调研方向
从 ParquetFileReader.readFilteredRowGroup() 开始,跟踪加载 row group 时如何处理 RowRanges.createSingle(10)。确定在哪里读取了完整的 row group,以及范围过滤如何能够限制网络读取和内存使用;当无需加载完整的 row group 即可读取请求的行时,就算完成。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- data-engineering
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 45/100