Spark大数据分析实战
上QQ阅读APP看书,第一时间看更新

2.1.2 使用SparkShell进行交互式数据分析

如果是运行Spark Shell,那么会默认创建一个SparkContext,命名为sc,所以不需要在Spark Shell创建新的SparkContext,SparkContext是应用程序的上下文,调度整个应用并维护元数据信息。在运行Spark Shell之前,可以设定参数MASTER,将Spark应用提交到MASTER指向的相应集群或者本地模式执行,集群方式运行的作业将会分布式地运行,本地模式执行的作业将会通过单机多线程方式运行。可以通过参数ADD_JARS把JARS添加到classpath,用户可以通过这种方式添加所需的第三方依赖库。

如果想spakr-shell在本地4核的CPU运行,需要如下方式启动:


$MASTER=local[4] ./spark-shell

这里的4是指启动4个工作线程。

如果要添加JARS,代码如下:


$MASTER=local[4]  ADD_JARS=code.jar ./spark-shell

在spark-shell中,输入下面代码,读取dir文件:


scala>val text=sc.textFile("dir")

输出文件中有多少数据项,则可用:


scala>text.count

按<Enter>键,即可运行程序。

通过以上介绍,用户可以了解如何使用Spark Shell进行交互式数据分析。

对于逻辑较为复杂或者运行时间较长的应用程序,用户可以通过本地Intellij等IDE作为集成开发环境进行应用开发与打包,最终提交到集群执行。对于执行时间较短的交互式分析作业,用户可以通过Spark Shell进行相应的数据分析。