apache / apache/arrow-java

should control the maximum memory usage

Aberta
#736 0 comentários 0 reações 0 responsáveis Ver no GitHub
Type: enhancement
Linguagem predominante
Java
Estrelas
94
Forks
152
Merge médio
3d 16h
PRs com merge (30d)
11

Descrição

### 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.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

Comece com ArrowVectorIterator::consume e o tratamento existente de targetBatchSize. Determine como um limite de maxBufferSize deve interagir com a construção de record-batches e, em seguida, defina testes para valores grandes de tamanho variável; considera-se concluído quando a iteração respeita o limite de memória sem exigir um batch superdimensionado.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
java
Domínio
data-engineering
Tipo de issue
Funcionalidade
Dificuldade
5/5
Tempo estimado
Mais de uma semana
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.