Conversion from one dataset to another that will not fit in memory?
- Linguagem predominante
- C++
- Estrelas
- 17.1k
- Forks
- 4.3k
- Merge médio
- 3d 20h
- PRs com merge (30d)
- 94
Descrição
Having found the following description in the documentation, I tried the operation of scanning a dataset larger than memory and writing it to another dataset.
https://arrow.apache.org/docs/python/dataset.html#writing-large-amounts-of-data
> The above examples wrote data from a table. If you are writing a large amount of data you may not be able to load everything into a single in-memory table. Fortunately, the write_dataset() method also accepts an iterable of record batches. This makes it really simple, for example, to repartition a large dataset without loading the entire dataset into memory:
```python
import pyarrow.dataset as ds
input_dataset = ds.dataset("input")
ds.write_dataset(inpute_dataset.scanner(), "output", format="parquet")
```
```r
arrow::open_dataset("input") |>
arrow::write_dataset("output")
```
But both Python and R on Windows crashed due to lack of memory. Am I missing something?
Is there a recommended way to convert one dataset to another without running out of computer memory?
Guia de contribuição
Direção de pesquisa
Comece pela seção da documentação de Python sobre datasets dedicada à escrita de grandes quantidades de dados e reproduza o exemplo scanner-to-write_dataset no Windows; compare-o com o exemplo do R open_dataset |> write_dataset. Verifique se alguma das duas conversões documentadas falha para uma entrada maior que a memória disponível e considere a issue concluída quando a operação documentada for concluída sem esgotar a memória ou quando a limitação estiver claramente documentada.
Escrita pelo modelo de indexação a partir do texto da issue.
Avaliação
- Stack de tecnologia
- python, r
- Domínio
- data-engineering
- Tipo de issue
- Bug
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Status de atividade
- Estagnada
- Clareza
- Razoavelmente clara
- Facilidade para iniciantes
- 30/100