2017-11-30 7 views
2

데이터 프레임을 텍스트 파일로 저장하려고하지만 파일 이미 있음 예외가 발생합니다. 코드에 모드를 추가하려고했지만 아무 소용이 없습니다. 또한 파일이 실제로 존재하지 않습니다. 누구든지이 문제를 어떻게 해결할 수 있을지 생각할 수 있습니까? 내가 PySpark스파크 (PySpark) 파일이 이미 존재 함 예외

을 사용하고이 코드는 다음과 같습니다

distFile = sc.textFile("/Users/jeremy/Downloads/sample2.nq") 
mapper = distFile.map(lambda q: __q2v(q)) 
reducer = mapper.reduceByKey(lambda a, b: a + os.linesep + b) 
data_frame = reducer.toDF(["context", "triples"]) 
data_frame.coalesce(1).write.partitionBy("context").text("/Users/jeremy/Desktop/so") 

나는 예외가 잠시 후 일부 데이터가 실제로 (분명히 삭제) 임시 파일에 저장되어 제기되고 있음을 추가 할 수 있습니다.

감사합니다.

편집 : 예외는 여기에서 찾을 수 있습니다 : https://gist.github.com/jerdeb/c30f65dc632fb997af289dac4d40c743

답변

0

파일을 교체하거나 동일한 파일에 데이터를 추가하는 overwrite 또는 append을 사용 할 수 있습니다.

data_frame.coalesce(1).write.mode('overwrite').partitionBy("context").text("/Users/jeremy/Desktop/so") 

또는

data_frame.coalesce(1).write.mode('append').partitionBy("context").text("/Users/jeremy/Desktop/so") 
+0

내가 이미 시도했지만 여전히 예외 :( – jerdeb

+0

이 다음 오류 또는 예외를 보여 –

+0

내가 여기에 예외를 업로드 한을 주었다. HTTPS : //gist.github .com/jerdeb/c30f65dc632fb997af289dac4d40c743 – jerdeb