2016-08-17 2 views
1

spark 1.3.0에서 작업 중입니다. 내 build.sbt는 다음과 같이 보입니다 :sbt 파일의 스파크 라이브러리에서 hadoop 의존성을 제외합니다.

libraryDependencies ++= Seq(
"org.apache.spark" %% "spark-core" % "1.3.0" % "provided", 
    "org.apache.spark" %% "spark-sql" % "1.3.0" % "provided", 
    "org.apache.spark" %% "spark-streaming" % "1.3.0" % "provided", 
    "org.apache.spark" %% "spark-mllib" % "1.3.0" % "provided", 
    "org.springframework.security" % "spring-security-web" % "3.0.7.RELEASE", 
    "com.databricks" % "spark-csv_2.10" % "1.4.0" 
) 

// META-INF discarding 
mergeStrategy in assembly <<= (mergeStrategy in assembly) { (old) => 
    { 
    case PathList("META-INF", xs @ _*) => MergeStrategy.discard 
    case x => MergeStrategy.first 
    } 
} 

이 sbt 파일을 컴파일하는 동안 hadoop 2.2.0이 사용되고 있습니다. 하지만 내 실행 환경에는 hadoop 2.6.0이 포함되어 있습니다. 누구든지 스파크 라이브러리에서 hadoop 종속성을 제외하고 sbt 파일에서 hadoop 2.6.0을 언급 할 수있는 방법을 도울 수 있습니까?

감사

답변

1

나는 불꽃 패키지는 하둡의 종속 가지고 있다고 생각하지 않습니다. 빌드에는 Hadoop 클라이언트 라이브러리가 포함되지 않습니다. Spark 설치에서 spark-submit으로 애플리케이션을 실행해야합니다. download Spark 때 Hadoop 2.6을 지원하는 Spark 빌드를 다운로드해야합니다.

Spark 1.3.0 (2015-03-15)에는 Hadoop 2.6 빌드가 없습니다. Hadoop 2.6 빌드를 제공하는 가장 초기의 Spark 버전은 Spark 1.3.1 (2015-04-17)입니다.

이들은 모두 알려진 버그가 많은 고대 버전의 스파크이며 그 이후로 수정되었습니다. 버그가 마음에 든다면, Spark 1.6.2 또는 2.0.0을 사용하는 것이 좋습니다.

관련 문제