【发布时间】:2021-12-24 04:26:40
【问题描述】:
我在arrow::write_parquet() 中看到了chunk_size 参数,但它的行为似乎不像预期的那样。我希望下面的代码生成 3 个单独的镶木地板文件,但只创建一个,并且 nrow > chunk_size。
library(arrow)
# .parquet dir and file path
td <- tempdir()
tf <- tempfile("", td, ".parquet")
on.exit(unlink(tf))
# dataframe with 3e6 rows
n <- 3e6
df <- data.frame(x = rnorm(n))
# write with chunk_size 1e6, and view directory
write_parquet(df, tf, chunk_size = 1e6)
list.files(td)
返回一个文件而不是 3 个:
[1] "25ff74854ba6.parquet"
# read parquet and show all rows are there
nrow(read_parquet(tf))
返回:
[1] 3000000
我们无法将多个文件名参数传递给write_parquet(),而且我不想分区,所以write_dataset() 似乎也不适用。
【问题讨论】:
标签: r parquet apache-arrow