У меня есть один код pyspark, который работает нормально при запуске в локальном режиме. Однако, когда я пытаюсь запустить этот код в режиме клиента, он выдает ошибку "ModuleNotFoundError: нет модуля с именем 'pykalman'"
Пожалуйста, найдите ниже MRE:
Код из основного сценария (основной .py):
def kalman(rows):
print ("entering the function")
lat = pandas_df[8].values.astype(float)
lon = pandas_df[9].values.astype(float)
lat_smoothened, lon_smoothened = kalmansFunction(lat, lon) ##Issue is happening at this line
pandas_df[10] = lat_smoothened
pandas_df[11] = lon_smoothened
pandas_df.to_csv(filename, sep=';', encoding='utf-8', index=False)
if __name__ == "__main__":
----some code---
partitioned_input_df = df.repartition(360, "first_column", "second_column")
partitioned_input_df.rdd.getNumPartitions()
partitioned_input_df.foreachPartition(kalman)
----Code---
Теперь еще один скрипт, который также импортируется в основной скрипт:
import numpy as np
import scipy
***from pykalman import KalmanFilter***
def kalmansFunction(lat, lon):
---Code--
return smoothened_lat[:0], smoothened_lon[:0]
--------------
Команда, используемая для запуска кода:
spark-submit --master yarn --deploy-mode client --py-files /home/location/libs.zip /home/location/main.py Param1 Param2
libs.zip содержит все необходимые модули для запуска кода. main.py содержит мой фактический код. Остальные параметры для кода.
Кроме того, я также импортирую этот код pykalman в код.
Плюс, когда я вызываю другую функцию 'kalman' из основной функции операторы print (из функции - kalman) не выводятся на консоль.
Может кто-нибудь предложить что-нибудь? Заранее спасибо. :)