Python Dask:为以后使用而对数据帧进行pickle是否安全?
我有一个类似数据库的对象,其中包含许多dask数据帧。我想处理数据,保存数据,并在第二天重新加载数据以继续分析 因此,我尝试使用pickle保存dask数据帧(不是计算结果,只是“计算计划”本身)。显然,它是有效的(至少,如果我在同一台机器上解钩对象的话)。。。但是否存在一些陷阱 一般来说,它通常是安全的。然而,有几个警告:Python Dask:为以后使用而对数据帧进行pickle是否安全?,python,dask,Python,Dask,我有一个类似数据库的对象,其中包含许多dask数据帧。我想处理数据,保存数据,并在第二天重新加载数据以继续分析 因此,我尝试使用pickle保存dask数据帧(不是计算结果,只是“计算计划”本身)。显然,它是有效的(至少,如果我在同一台机器上解钩对象的话)。。。但是否存在一些陷阱 一般来说,它通常是安全的。然而,有几个警告: 如果dask.dataframe包含自定义函数,例如withdf.apply(lambda x:x),则内部函数将不可pickle。但是,它仍然可以使用序列化 如果您的da
df.apply(lambda x:x)
,则内部函数将不可pickle。但是,它仍然可以使用序列化dask.distributed
Future
对象,例如在集群上使用Executor.persist
时会出现的对象,则这些对象当前不可序列化您可以在任何计算机上取消勾选并获得相同的结果。因此,是否足以确保数据帧的基础数据可以在相同路径下访问,然后应该是安全的?是的,应该是安全的。Pickle保存将对象恢复到与Pickle时相同的状态所需的一切。我们有相同的用例。希望在公司内的数据科学家之间共享计算。我们正在考虑的体系结构是对dask数据帧(执行计划)进行酸洗,并将其存储在键值存储中。以后它应该可以在不同的集群上执行。第3点仍然是这样吗?如果是的话,你能指导我在这方面进行公关吗?