Die HDFS-Spüle von Flume rollt ständig kleine Dateien

Ich versuche, Twitter-Daten mit flume in hdfs zu streamen und dies:https://github.com/cloudera/cdh-twitter-example/

Was auch immer ich hier versuche, es erstellt weiterhin Dateien in HDFS mit einer Größe von 1,5 kB bis 15 kB, wobei ich große Dateien (64 MB) sehen möchte. Hier ist die Agentenkonfiguration:

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

TwitterAgent.sources.Twitter.type = com.cloudera.flume.source.TwitterSource
TwitterAgent.sources.Twitter.channels = MemChannel
TwitterAgent.sources.Twitter.consumerKey = xxxxxx
TwitterAgent.sources.Twitter.consumerSecret = xxxxxx
TwitterAgent.sources.Twitter.accessToken = xxxxx
TwitterAgent.sources.Twitter.accessTokenSecret = xxxxxxxx
TwitterAgent.sources.Twitter.keywords = test

TwitterAgent.sinks.HDFS.channel = MemChannel
TwitterAgent.sinks.HDFS.type = hdfs
TwitterAgent.sinks.HDFS.hdfs.path = hdfs://localhost.localdomain:8020/user/flume/tweets/%Y/%m/%d/%H/
TwitterAgent.sinks.HDFS.hdfs.fileType = DataStream
TwitterAgent.sinks.HDFS.hdfs.writeFormat = Text
TwitterAgent.sinks.HDFS.hdfs.batchSize = 10000
TwitterAgent.sinks.HDFS.hdfs.rollSize = 67108864
TwitterAgent.sinks.HDFS.hdfs.rollCount = 0
TwitterAgent.sinks.HDFS.hdfs.rollInterval = 0
TwitterAgent.sinks.HDFS.hdfs.idleTimeout = 0

TwitterAgent.channels.MemChannel.type = memory
TwitterAgent.channels.MemChannel.capacity = 10000
TwitterAgent.channels.MemChannel.transactionCapacity = 1000

EDIT: Ich habe in den Logdateien nachgesehen und festgestellt, dass dies die ganze Zeit passiert:

9: 11: 27.526 AM WARN org.apache.flume.sink.hdfs.BucketWriter Block Unterreplikation erkannt. Rotierende Datei. 9: 11: 37.036 AM ERROR org.apache.flume.sink.hdfs.BucketWriter

Maximale Anzahl aufeinanderfolgender Rotationen unter Replikation erreichen (30); Rollende Dateien unter diesem Pfad werden aufgrund einer zu geringen Replikation nicht fortgesetzt

Antworten auf die Frage(2)

Ihre Antwort auf die Frage