сливная труба слишком медленная - PullRequest
0 голосов
/ 05 марта 2019

Я использую Flume для HiveSink из источника kafka, когда я использую HDFSSink, это было достаточно быстро для хранения данных, но после того, как я изменил мой приемник на HiveSink, он стал слишком медленным для хранения в хранилище улья,

Это может быть одной из причин того, что мои исходные данные большие (3T за один день), но я не знаю, почему HiveSink слишком медленный, он хранит данные в хранилище Hive только 0.3T за один день.Когда я использовал HDFS Sink, он хранит 3T все.Я хочу быстро хранить данные в хранилище Hive.

и все же в каталоге данных канала много ожидающих данных.Поэтому я думаю, что это проблема HiveSink.

Есть ли идея сделать это быстрее?какой конфиг мне нужно изменить?

////////////////////////

это мой сток конф

tier1.sinks.sink_flume_hive.type = hive
tier1.sinks.sink_flume_hive.channel = channel_flume_hive
tier1.sinks.sink_flume_hive.hive.metastore = thrift://
tier1.sinks.sink_flume_hive.hive.database = test
tier1.sinks.sink_flume_hive.hive.table = data_flume
tier1.sinks.sink_flume_hive.maxOpenConnections = 3000
tier1.sinks.sink_flume_hive.batchSize = 30000
tier1.sinks.sink_flume_hive.hive.txnsPerBatchAsk = 10000
tier1.sinks.sink_flume_hive.hive.partition = %Y%m%d,%H
tier1.sinks.sink_flume_hive.useLocalTimeStamp = false
tier1.sinks.sink_flume_hive.round = true
tier1.sinks.sink_flume_hive.roundValue = 3
tier1.sinks.sink_flume_hive.roundUnit = minute
tier1.sinks.sink_flume_hive.serializer = DELIMITED
tier1.sinks.sink_flume_hive.serializer.delimiter = "\t"
tier1.sinks.sink_flume_hive.serializer.serdeSeparator = '\t'

...