Apache Beam程序向導4
創(chuàng)新互聯(lián)專注于博興網(wǎng)站建設服務及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供博興營銷型網(wǎng)站建設,博興網(wǎng)站制作、博興網(wǎng)頁設計、博興網(wǎng)站官網(wǎng)定制、微信小程序定制開發(fā)服務,打造博興網(wǎng)絡公司原創(chuàng)品牌,更為您提供博興網(wǎng)站排名全網(wǎng)營銷落地服務。今天在集群上實驗Beam On Spark的時候,遇到一個坑爹的問題,這個問題總結起來是一個java.lang.NoClassDefFoundError
錯誤,具體錯誤如下圖1所示
圖1 錯誤提示
該錯誤提示SparkStreamingContext沒有定義,這說明java虛擬機加載進來了SparkStreamingContext,也就是相應的代碼包已經(jīng)導入進來了,這個階段沒有什么問題。接下來就得看看是不是代碼包版本不合適。
我的maven依賴如下圖2所示
圖2 Maven依賴包
于是我在各種嘗試之后,終于找到了一種有希望的解決方案,那就是將spark的版本2.1.0改為1.6.3版本。
修改后狀況如下:
圖3 本地運行成功
這里看似成功了,但是這只是在本機測試的時候有了Beam On Spark的運行測試結果。至于在Spark集群中能否跑起來,我們還要按照官方提供的方法生成對應的jar包,并通過Spark-submit提交的方式提交到y(tǒng)arn集群中去通過yarn來調度運行。這種情況下運行成功了,那才叫真正的成功。所以現(xiàn)在還不是高興的時候,那么接下來我們就開始繼續(xù)接下來的實驗吧。
首先應該在maven的pom.xml文件中加入以下對shade的構建依賴
(該部分加入到根節(jié)點的build節(jié)點的plugins節(jié)點之中
<build>
<plugins>
</plugins>
</build>
)
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<configuration>
<createDependencyReducedPom>false</createDependencyReducedPom>
<filters>
<filter>
<artifact>*:*</artifact>
<excludes>
<exclude>META-INF/*.SF</exclude>
<exclude>META-INF/*.DSA</exclude>
<exclude>META-INF/*.RSA</exclude>
</excludes>
</filter>
</filters>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>shaded</shadedClassifierName>
</configuration>
</execution>
</executions>
</plugin>
首先將項目打包拷貝到提交應用的那臺機器上并解壓。
如果已經(jīng)安裝好了maven的環(huán)境了的話,就直接在解壓之后的根目錄下執(zhí)行如下命令
mvnpackage
然后就等著編譯結束
…………………..
如下圖所示,編譯成功后的jar包就在target目錄下
以spark提交jar包的方式提交,提交的腳本如下:
${SPARK_HOME}/bin/./spark-submit\
--class org.tongfang.beam.examples.WordCount \##指定要運行的類,全路徑+類名
--master yarn \ ##提交給yarn調度
--deploy-mode cluster \##集群模式運行
/home/ubuntu/shaded/target/shaded-1.0.0-shaded.jar##指定jar包路徑
給腳本添加可執(zhí)行權限之后就可以開始運行了:
經(jīng)過一會兒等待之后就成功了,如下圖所示:
文章來自數(shù)模堂,如需更多交流,請掃描關注
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
網(wǎng)站題目:ApacheBeam程序向導4-創(chuàng)新互聯(lián)
轉載來于:http://vcdvsql.cn/article10/dsdcdo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供建站公司、微信小程序、域名注冊、做網(wǎng)站、營銷型網(wǎng)站建設、App設計
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容