apache / apache/arrow-java

should control the maximum memory usage

未关闭
#736 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
Type: enhancement
主要语言
Java
星标
94
派生
152
平均合并
3 天 16 小时
30 天内合并 PR
11

描述

### Describe the enhancement requested

`ArrowVectorIterator::consume` only concern about the `ArrowVectorIterator#targetBatchSize` but not the memory used.

Let's suppose a scenario:
1. A database table with a longtext field;
2. All of the rows in the table are larger than 500M;
3. `ArrowVectorIterator#targetBatchSize` is 256;

We need at least for 125G memory to get one record batch.

So I think it's better add a parameter such as `maxBufferSize` to control the memory usage.

贡献指南

打开贡献指南

调研方向

从 ArrowVectorIterator::consume 和现有的 targetBatchSize 处理开始。确定 maxBufferSize 限制应如何与 record-batch 构建交互,然后为大型可变长度值定义测试;当迭代遵守内存限制且不需要超大 batch 时,即表示完成。

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

评估

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

把新 issue 发到你的邮箱

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