中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Apache Beam程序向導4

發布時間:2020-07-16 07:49:40 來源:網絡 閱讀:3536 作者:Spark貴1 欄目:大數據

Apache Beam程序向導4

今天在集群上實驗Beam On Spark的時候,遇到一個坑爹的問題,這個問題總結起來是一個java.lang.NoClassDefFoundError

錯誤,具體錯誤如下圖1所示


Apache Beam程序向導4

1 錯誤提示

該錯誤提示SparkStreamingContext沒有定義,這說明java虛擬機加載進來了SparkStreamingContext,也就是相應的代碼包已經導入進來了,這個階段沒有什么問題。接下來就得看看是不是代碼包版本不合適。

我的maven依賴如下圖2所示

Apache Beam程序向導4

2 Maven依賴包

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

修改后狀況如下:

Apache Beam程序向導4

3 本地運行成功

 

這里看似成功了,但是這只是在本機測試的時候有了Beam On Spark的運行測試結果。至于在Spark集群中能否跑起來,我們還要按照官方提供的方法生成對應的jar包,并通過Spark-submit提交的方式提交到yarn集群中去通過yarn來調度運行。這種情況下運行成功了,那才叫真正的成功。所以現在還不是高興的時候,那么接下來我們就開始繼續接下來的實驗吧。

首先應該在mavenpom.xml文件中加入以下對shade的構建依賴

(該部分加入到根節點的build節點的plugins節點之中

<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>

 

首先將項目打包拷貝到提交應用的那臺機器上并解壓。

如果已經安裝好了maven的環境了的話,就直接在解壓之后的根目錄下執行如下命令

mvnpackage

然后就等著編譯結束

Apache Beam程序向導4…………………..

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

Apache Beam程序向導4

 

 

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

Apache Beam程序向導4

${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包路徑

給腳本添加可執行權限之后就可以開始運行了:

Apache Beam程序向導4

經過一會兒等待之后就成功了,如下圖所示:

 Apache Beam程序向導4


文章來自數模堂,如需更多交流,請掃描關注

Apache Beam程序向導4

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

方城县| 阿巴嘎旗| 富蕴县| 常州市| 湘潭市| 万山特区| 云龙县| 延安市| 尼勒克县| 贡觉县| 金坛市| 西乌| 天祝| 柳河县| 明光市| 临夏市| 梁山县| 互助| 古交市| 漳平市| 凤山县| 贵定县| 泸水县| 西安市| 井研县| 罗江县| 邓州市| 五大连池市| 宿迁市| 青河县| 华蓥市| 唐河县| 徐州市| 怀来县| 拉萨市| 仙居县| 两当县| 南召县| 屯留县| 开平市| 曲麻莱县|