download:大数据开发工程师
大数据开发工程师 【完结】
本套大数据课程中的技术体系包含目前主流的Hadoop、Spark、Flink三大技术生态圈,涵盖了企业中最常见的技术组件,可以满足大家在公司中的工作需求
Q:这套课程要学多久?学完能达到什么水平呢?
本套大数据学完的时间,和每个人的基础、接受能力和时间安排都有关,一般情况下,如果能保证每天听课1小时,练习至少2个小时,3~4个月是可以学完的。建议保持连续学习,这样学习效果更好,以及通过视频配套的思维导图做好预习,电子书巩固视频内容。学完后可以达到大数据中级工程师水平,满足绝大部分公司的大数据岗位需求。
Q:这套大数据课程中学的东西工作中够用吗?
足够用的,目前本套大数据课程中的技术体系包含目前主流的Hadoop、Spark、Flink三大技术生态圈,涵盖了企业中最常见的技术组件,可以满足大家在公司中的工作需求。
Q:我目前是java程序员,大数据属于零基础,能学的会吗?
可以的,java程序员学习大数据是具有天然优势的,大数据中的技术框架大部分都是基于java开发的,学习起来很容易上手。 并且我们本套课程配套的有完整的电子书,方便大家及时查漏补缺,以及本套视频教程带有配套字幕,学起来也会更加轻松。
一、WordCount
(著重以WordCount編程爲重點停止練習,後面的例子若有反復的步骤就简單略過)
1.翻開idea,創立scala工程
其中,JDK和Scala SDK就是java和scala的途径
2.在src文件夾下創立兩個子目錄,一個cluster用於跑spark,另外一個local用於idea上調試。(其中out目錄和META-INF創立jar包後自動生成的,開端並沒有)然後在兩個個文件夾下分別創立scala.class
3.然後要想停止spark編程,我們就得導入spark的相關包
File → Projecte Structure → Libraries → “+”→ Java → 選择spark目錄下的jars文件夾

ps:其實我們的編程暫時用不到這個目錄下的一切包,能夠只導入需求的,但就需求花時間去找;也能夠全部導入,但是整個工程就會變得臃腫然後點OK再點OK,回到界面,我們的相關包就導入完成了
4.接下來就是正式的編程,我們先上WordCount的代码
//指在cluster這個目錄下
package cluster
//導入了spark的SparkConf, SparkContext兩個類
import org.apache.spark.{SparkConf, SparkContext}
object WordCount {
def main(args: Array[String]) {
if (args.length < 1) {
System.err.println("Usage: ")
System.exit(1)
}
//實例化configuration,用於編輯我們任務的相關信息,後面的setAppName能夠在控製台運轉的時分再設置
val conf = new SparkConf().setAppName("MySparkApp")
// sc是Spark Context,指的是“上下文”,也就是我們運轉的環境,需求把conf當參數傳進去;
val sc = new SparkContext(conf)
//經過sc獲取一個(hdfs上的)文本文件,args(0)就是我們控製台上傳入的參數,local運轉的話就是傳入本地一個文本的path
val line = sc.textFile(args(0))
//下面就是wordcount詳細的執行代码
line.flatMap(.split("")).map((, 1)).reduceByKey(+).collect().foreach(println)
sc.stop()
}
}
這就是WordCount的代码,用於在Spark平台上跑。假如需求在idea上測試的話,就能夠把args(0)詳細改爲一個文本文件的path。比方在工程的目錄下創立data文件夾,把test.txt扔上去,args(0)就能夠修正爲"data/test.txt";然後把sc設置爲
val spark=new SparkContext("local","SparkPI")
這樣的本地形式,就能夠直接在idea上run。
5.打包成jar文件
File → Projecte Structure → Artifacts → “+” → JAR → From modules with dependencies... ...(這個選項的意義是把我們引入的一切外部包都封裝起來,Empty就是不算上我們引入的spark包)
然後Main Class就選择我們的cluster,local是我們用於本地測試的,並且Main Class的名字一定要記住,後面spark上運轉是要運用的。然後點ok就能夠創立相關文件。假如之前就創立了的話,需求把之前的相關信息,也就是工程下的META-INF文件夾删除才能夠勝利創立。
回到主界面,然後Build → BuildArtifacts 就能夠自行創立jar包了。
6.idea會把創立的jar包放進工程下的out文件夾,我們把它找到,爲了便當,把jar包放進spark目錄下,然後翻開,進入META-INF文件夾,把後缀名爲.DSA .SF . RSA的文件删除,
由於查材料說某些包的簽名有問題,會招致我們在運轉時找不到主類,事實上也的確是....
7.我們進入spark目錄,經過bin文件夾下的spark-submit來提交任務,執行命令./bin/spark-submit -h來取得協助文檔,我就拿挑幾個常用的:
8.
根本格式:
Usage: spark-submit [options] [app arguments]
Usage: spark-submit --kill [submission ID] --master [spark://...]
Usage: spark-submit --status [submission ID] --master [spark://...]
Usage: spark-submit run-example [options] example-class [example args]