0
일부 텍스트 파일이 있으며이 파일을 사용하여 RDD를 만들고 싶습니다. 텍스트 파일을 'FOLDER_1'과 'Folder_2'에 저장되어있는 파일을 로컬 저장소에 저장하는 경우 이러한 폴더는 폴더 'text_data'HDFS 디렉토리에서 파일 읽기 및 Python을 사용하여 Spark에서 RDD 만들기
에 저장되어, 다음 코드는 작동 :
#Reading the corpus as an RDD
data_folder = '/home/user/text_data'
def read_data(data_folder):
data = sc.parallelize([])
for folder in os.listdir(data_folder):
for txt_file in os.listdir(data_folder + '/' + folder ):
temp = open(data_folder + '/' + folder + '/' + txt_file)
temp_da = temp.read()
temp_da = unicode(temp_da, errors = 'ignore')
temp.close()
a = [ (folder, temp_da) ]
data = data.union(sc.parallelize(a))
return data
read_data 함수는 텍스트 파일로 구성된 RDD를 반환합니다.
'text_data'폴더를 HDFS 디렉토리로 이동하면 어떻게 할 수 있습니까?
코드는 SPARK를 실행하는 Hadoop-Yarn Cluster에 배포해야합니다.
감사를하여 하둡 환경의 네임 노드를 교체합니다. @sasubillis 거의 문제를 해결합니다. 유일한 단점은 각각의 텍스트 파일에 개별적으로 접근하여 튜플을 만들 필요가 있다는 것입니다. a = [(folder, temp_da)] 튜플을 RDD 에 추가하십시오. data = data.union (sc.parallelize (a))' 이 기능을 코드에 통합하는 방법은 무엇입니까? – nidhink1995