Support Questions
Find answers, ask questions, and share your expertise
Announcements
Alert: Welcome to the Unified Cloudera Community. Former HCC members be sure to read and learn how to activate your account here.

Difference between CompactionCompression and compression type in HBase Column Family

Highlighted

Difference between CompactionCompression and compression type in HBase Column Family

Expert Contributor

What is the difference between getCompactionCompressionType and getCompressionType?

In https://hbase.apache.org/apidocs/src-html/org/apache/hadoop/hbase/client/ColumnFamilyDescriptor.html , the description look same for both APIs.

 /**
094   * @return Compression type setting.
095   */
096  Compression.Algorithm getCompactionCompressionType();
097  /**
098   * @return Compression type setting.
099   */
100  Compression.Algorithm getCompressionType();
1 REPLY 1

Re: Difference between CompactionCompression and compression type in HBase Column Family

Super Collaborator

Compactor calls getCompactionCompressionType() and uses it during compaction:

this.compactionCompression = (this.store.getColumnFamilyDescriptor() == null) ?
Compression.Algorithm.NONE : this.store.getColumnFamilyDescriptor().getCompactionCompressionType();

While getCompressionType() is used by the flusher - see code in DefaultStoreFlusher#flushSnapshot():

writer = store.createWriterInTmp(cellsCount,
store.getColumnFamilyDescriptor().getCompressionType(), false, true,
snapshot.isTagsPresent(), false);

Don't have an account?
Coming from Hortonworks? Activate your account here