当前位置: 首页 > wzjs >正文

网站建设 北京武汉网站维护公司

网站建设 北京,武汉网站维护公司,网站制作完成后如何发布,网站建设公司的性质学习目标 通过本关卡练习,您将学到: 如何使用Spark访问本地文件和HDFS文件Spark应用程序的编写、编译和运行方法 相关知识 操作系统:Ubuntu 16.04; Spark版本:2.4.0; Hadoop版本:3.1.3。 编…

学习目标

通过本关卡练习,您将学到:

  • 如何使用Spark访问本地文件和HDFS文件
  • Spark应用程序的编写、编译和运行方法

相关知识

操作系统:Ubuntu 16.04;
Spark版本:2.4.0;
Hadoop版本:3.1.3。

编程要求

任务一

  • spark-shell中读取Linux系统本地文件/data/workspace/data_set/test.txt,然后统计出文件的行数。Spark默认安装在/usr/local/spark目录下。
cd  /usr/local/spark
./bin/spark-shell
val textFile=sc.textFile("file:data/workspace/data_set/test.txt")
textFile.count()

可以通过:quit退出spark-shell

任务二

  • 为hadoop用户在HDFS中创建用户目录/user/hadoop
cd /usr/local/hadoop
./bin/hdfs dfs -mkdir -p /user/hadoop

  • 将Linux系统本地的/data/workspace/data_set/testHdfs.txt文件上传到HDFS的目录/user/hadoop
cd /usr/local/hadoop
./bin/hdfs dfs -put /data/workspace/data_set/testHdfs.txt
  • 先用如下命令进入spark-shell
cd  /usr/local/spark && ./bin/spark-shell

再在spark-shell中读取HDFS系统文件/user/hadoop/testHdfs.txt,然后,统计出文件的行数

val textFile=sc.textFile("hdfs://localhost:9000/user/hadoop/testHdfs.txt")
textFile.count()

退出spark-shell

:quit

任务三

安装scala程序的构建工具sbt,可以到官网下载sbt安装文件sbt-1.3.8.tgz,也可直接使用已经下载好的安装文件/opt/sbt-1.3.8.tgz

  • 使用如下命令,将sbt安装到/usr/local/sbt目录下:
sudo tar -zxf /opt/sbt-1.3.8.tgz -C /usr/local && sudo chown -R hadoop /usr/local/sbt

  • 配置环境变量,用vim编辑文件~/.bashrc,命令如下:
vim ~/.bashrc

在末尾追加如下内容:

export SBT_HOME=/usr/local/sbt
export PATH=$PATH:$SBT_HOME/bin

保存退出之后,执行如下命令,使设置环境变量生效:

source ~/.bashrc

可以使用如下命令查看sbt版本信息:

cd ~ && sbt sbtVersion

配置sbt:
用vim创建文件/usr/local/sbt/conf/repositories

vim /usr/local/sbt/conf/repositories

内容如下:

[repositories]
local
local-preloaded-ivy: file:///${sbt.preloaded-${sbt.global.base> -${user.home}/.sbt}/preloaded/}, [organization]/[module]/[revi sion]/[type]s/[artifact](-[classifier]).[ext]
local-preloaded: file:///${sbt.preloaded-${sbt.global.base-${user.home}/.sbt}/preloaded/}maven-central: http://nexus3.plugins.svc/repository/maven-public/
sbt-plugin-repo: http://nexus3.plugins.svc/repository/maven-public/, [organization]/[module]/[revision]/[type]s/[artifact](-[classifier]).[ext], bootOnly

修改sbt配置文件/usr/local/sbt/conf/sbtopts,命令如下

vim /usr/local/sbt/conf/sbtopts

在末尾增加如下内容:

-Dsbt.override.build.repos=true
-Dsbt.repository.config=/usr/local/sbt/conf/repositories

任务四

编写独立应用程序(使用Scala语言),读取HDFS系统文件/user/hadoop/testHdfs.txt,然后,统计出文件的行数;通过sbt工具将整个应用程序编译打包成 JAR包,并将生成的JAR包通过 spark-submit 提交到 Spark 中运行命令。

  1. 使用hadoop用户名登录Linux系统,打开一个终端,在Linux终端中,执行如下命令创建一个文件夹sparkapp作为应用程序根目录:
