我正在使用intellij编写Spark代码。而且,我想访问服务器上存储在hdfs文件系统中的文件。如何在Scala Spark代码中访问hdfs文件,以便可以将其作为数据框加载?
答案 0 :(得分:0)
val spark = SparkSession.builder().appName("CSV_Import_Example")
.config("spark.hadoop.yarn.resourcemanager.hostname","XXX")
.config("spark.hadoop.yarn.resourcemanager.address","XXX:8032")
.config("spark.yarn.access.namenodes", "hdfs://XXXX:8020,hdfs://XXXX:8020")
.config("spark.yarn.stagingDir", "hdfs://XXXX:8020/user/hduser/")
.getOrCreate()
SparkSession类是进入Spark所有功能的入口点。
val sourceDF = spark.read.format("csv").option("header", "true").load("hdfs://192.168.1.1:8020/user/cloudera/example_csvfile.csv")
hdfs://192.168.1.1:8020这里正在访问HDFS群集,而8020端口与namenode有关。