should control the maximum memory usage

Aberta
#736 0 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

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

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.

Descrição

Type: enhancement
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.

Linguagem predominante
Java
Estrelas
95
Forks
154
Merge médio
2d 10h
PRs com merge (30d)
11

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de apache/arrow-java

Todas as issues de apache/arrow-java

Issues semelhantes

Mais issues de Java

Receba novas issues na sua caixa de entrada

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