cd ~                               # 进入用户主文件夹
mkdir ./sparkapp                   # 创建应用程序根目录
mkdir -p ./sparkapp/src/main/scala # 创建所需的文件夹结构

2.下面使用vim编辑器在~/sparkapp/src/main/scala下建立一个名为SimpleApp.scalaScala代码文件,命令如下:

代码文件SimpleApp.scala内容如下:

/* SimpleApp.scala */
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConfobject SimpleApp {def main(args: Array[String]) {val logFile = "hdfs://localhost:9000/user/hadoop/testHdfs.txt"val conf = new SparkConf().setAppName("Simple Application")val sc = new SparkContext(conf)val logData = sc.textFile(logFile, 2)val num = logData.count()println("The num of this file is %d".format(num))}
}

任务五

  • 完成代码编辑后,使用sbtScala 程序进行编译打包。
    SimpleApp.scala程序依赖于Spark API,因此,需要通过sbt进行编译打包以后才能运行。 首先,需要使用vim编辑器在~/sparkapp目录下新建文件simple.sbt,命令如下:
vim ~/sparkapp/simple.sbt

simple.sbt文件内容如下:

name := "Simple Project"
version := "1.0"
scalaVersion := "2.11.12"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.4.0"

  • 为了保证sbt能够正常运行,先执行如下命令检查整个应用程序的文件结构:
cd ~/sparkapp
find .

文件结构应该是类似如下所示的内容:

.
./src
./src/main
./src/main/scala
./src/main/scala/SimpleApp.scala
./simple.sbt

接下来,通过如下代码将整个应用程序打包成 JAR:

cd ~/sparkapp  #一定把这个目录设置为当前目录
sbt package

生成的JAR包的位置为~/sparkapp/target/scala-2.11/simple-project_2.11-1.0.jar
对于前面sbt打包得到的应用程序JAR包,可以通过spark-submit提交到Spark中运行,命令如下:

/usr/local/spark/bin/spark-submit --class "SimpleApp" ~/sparkapp/target/scala-2.11/simple-project_2.11-1.0.jar

http://www.dtcms.com/wzjs/505943.html

相关文章:

  • 手表交易网站cilimao磁力猫最新版地址
  • 做淘客推广用什么网站好怎么知道自己的域名
  • 做网站平台广州网站设计制作
  • 网站框架设计模板新网站快速收录
  • 宁德做网站的公司俄罗斯搜索引擎浏览器官网入口
  • 可免费下载的简历模板seo外链查询工具
  • 网站建设的成果怎么写微信搜一搜排名优化
  • 奢侈品商城网站建设方案怎样进行网络营销吸引顾客
  • 温州网站开发技术百度推广一个点击多少钱
  • 优化网站步骤杭州seo网站排名优化
  • 做网上商城网站设计网站运营工作的基本内容
  • 建设旅行网站策划书培训心得体会300字
  • 微信小程序网站建设推广百度学术官网入口
  • 怎样在美国做网站电脑优化大师下载安装
  • 荆州网站制作公司排名nba
  • 企业门户网站管理办法百度今日数据统计
  • 做网站建设业务员怎么样互联网营销行业前景
  • jsp网站 值班网站seo优化技能
  • 如何增加网站内链建设郑州品牌网站建设
  • 网页版梦幻西游决战华山企业网站的搜索引擎推广与优化
  • 网站运营总监优化手机流畅度的软件
  • 品牌网站建设S苏州什么是交换链接
  • 猎奇网站源码企业类网站有哪些例子
  • 湘潭网站建设 真好磐石网络商业推广软文范例
  • 大众团购网站怎么做seo包年服务
  • 网站做背景不显示百度开户资质
  • 创建微网站镇江百度seo
  • 电子商务网站建设与维护试卷软文营销名词解释
  • 怎么做家庭网站建设网官方网站
  • 如何搭建https网站友情链接发布网