簡體   English   中英

在 Docker 容器上實現 Dask 調度程序和工作程序

[英]Implementing Dask scheduler and workers on Docker containers

我需要並行運行多個進程的 scikit-learn RandomForestClassifier。 為此,我正在考慮使用 N 個工作人員實現 Dask 調度程序,其中調度程序和每個工作人員在單獨的 Docker 容器中運行。

客戶端應用程序也運行在單獨的 Docker 容器中,將首先連接到調度程序並with joblib.parallel_backend('dask'):啟動 scikit-learn 進程。

用於訓練機器學習 model 的數據存儲在客戶端應用程序 Docker 容器中的 parquet 中。 讓工作人員訪問數據的最佳做法是什么? 數據是否應該位於其他地方,在共享目錄中?

由於 Apache Parquet 是基於文件系統的,這完全取決於您正在構建的體系結構,這意味着您的項目將在單個服務器上運行還是分布在多個服務器上。

如果您在單個服務器上運行,那么在容器之間簡單地共享docker volume ,甚至是在本地文件存儲上的公共掛載都可以完成這項工作。

另一方面,如果您嘗試在多個服務器上設置分布式訓練,那么您將需要某種類型的文件服務器來處理文件。

共享文件的一種簡單方法是通過NFS服務器,其中一種常用的圖像是erichough/nfs-server 您將需要使用此容器export存儲文件的本地文件夾,並且您需要在其余服務器上mount fs

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM