때 실행 PySpark 코드의 조각 다음사용 UDF
nlp = NLPFunctions()
def parse_ingredients(ingredient_lines):
parsed_ingredients = nlp.getingredients_bulk(ingredient_lines)[0]
return list(chain.from_iterable(parsed_ingredients))
udf_parse_ingredients = UserDefinedFunction(parse_ingredients, ArrayType(StringType()))
나는 다음과 같은 오류 얻을 : PySpark이 사용자 정의 클래스를 직렬화 할 수 없기 때문에 _pickle.PicklingError: Could not serialize object: TypeError: can't pickle _thread.lock objects
나는이 상상이 . 그러나 parse_ingredients_line
함수를 실행할 때마다이 값 비싼 오브젝트를 인스턴스화하는 오버 헤드를 피하려면 어떻게해야합니까?
이 제안 된 해결책은 나에게도 같은 오류를줍니다. –