You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Stephanie Hazlitt (Jira)" <ji...@apache.org> on 2021/02/10 18:58:00 UTC
[jira] [Created] (ARROW-11587) Implement a fixed-width file reader
Stephanie Hazlitt created ARROW-11587:
-----------------------------------------
Summary: Implement a fixed-width file reader
Key: ARROW-11587
URL: https://issues.apache.org/jira/browse/ARROW-11587
Project: Apache Arrow
Issue Type: Wish
Components: R
Reporter: Stephanie Hazlitt
Fixed-width files are a common data provisioning format for (very) large, administrative data files. We have been converting provisioned fwf files to `.parquet` and then leveraging `arrow::open_dataset()` with good success. However, we still run into RAM issues with the read-in step and are keen to try new approaches to this in-memory RAM issue (ideally without chunking files etc).
A simple, example workflow looks like this:
```
sample_data <- "https://github.com/bcgov/dipr/raw/master/inst/extdata/starwars-fwf.dat.gz"
vroom::vroom_fwf(sample_data,
col_positions = vroom::fwf_positions(
c(1, 22, 25, 31),
c(21, 24, 30, 35),
c("name", "height", "mass", "has_hair")
),
col_types = ("cnnl")
) %>%
dplyr::group_by(has_hair) %>%
arrow::write_dataset(path = "starwars_parquet",
format = "parquet")
```
With an \{arrow} fixed-width reader, we could perhaps leverage `arrow::open_dataset(as_data_frame = FALSE)` directly on a large fwf file and then convert to partitioned `.parquet` files with arrow::write_dataset()?
--
This message was sent by Atlassian Jira
(v8.3.4#803005)