別のjarパッケージに火花を使用します

免責事項:この記事はブロガーオリジナル記事ですが、許可ブロガーなく再生してはなりません。https://blog.csdn.net/mn_kw/article/details/89381943

最初の方法

操作:最終的に形成されたアプリケーションのjarファイルの火花に、サードパーティのjarファイルパッケージ

シナリオ:サードパーティのjarファイルが比較的小さい、小さいローカルアプリケーション

第二の方法

処置:コマンドパラメータをコミット火花提出:--jars

要件:

図1に示すように、対応するJARファイルは、マシン上でスパーク送信コマンドを使用して、あります

HTTP://192.168.187.146:50206 /瓶/ MySQLのコネクタからJava他のマシン上のクラスタサービスについて2.ドライバによって提供されるHTTPインタフェースは、例えば(jarファイルを取得するには、JARファイルを必要としますユーザーが追加した-5.1.27-bin.jarを)

 

1

2

3

## 配置参数:--jars JARS

如下示例:

$ bin/spark-shell --jars /opt/cdh-5.3.6/hive/lib/mysql-connector-java-5.1.27-bin.jar

シナリオ:ローカル要件は、jarファイルを対応する必要があります

第三の方法

処置:コマンドパラメータをコミット火花提出:--packages

 

##設定パラメータ: -パッケージのjarパッケージMavenは、次の例に対処:$ビン/火花シェル--packagesのmysql:mysqlのコネクタ-javaの:5.1.27 --repositories http://maven.aliyun.com/nexus /コンテンツ/グループ/公共/

## --repositories Mavenのアドレスが与えられていない場合、デフォルトのソースは、達人がインストールしたマシンのダウンロードに使用される、MySQLのコネクタ-javaのパッケージで
、複数のパッケージに依存しては、繰り返されている場合##カンマで区切られた上記の書かれたjarパッケージ、
現在のデフォルトのダウンロード.ivy /瓶に##パケットは、ユーザーのルートフォルダにファイル

 

シナリオ:ローカルは、クラスタサービスがパッケージを必要とするとき、与えられたアドレスのmavenから直接ダウンロードすることはできません

4番目の方法

アクション:変更スパーク構成情報:SPARK_CLASSPATH、SPARK_CLASSPATH環境変数に、サードパーティのjarファイルを追加

jarファイルは、アプリケーションの要件スパークを実行しているすべてのマシンに追加された第三者が存在する必要があります:考慮事項

 

A.サードパーティのjarファイルに保存するフォルダを作成します:コマンド:$ MKDIR external_jars
の$ VIM confに/ spark-env.sh内容::SPARK_CLASSPATH = $ SPARK_CLASSPATH:/opt/cdh-5.3 B.スパークコンフィギュレーションコマンドを変更します。 6 /スパーク/ external_jars / *
$のcp /opt/cdh-5.3.6/hive/lib/mysql-connector-java-5.1.27-bin:C.依存jarファイルには、新しいフォルダコマンドにコピーします。ジャー./external_jars/

 

シナリオ:特に依存のjarパッケージの下では、道より複雑なコマンドを記述し、依存パッケージはまた、多くのアプリケーションシナリオです

または火花は、default.conf以下、コンフィギュレーション

spark.executor.extraClassPath = /データ/ * 
spark.driver.extraClassPath = /データ/ *

注:(だけ糸に点火するための(クラスタ)モード)

糸(クラスタ)に火花、サードパーティのアプリケーションに依存するjarファイルの場合

最終的な解決策:$ {HADOOP_HOME} /共有/ Hadoopの/共通/ libフォルダに第三のjarファイルのコピー(Hadoopクラスタ、すべてのマシンは、コピーが必要です)

おすすめ

転載: blog.csdn.net/mn_kw/article/details/89381943