Member since
04-29-2015
3
Posts
0
Kudos Received
0
Solutions
05-11-2017
06:29 PM
hbase mob table can't be compacted when i create table like that: 'create 'STK_CN_TICK', {NAME => 'F1', IS_MOB => true, MOB_THRESHOLD => 102400, COMPRESSION => 'SNAPPY'}', i throw error as below, anyone know why? thanks in advance. 2017-05-12 09:02:10,702 ERROR org.apache.hadoop.hbase.regionserver.CompactSplitThread: Compaction failed Request = regionName=STK_CN_TICK,,1494491735148.b83abc69490b43880eeafc7719fb0ad6., storeName=F1, fileCount=8, fileSize=6.8 M (43.9 K, 6.7 M, 8.4 K, 8.4 K, 8.4 K, 8.4 K, 8.4 K, 8.4 K), priority=52, time=20100914653448309 java.lang.IllegalArgumentException: The scanner should be an instance of MobCompactionStoreScanner at org.apache.hadoop.hbase.mob.DefaultMobCompactor.performCompaction(DefaultMobCompactor.java:150) at org.apache.hadoop.hbase.regionserver.compactions.DefaultCompactor.compact(DefaultCompactor.java:105) at org.apache.hadoop.hbase.regionserver.DefaultStoreEngine$DefaultCompactionContext.compact(DefaultStoreEngine.java:124) at org.apache.hadoop.hbase.regionserver.HStore.compact(HStore.java:1233) at org.apache.hadoop.hbase.regionserver.HMobStore.compact(HMobStore.java:495) at org.apache.hadoop.hbase.regionserver.HRegion.compact(HRegion.java:1742) at org.apache.hadoop.hbase.regionserver.CompactSplitThread$CompactionRunner.run(CompactSplitThread.java:520) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745)
... View more
04-29-2015
06:29 PM
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# The configuration file needs to define the sources,
# the channels and the sinks.
# Sources, channels and sinks are defined per collector1,
# in this case called 'collector1'
collector1.sources = src_avro_c1
collector1.channels = ch_file ch_mem
collector1.sinks = sink_hdfs sink_spark
# For each one of the sources, the type is defined
collector1.sources.src_avro_c1.type = avro
collector1.sources.src_avro_c1.bind= 0.0.0.0
collector1.sources.src_avro_c1.port= 41414
# The channel can be defined as follows.
collector1.sources.src_avro_c1.channels = ch_file ch_mem
collector1.sources.src_avro_c1.selector.type = replicating
# Each sink's type must be defined
collector1.sinks.sink_hdfs.type = hdfs
#collector1.sinks.sink_hdfs.type = logger
collector1.sinks.sink_hdfs.hdfs.path = hdfs://XXXXXXXXX:8020/staging/%{app.name}/%Y-%m-%d
collector1.sinks.sink_hdfs.hdfs.filePrefix=events.%{app.source.host}.%{app.event.type}.%Y%m%d%H%M%S
collector1.sinks.sink_hdfs.hdfs.fileSuffix=.log
collector1.sinks.sink_hdfs.hdfs.inUsePrefix = .
collector1.sinks.sink_hdfs.hdfs.maxOpenFiles = 5000
collector1.sinks.sink_hdfs.hdfs.batchSize= 1000
collector1.sinks.sink_hdfs.hdfs.fileType = DataStream
collector1.sinks.sink_hdfs.hdfs.writeFormat =Text
collector1.sinks.sink_hdfs.hdfs.rollSize = 2048000000
collector1.sinks.sink_hdfs.hdfs.rollCount = 0
collector1.sinks.sink_hdfs.hdfs.rollInterval = 3600
collector1.sinks.sink_hdfs.hdfs.round = true
collector1.sinks.sink_hdfs.hdfs.roundValue = 1
collector1.sinks.sink_hdfs.hdfs.roundUnit = hour
collector1.sinks.sink_hdfs.hdfs.useLocalTimeStamp = true
#Specify the channel the sink should use
collector1.sinks.sink_hdfs.channel = ch_file
# sink_spark
collector1.sinks.sink_spark.type = org.apache.spark.streaming.flume.sink.SparkSink
collector1.sinks.sink_spark.hostname = hadoop-2
collector1.sinks.sink_spark.port = 50001
collector1.sinks.sink_spark.channel= ch_mem
# Each channel's type is defined.
collector1.channels.ch_file.type = file
collector1.channels.ch_file.checkpointDIR = /data/01flume/checkpoint
collector1.channels.ch_file.dataDirs = /data01/flume/data
# Other config values specific to each type of channel(sink or source)
# can be defined as well
# In this case, it specifies the capacity of the memory channel
collector1.channels.ch_mem.type= memory
collector1.channels.ch_mem.capacity = 1000000
collector1.channels.ch_mem.transactionCapacity = 1000000
... View more
- Tags:
- Flume