真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ApacheBeam程序向?qū)?

Apache Beam程序向?qū)?

創(chuàng)新互聯(lián)從2013年開始,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站制作、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元霍州做網(wǎng)站,已為上家服務(wù),為霍州各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:18982081108

今天在集群上實(shí)驗(yàn)Beam On Spark的時(shí)候,遇到一個(gè)坑爹的問(wèn)題,這個(gè)問(wèn)題總結(jié)起來(lái)是一個(gè)java.lang.NoClassDefFoundError

錯(cuò)誤,具體錯(cuò)誤如下圖1所示

Apache Beam程序向?qū)?

圖1錯(cuò)誤提示

該錯(cuò)誤提示SparkStreamingContext沒(méi)有定義,這說(shuō)明java虛擬機(jī)加載進(jìn)來(lái)了SparkStreamingContext,也就是相應(yīng)的代碼包已經(jīng)導(dǎo)入進(jìn)來(lái)了,這個(gè)階段沒(méi)有什么問(wèn)題。接下來(lái)就得看看是不是代碼包版本不合適。

我的maven依賴如下圖2所示

Apache Beam程序向?qū)?

圖2 Maven依賴包

于是我在各種嘗試之后,終于找到了一種有希望的解決方案,那就是將spark的版本2.1.0改為1.6.3版本。

修改后狀況如下:

Apache Beam程序向?qū)?

圖3本地運(yùn)行成功

 

這里看似成功了,但是這只是在本機(jī)測(cè)試的時(shí)候有了Beam On Spark的運(yùn)行測(cè)試結(jié)果。至于在Spark集群中能否跑起來(lái),我們還要按照官方提供的方法生成對(duì)應(yīng)的jar包,并通過(guò)Spark-submit提交的方式提交到y(tǒng)arn集群中去通過(guò)yarn來(lái)調(diào)度運(yùn)行。這種情況下運(yùn)行成功了,那才叫真正的成功。所以現(xiàn)在還不是高興的時(shí)候,那么接下來(lái)我們就開始繼續(xù)接下來(lái)的實(shí)驗(yàn)吧。

首先應(yīng)該在maven的pom.xml文件中加入以下對(duì)shade的構(gòu)建依賴

(該部分加入到根節(jié)點(diǎn)的build節(jié)點(diǎn)的plugins節(jié)點(diǎn)之中

           

   

           

 

<plugin>

 <groupId>org.apache.maven.pluginsgroupId>

 <artifactId>maven-shade-pluginartifactId>

 <configuration>

   <createDependencyReducedPom>falsecreateDependencyReducedPom>

   <filters>

     <filter>

       <artifact>*:*artifact>

       <excludes>

         <exclude>META-INF/*.SFexclude>

         <exclude>META-INF/*.DSAexclude>

         <exclude>META-INF/*.RSAexclude>

       excludes>

     filter>

   filters>

 configuration>

 <executions>

   <execution>

     <phase>packagephase>

     <goals>

       <goal>shadegoal>

     goals>

     <configuration>

       <shadedArtifactAttached>trueshadedArtifactAttached>

       <shadedClassifierName>shadedshadedClassifierName>

     configuration>

   execution>

 executions>

plugin>

 

首先將項(xiàng)目打包拷貝到提交應(yīng)用的那臺(tái)機(jī)器上并解壓。

如果已經(jīng)安裝好了maven的環(huán)境了的話,就直接在解壓之后的根目錄下執(zhí)行如下命令

mvnpackage

然后就等著編譯結(jié)束

Apache Beam程序向?qū)?…………………..

如下圖所示,編譯成功后的jar包就在target目錄下

Apache Beam程序向?qū)?

 

 

以spark提交jar包的方式提交,提交的腳本如下:

Apache Beam程序向?qū)?

${SPARK_HOME}/bin/./spark-submit\                         

 --class org.tongfang.beam.examples.WordCount \##指定要運(yùn)行的類,全路徑+類名

 --master yarn \ ##提交給yarn調(diào)度

 --deploy-mode cluster \##集群模式運(yùn)行

/home/ubuntu/shaded/target/shaded-1.0.0-shaded.jar##指定jar包路徑

給腳本添加可執(zhí)行權(quán)限之后就可以開始運(yùn)行了:

Apache Beam程序向?qū)?

經(jīng)過(guò)一會(huì)兒等待之后就成功了,如下圖所示:

 Apache Beam程序向?qū)?

文章來(lái)自數(shù)模堂,如需更多交流,請(qǐng)掃描關(guān)注

Apache Beam程序向?qū)?


當(dāng)前題目:ApacheBeam程序向?qū)?
當(dāng)前URL:http://weahome.cn/article/pjhgde.html

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部