Tôi xây dựng một python module và tôi muốn nhập nó trong ứng dụng pyspark của tôi.pyspark nhập khẩu người dùng xác định mô-đun hoặc các tập tin .py
cấu trúc thư mục gói của tôi là:
wesam/
|-- data.py
`-- __init__.py
Một đơn giản import wesam
ở phía trên cùng của kịch bản pyspark của tôi dẫn đến ImportError: No module named wesam
. Tôi cũng đã cố gắng nén mã và gửi mã theo số --py-files
dưới dạng recommended in this answer, không có may mắn.
./bin/spark-submit --py-files wesam.zip mycode.py
Tôi cũng đã thêm các tập tin trình theo đề nghị của this answer, nhưng tôi đã nhận lỗi cùng ImportError: No module named wesam
.
.sc.addPyFile("wesam.zip")
Tôi thiếu gì ở đây?
này là rất rõ ràng và hữu ích. cảm ơn bạn! – watsonic
Trong khi điều này có thể làm việc, bạn đang có hiệu quả disting env của bạn thông qua của bạn (có lẽ) toàn cầu disted $ HOME/.bashrc. Có thực sự không có cách nào để tự động thiết lập PYTHONPATH của mô-đun công nhân? Lý do bạn muốn làm điều này là bạn đang tương tác từ REPL ipython và muốn gửi các công việc song song phụ thuộc vào một mô-đun đang ngồi trên NFS trong PYTHONPATH (nghĩ chế độ python setup.py phát triển). – mathtick