2024-10-06 14:32:23 发布
网友
我的任务是将Pyspark数据帧输出为cap'nproto(.capnp)格式。有没有人对最好的方法有什么建议?你知道吗
我有一个capnp模式,也看过capnp(http://capnproto.github.io/pycapnp/)的python包装器,但我仍然不确定从dataframe到capnp的最佳方式是什么。你知道吗
最简单的方法是使用RDD,即使用mapPartitions将分区收集为序列化的byte arrays,并将它们加入collect()中,或者使用toLocalIterator保存到磁盘(如果数据帧很大)。请参见伪代码示例:
mapPartitions
collect()
toLocalIterator
create = your_serialization_method serialize_partition = lambda partition: [b''.join([create(object).to_bytes() for object in partition])] # creates one-element partition output = b''.join(df.rdd.mapPartitions(serialize_partition).collect())
最简单的方法是使用RDD,即使用
mapPartitions
将分区收集为序列化的byte arrays,并将它们加入collect()
中,或者使用toLocalIterator
保存到磁盘(如果数据帧很大)。请参见伪代码示例:相关问题 更多 >
编程相关推荐