我有以下python脚本,我使用现有的pandas数据帧创建一个dask数据帧。我正在使用多处理调度程序,因为我的函数使用纯python。调度程序创建8个进程(每个分区一个),但它们按顺序运行,一次运行一个。
dask_data = ddf.from_pandas(data, npartitions=8)
dask_data = dask_data.assign(
images_array_1=dask_data.images_array_1.apply(lambda x: [] if x == "" else [int(el) for el in x.split(',')], name='images_array_1'),
images_array_2=dask_data.images_array_2.apply(lambda x: [] if x == "" else [int(el) for el in x.split(',')], name='images_array_2')
)
dask_data.compute(get=dask.multiprocessing.get)
我只使用dask来并行计算,我的数据集足够小,可以保留在主内存中。
是否可以并行运行每个流程?
答案 0 :(得分:0)
您需要先执行map_partitions才能并行运行它。