问题标签 [dask.distributed]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
amazon-web-services - `dask-kubernetes` 调度程序 - AWS 上的工作人员
我一直在尝试dask.distributed
使用kubernetes
. 设置kube
集群本身非常简单,我目前正在努力解决的问题是我无法让本地调度程序连接到工作人员。Worker 可以连接到调度程序,但它们会在网络内部通告一个地址,而在kube
网络外部运行的调度程序无法访问该地址kube
。
按照dask-kubernetes
文档中的示例,我得到了一个kube
在 AWS 上运行的集群,并且(在单独的 AWS 机器上)notebook
使用本地dask.distributed
调度程序启动了一个。调度程序在集群上启动了许多工作人员kube
,但它无法连接到这些工作人员,因为工作人员位于不同的网络上:内部kube
网络。
网络设置如下所示:
- 在 192.168.0.0/24 上运行的笔记本服务器
kube
集群 EC2 实例也在 192.168.0.0/24kube
100.64.0.0/16 上的豆荚
dask
调度程序运行192.168.0.0/24
但dask
工作人员正在运行-100.64.0.0/16
我如何连接两者?我是否也应该在kube
pod 中运行调度程序、编辑路由表、尝试找出主机在工作人员上的 IP 地址?
工作人员能够连接到调度程序,但在调度程序中我得到了一个错误的形式
Distributed.scheduler - 错误 - 无法连接到工作人员 'tcp://100.96.2.4:40992':在 3.0 秒后尝试连接到 'tcp://100.96.2.4:40992' 时超时:connect() 没有及时完成
我不是在寻找我可以做的事情的列表,而是在寻找推荐的设置方式,特别是与dask.distributed
.
我kube
使用kops
.
python - AttributeError:“DataFrame”对象没有属性“_example”
我正在尝试使用 Dask python 包加入一些地理数据框。在实现我的数据处理算法时,我遇到了下一个异常:AttributeError: 'DataFrame' object has no attribute '_example'
这是我的代码:
这是我的堆栈跟踪:
那么,谁能告诉我我做错了什么以及如何使用 Dask 包库连接两个数据集。
dask - 在集群上运行的 Dask 程序中找不到文件错误
我有 4 台机器,M1、M2、M3 和 M4。调度程序、客户端、工作程序在 M1 上运行。我在 M1 中放了一个 csv 文件。其余的机器是工人。
当我在 dask 中使用 read_csv 文件运行程序时。它给了我错误,找不到文件
parquet - 在单个多核机器上索引大型 dask 数据帧时的内存使用情况
我正在尝试将Wikipedia CirrusSearch 转储转储为 Parquet 支持的 dask 数据帧,该数据帧由 450G 16 核 GCP 实例上的标题索引。CirrusSearch 转储以单个 json 行格式文件的形式出现。英文 Wipedia 转储包含 5M 记录,压缩为 12G,扩展为 90+G。一个重要的细节是记录并不完全平坦。
最简单的方法是
第一个问题是默认调度器只使用一个内核。这个问题可以通过明确使用分布式或多处理调度程序来避免。
我尝试过的所有调度程序和设置的更大问题是内存使用。似乎 dask 在索引时尝试将整个数据帧加载到内存中。即使是 450G 的 RAM 也不够用。
- 如何减少此任务的内存使用量?
- 如何在不进行反复试验的情况下估算所需的最小内存?
- 有更好的方法吗?