2014-03-07 1 views

답변

0

먼저 Java 프로그램을 Maven (예 : here)을 사용하여 독립 실행 형 응용 프로그램으로 빌드 한 다음, spark-submit을 사용하여 submitting your application을 빌드해야합니다.

3

말의 개수를 예로 들면 https://github.com/holdenk/fastdataprocessingwithsparkexamples/tree/master/src/main/scala/pandaspark/examples입니다. 지방 jar 파일을 만들려면 다음과 같이하십시오

mkdir example-java-build/; cd example-java-build 

mvn archetype:generate \ 
    -DarchetypeGroupId=org.apache.maven.archetypes \ 
    -DgroupId=spark.examples \ 
    -DartifactId=JavaWordCount \ 
    -Dfilter=org.apache.maven.archetypes:maven-archetype-quickstart 

cp ../examples/src/main/java/spark/examples/JavaWordCount.java 
JavaWordCount/src/main/java/spark/examples/JavaWordCount.java 

당신은 관련 스파크 코어를 추가하고 예 종속성을 촉발. 스파크의 버전에 따라 의존성이 있는지 확인하십시오. 필자는 스파크 1.1.0을 사용하므로 관련 종속성이 있습니다. 내 pom.xml 파일은 다음과 같습니다

<dependencies> 
    <dependency> 
     <groupId>junit</groupId> 
     <artifactId>junit</artifactId> 
     <version>3.8.1</version> 
     <scope>test</scope> 
    </dependency> 

<dependency> 
     <groupId>org.apache.spark</groupId> 
     <artifactId>spark-examples_2.10</artifactId> 
     <version>1.1.0</version> 
</dependency> 
<dependency> 
     <groupId>org.apache.spark</groupId> 
     <artifactId>spark-core_2.10</artifactId> 
     <version>1.1.0</version> 
</dependency> 
    </dependencies> 

은 MVN을 사용하여 jar 파일을 빌드합니다.

cd example-java-build/JavaWordCount 
mvn package 

이렇게하면 대상 디렉토리에 팻말 파일이 생성됩니다. jar 파일을 서버의 임의 위치로 복사하십시오. 스파크의 bin 폴더로 이동하십시오. (내 경우 : /root/spark-1.1.0-bin-hadoop2.4/bin)

스파크 작업을 제출 : 내 직업은 다음과 같습니다

./spark-submit --class "spark.examples.JavaWordCount" --master yarn://myserver1:8032 /root/JavaWordCount-1.0-SNAPSHOT.jar hdfs://myserver1:8020/user/root/hackrfoe.txt 

을 여기 --class입니다 : 응용 프로그램에 대한 진입 점 (예를 들어 org.apache.spark.examples. SparkPi) - 마스터 : 클러스터의 마스터 URL (예 : spark : //23.195.26.187 : 7077) 마지막 인수는 프로그램에서 선택한 텍스트 파일입니다.

결과물은 텍스트 파일의 모든 단어의 단어 수를 제공해야합니다.

in: 17 
sleeping.: 1 
sojourns: 1 
What: 4 
protect: 1 
largest: 1 
other: 1 
public: 1 
worst: 1 
hackers: 12 
detected: 1 
from: 4 
and,: 1 
secretly: 1 
breaking: 1 
football: 1 
answer.: 1 
attempting: 2 
"hacker: 3 

희망이 있습니다.

+2

+1 잘 설명 된 답변입니다. 아직 시도하지는 않았지만 작은 버그가 있어도 도움이 될 것입니다. 세부 사항이 누락되면 다시 신고하겠습니다. – javadba