Conversion from one dataset to another that will not fit in memory?
- Ngôn ngữ chính
- C++
- Star
- 17.1k
- Fork
- 4.3k
- Merge trung bình
- 3 ngày 18 giờ
- Pull request đã merge (30 ngày)
- 91
Mô tả
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?
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu với phần tài liệu Python về dataset nói về việc ghi lượng dữ liệu lớn và tái hiện ví dụ scanner-to-write_dataset trên Windows; so sánh ví dụ này với ví dụ open_dataset |> write_dataset của R. Kiểm tra xem một trong hai phép chuyển đổi được tài liệu hóa có bị crash đối với đầu vào lớn hơn bộ nhớ hay không, và coi issue là hoàn tất khi thao tác được tài liệu hóa hoàn thành mà không làm cạn kiệt bộ nhớ hoặc giới hạn này được tài liệu hóa rõ ràng.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- python, r
- Lĩnh vực
- data-engineering
- Loại issue
- Lỗi
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 30/100