2017-03-17 8 views
0

내 트위터 데이터가 읽을 수있는 형식이 아닙니다. 내가 하이브 테이블을 사용하여 읽으려고하는 flume을 사용하여 트위터 데이터를 가져 왔습니다. 하지만 hdfs에서 적절한 데이터를 볼 수 없습니다. 아래는 세부 사항은 다음과 같습니다Twitter Flume 데이터가 읽을 수없는 형식이 아닙니다.

flume-env.sh -

export JAVA_HOME=/usr/java/jdk1.7.0_67-cloudera 
FLUME_CLASSPATH="/opt/cloudera/parcels/CDH-5.8.0-1.cdh5.8.0.p0.42/lib/flume-ng/lib/flume-sources-1.0-SNAPSHOT.jar 

twitter.conf -

TwitterAgent.sources = Twitter 
    TwitterAgent.channels = MemChannel 
    TwitterAgent.sinks = HDFS 

    TwitterAgent.sources.Twitter.type=org.apache.flume.source.twitter.TwitterSource 
    TwitterAgent.sources.Twitter.channels = MemChannel 
    TwitterAgent.sources.Twitter.consumerKey = xxxxxxxxxxxxxxxxxxxxxxxxx 
    TwitterAgent.sources.Twitter.consumerSecret = xxxxxxxxxxxxxxxxxxxxxxxx 
    TwitterAgent.sources.Twitter.accessToken = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 
    TwitterAgent.sources.Twitter.accessTokenSecret = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 

    TwitterAgent.sources.Twitter.keywords = hadoop, bigdata, data science 

    TwitterAgent.sinks.HDFS.channel = MemChannel 
    TwitterAgent.sinks.HDFS.type = hdfs 
    TwitterAgent.sinks.HDFS.hdfs.path = hdfs://opt:8020/user/flume/tweets 
    TwitterAgent.sinks.HDFS.hdfs.fileType = DataStream 
    TwitterAgent.sinks.HDFS.hdfs.writeFormat = Text 
    TwitterAgent.sinks.HDFS.hdfs.batchSize = 100 
    TwitterAgent.sinks.HDFS.hdfs.rollSize = 0 
    TwitterAgent.sinks.HDFS.hdfs.rollCount = 100 

    TwitterAgent.channels.MemChannel.type = memory 
    TwitterAgent.channels.MemChannel.capacity = 100 
    TwitterAgent.channels.MemChannel.transactionCapacity = 100 

난 적은 작업을 수행 할 때 파일 중 하나를

enter image description here

누군가 내가 잘못 가고 있다고 말할 수 있습니까? 하이브 테이블에 읽을 수있는 형식으로이 데이터가 필요합니다.

답변

0

해결되었습니다. 그냥 TwitterAgent.sources.Twitter.type = com.cloudera.flume.source.TwitterSource

에 TwitterAgent.sources.Twitter.type = org.apache.flume.source.twitter.TwitterSource 변경