조건 : HDFS Cluster와 연동이 되고 있는 상태
start-dfs.sh
start-yarn.sh
start-all.sh
1. HDFS로부터 RDD 읽고 저장하기
종합된 자료만 읽기
val myrdd = sc.textFile("hdfs:///user/spark/text/word_counts")
myrdd.collect().foreach(println)
파일 위치까지 읽기
val rddWhole = spark.sparkContext.wholeTextFiles("hdfs:///user/spark/text/word_counts")
rddWhole.collect().foreach(println)
rddWhole.take(2).foreach(println)
저장하기
myrdd.saveAsTextFile("hdfs:///user/spark/word_rdd")
2. HDFS로부터 CSV 읽고 저장하기
val csv_data = sc.textFile("hdfs:///user/spark/names.csv")
csv_data.take(5)
csv파일을 데이터프레임으로 읽기
val df = spark.read.option("header", "true").csv("hdfs:///user/spark/names.csv")
df.show()
데이터프레임으로 저장하기
df.write.option("header","true").mode("overwrite").csv("hdfs:///user/spark/df")
3. json 파일 읽어오기 및 저장
val df1 = spark.read.json("file:///home/spark/names.json")
df1.show()
df1.write.json("hdfs:///user/spark/names.json")