可以使用本地模式或者使用本地集群模式来执行Spark测试。
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
val conf = new SparkConf().setAppName("Local test").setMaster("local")
val sc = new SparkContext(conf)
在以上代码中,"local"是设置Spark在本地运行的配置信息。将配置设置为local,可执行所有Spark操作,无需启动远程集群。请注意,此方法对大型数据集来说并不适用,因为它可能会耗尽你的计算机资源。
import org.apache.spark.SparkConf
import org.apache.spark.SparkContext
val conf = new SparkConf().setAppName("Local Cluster Test").setMaster("local-cluster[2,1,1024]")
val sc = new SparkContext(conf)
在以上代码中,“local-cluster”的设置意味着Spark应模拟2个工作节点、1个执行内存为1024MB的节点并在本地运行。
在设置模拟集群时,还需要将Hadoop的文件系统参数设置为本地文件系统,如下所示:
conf.set("spark.master", "local")
conf.set("spark.app.name", "LocalCluster")
conf.set("spark.driver.host", "localhost")
conf.set("spark.hadoop.fs.defaultFS", "file:///")
这些设置告诉Spark使用本地文件系统,而不是Hadoop分布式文件系统。
通过以上两种方式,您可以在本地机器上执行Spark测试,而无需启动