如何在 julia 中连接具有相同结构的 Apache Arrow 文件

问题描述

如何在不将每个文件读入内存的情况下,将多个结构相同的 Arrow 文件连接成一个 Arrow 文件?我正在使用 Arrow.jl 和 Arrow 文件表示具有相同结构的数据帧,并且组合的数据帧大于可用内存。我一直在做以下事情:

function openhhmembershipchunk(basedirectory::String,node::String,chunk::Int64)
    open(joinpath(basedirectory,node,"DayExtraction","HouseholdMembershipDays$(chunk).arrow")) do io
        return Arrow.Table(io) |> DataFrame
    end;
end
"Concatenate household membership day batches"
function combinehhmembershipdaybatch(basedirectory::String,batches)
    d = openhhmembershipchunk(basedirectory::String,1)
    days = copy(d)
    for i = 2:batches
        m = openhhmembershipchunk(basedirectory::String,i)
        append!(days,m)
    end
    Arrow.write(joinpath(basedirectory,"HouseholdMembershipDays.arrow"),days,compress=:zstd)
    #delete chunks
    for i = 1:batches
        rm(joinpath(basedirectory,"HouseholdMembershipDays$(i).arrow"))
    end
    return nothing
end #combinehhresidencydaybatch

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...