python – Dask打印警告使用client.scatter虽然我正在使用建议的方法
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – Dask打印警告使用client.scatter虽然我正在使用建议的方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1472字,纯文字阅读大概需要3分钟。
内容图文
![python – Dask打印警告使用client.scatter虽然我正在使用建议的方法](/upload/InfoBanner/zyjiaocheng/782/9a6fdb11ad384439952c1ed46cb5a896.jpg)
在dask分布式中,我收到以下警告,我不希望这样:
/home/miniconda3/lib/python3.6/site-packages/distributed/worker.py:739: UserWarning: Large object of size 1.95 MB detected in task graph:
(['int-58e78e1b34eb49a68c65b54815d1b158', 'int-5cd ... 161071d7ae7'],)
Consider scattering large objects ahead of time
with client.scatter to reduce scheduler burden and
keep data on workers
future = client.submit(func, big_data) # bad
big_future = client.scatter(big_data) # good
future = client.submit(func, big_future) # good
% (format_bytes(len(b)), s))
我感到惊讶的原因是,我正在做的警告建议:
import dask.dataframe as dd
import pandas
from dask.distributed import Client, LocalCluster
c = Client(LocalCluster())
dask_df = dd.from_pandas(pandas.DataFrame.from_dict({'A':[1,2,3,4,5]*1000}), npartitions=10)
filter_list = c.scatter(list(range(2,100000,2)))
mask = c.submit(dask_df['A'].isin, filter_list)
dask_df[mask.result()].compute()
所以我的问题是:我做错了什么或这是一个错误?
pandas='0.22.0'
dask='0.17.0'
解决方法:
dask抱怨的主要原因不是列表,而是dask数据帧中的pandas数据帧.
dask_df = dd.from_pandas(pandas.DataFrame.from_dict({'A':[1,2,3,4,5]*1000}), npartitions=10)
在本地会话中创建pandas数据帧时,您将在本地创建大量数据.然后在集群上使用它.这需要将您的pandas数据帧移动到群集.
我们欢迎你忽略这些警告,但总的来说,如果这里的表现比单独使用熊猫更糟糕,我也不会感到惊讶.
还有其他一些事情在这里发生.您对列表的分散会产生一堆未来,这可能不是您想要的.你在一个dask对象上调用submit,这通常是不必要的.
内容总结
以上是互联网集市为您收集整理的python – Dask打印警告使用client.scatter虽然我正在使用建议的方法全部内容,希望文章能够帮你解决python – Dask打印警告使用client.scatter虽然我正在使用建议的方法所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。