Spark 2.0 및 Zeppelin 0.6.1이 설치된 클러스터가 있습니다. TwitterUtils.scala
클래스가 Spark 프로젝트에서 Apache Bahir로 이동했기 때문에 Zeppelin 노트북에서 TwitterUtils를 더 이상 사용할 수 없습니다. 여기Apache Zeppelin 0.6.1 : Run Spark 2.0 Twitter Stream App
내 노트북의 조각 :
종속성로드 :
%dep
z.reset
z.load("org.apache.bahir:spark-streaming-twitter_2.11:2.0.0")
DepInterpreter(%dep) deprecated. Remove dependencies and repositories through GUI interpreter menu instead.
DepInterpreter(%dep) deprecated. Load dependency through GUI interpreter menu instead.
res1: org.apache.zeppelin.dep.Dependency = [email protected]
그리고 스파크 부분 :
import org.apache.spark.streaming.twitter
import org.apache.spark.streaming._
import org.apache.spark.storage.StorageLevel
import scala.io.Source
import scala.collection.mutable.HashMap
import java.io.File
import org.apache.log4j.Logger
import org.apache.log4j.Level
import sys.process.stringSeqToProcess
import org.apache.spark.SparkConf
// ********************************* Configures the Oauth Credentials for accessing Twitter ****************************
def configureTwitterCredentials(apiKey: String, apiSecret: String, accessToken: String, accessTokenSecret: String) {...}
// ***************************************** Configure Twitter credentials ********************************************
val apiKey = ...
val apiSecret = ...
val accessToken = ...
val accessTokenSecret = ...
configureTwitterCredentials(apiKey, apiSecret, accessToken, accessTokenSecret)
// ************************************************* The logic itself *************************************************
val ssc = new StreamingContext(sc, Seconds(2))
val tweets = TwitterUtils.createStream(ssc, None)
val twt = tweets.window(Seconds(60))
내가 가져온 후 노트북의 불꽃 부분을 실행하려고하면 종속성, 나는 다음과 같은 예외가 발생합니다 :
<console>:44: error: object twitter is not a member of package org.apache.spark.streaming
import org.apache.spark.streaming.twitter
여기서 내가 뭘 잘못하고 있니? Bahir 문서에서도 import org.apache.spark.streaming.twitter._
명령을 사용합니다. http://bahir.apache.org/docs/spark/2.0.0/spark-streaming-twitter/
참으로 아, 속임수를 썼는지 : 당신이 통역 구성에 종속성을 추가 할 수도 불꽃도 제플린 구성 파일을 수정하지하지 않으면 (I 명확성에 대한 속성을 생략). Spark 인터프리터의 종속성 섹션을 아직 찾지 못했습니다! 이제 완벽하게 작동합니다. 감사합니다! –
'Spark이나 Zeppelin 구성 파일을 수정하지 않는다면 무엇을 의미합니까? 이 구성 파일을 어디서 찾을 수 있습니까? 이러한 종속성을 추가하기 위해 수정해야 할 부분이 있습니까? –
이 사이트는 도움이 될 수 있으며 zeppelin 웹 UI (https://zeppelin.apache.org/docs/0.6)를 통해 종속성을 추가하는 방법을 설명합니다. 1/manual/dependencymanagement.html "해석기에 종속성로드"절 –