Spark入门(一)--用Spark-Shell初尝Spark滋味

Spark-Shell的使用

执行scala命令的spark-shell

进入spark的sbin目录,打开键入

./spark-shell

即可进入spark-shell的目录

Spark入门(一)--用Spark-Shell初尝Spark滋味_第1张图片

 

spark-shell运行过程从上层来看,每一个spark应用都是由驱动器程序发起集群上的并行操作,在spark-shell中驱动器程序就是spark-shell本身。驱动器通过SparkContext对象来访问spark。事实上在shell启动时就创建了一个SparkContext的对象,其变量是sc,通过shell来查看sc如下

 

 

通过sc来读取文件:

hello文件中的内容为

u'you,jump
i,jump
you,jump
i,jump
u,jump

我们在命令行键入

val lines = sc.textFile("/spark/hello”)
lines.count()
lines.first()

 

Spark入门(一)--用Spark-Shell初尝Spark滋味_第2张图片

 

 


 

这里注意到,由于我的sapark是在hadoop集群环境下的,所以这里完整的目录可以理解成hdfs:///spark/hello。

以上这条命令,就把spark目录下hello文件装载到sc当中,但事实上,由于spark的懒加载,此时的文件只有在被操作时才会真正被读取,即lines.count()和lines.first()被执行时,才回去读取内容

执行python命令的spark-shell

当然我们也可以用进入执行python命令的spark-shell。方法如下 进入spark的sbin目录,打开键入

./pyspark-shell

通过python-shell统计hadoop文件目录下的 /spark/hello文件,如下

lines = sc.textFile('/spark/hello’)
lines.count()
lines.first()

结果如下:

 

Spark入门(一)--用Spark-Shell初尝Spark滋味_第3张图片

 

到这里我们的spark-shell就算是正常执行,其中

读取/spark/hello文件:

lines = sc.textFile('/spark/hello’)

获取总行数:

lines.count()

第一行内容:

lines.first()



转自:https://juejin.im/post/5c73dee0518825628c30f1d0

你可能感兴趣的:(Spark入门(一)--用Spark-Shell初尝Spark滋味)