|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.HColumnDescriptor
@InterfaceAudience.Public @InterfaceStability.Evolving public class HColumnDescriptor
An HColumnDescriptor contains information about a column family such as the number of versions, compression settings, etc. It is used as input when creating a table or adding a column.
Field Summary | |
---|---|
static String |
BLOCKCACHE
|
static String |
BLOCKSIZE
Size of storefile/hfile 'blocks'. |
static String |
BLOOMFILTER
|
static String |
CACHE_BLOOMS_ON_WRITE
|
static String |
CACHE_DATA_ON_WRITE
|
static String |
CACHE_INDEX_ON_WRITE
|
static String |
COMPRESS_TAGS
|
static String |
COMPRESSION
|
static String |
COMPRESSION_COMPACT
|
static String |
DATA_BLOCK_ENCODING
|
static boolean |
DEFAULT_BLOCKCACHE
Default setting for whether to use a block cache or not. |
static int |
DEFAULT_BLOCKSIZE
Default size of blocks in files stored to the filesytem (hfiles). |
static String |
DEFAULT_BLOOMFILTER
Default setting for whether or not to use bloomfilters. |
static boolean |
DEFAULT_CACHE_BLOOMS_ON_WRITE
Default setting for whether to cache bloom filter blocks on write if block caching is enabled. |
static boolean |
DEFAULT_CACHE_DATA_ON_WRITE
Default setting for whether to cache data blocks on write if block caching is enabled. |
static boolean |
DEFAULT_CACHE_INDEX_ON_WRITE
Default setting for whether to cache index blocks on write if block caching is enabled. |
static boolean |
DEFAULT_COMPRESS_TAGS
Default compress tags along with any type of DataBlockEncoding. |
static String |
DEFAULT_COMPRESSION
Default compression type. |
static String |
DEFAULT_DATA_BLOCK_ENCODING
Default data block encoding algorithm. |
static boolean |
DEFAULT_ENCODE_ON_DISK
Default value of the flag that enables data block encoding on disk, as opposed to encoding in cache only. |
static boolean |
DEFAULT_EVICT_BLOCKS_ON_CLOSE
Default setting for whether to evict cached blocks from the blockcache on close. |
static boolean |
DEFAULT_IN_MEMORY
Default setting for whether to serve from memory or not. |
static KeepDeletedCells |
DEFAULT_KEEP_DELETED
Default setting for preventing deleted from being collected immediately. |
static int |
DEFAULT_MIN_VERSIONS
Default is not to keep a minimum of versions. |
static boolean |
DEFAULT_PREFETCH_BLOCKS_ON_OPEN
|
static int |
DEFAULT_REPLICATION_SCOPE
Default scope. |
static int |
DEFAULT_TTL
Default time to live of cell contents. |
static int |
DEFAULT_VERSIONS
Default number of versions of a record to keep. |
static String |
ENCODE_ON_DISK
|
static String |
ENCRYPTION
|
static String |
ENCRYPTION_KEY
|
static String |
EVICT_BLOCKS_ON_CLOSE
|
static String |
FOREVER
|
static String |
KEEP_DELETED_CELLS
|
static String |
LENGTH
|
static String |
MIN_VERSIONS
|
static String |
PREFETCH_BLOCKS_ON_OPEN
Key for the PREFETCH_BLOCKS_ON_OPEN attribute. |
static String |
REPLICATION_SCOPE
|
static byte[] |
REPLICATION_SCOPE_BYTES
|
static String |
TTL
|
Constructor Summary | |
---|---|
HColumnDescriptor()
Deprecated. Used by Writables and Writables are going away. |
|
HColumnDescriptor(byte[] familyName)
Construct a column descriptor specifying only the family name The other attributes are defaulted. |
|
HColumnDescriptor(byte[] familyName,
int minVersions,
int maxVersions,
KeepDeletedCells keepDeletedCells,
String compression,
boolean encodeOnDisk,
String dataBlockEncoding,
boolean inMemory,
boolean blockCacheEnabled,
int blocksize,
int timeToLive,
String bloomFilter,
int scope)
Deprecated. use HColumnDescriptor(String) and setters |
|
HColumnDescriptor(byte[] familyName,
int maxVersions,
String compression,
boolean inMemory,
boolean blockCacheEnabled,
int blocksize,
int timeToLive,
String bloomFilter,
int scope)
Deprecated. use HColumnDescriptor(String) and setters |
|
HColumnDescriptor(byte[] familyName,
int maxVersions,
String compression,
boolean inMemory,
boolean blockCacheEnabled,
int timeToLive,
String bloomFilter)
Deprecated. use HColumnDescriptor(String) and setters |
|
HColumnDescriptor(HColumnDescriptor desc)
Constructor. |
|
HColumnDescriptor(String familyName)
Construct a column descriptor specifying only the family name The other attributes are defaulted. |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Field Detail |
---|
public static final String COMPRESSION
public static final String COMPRESSION_COMPACT
public static final String ENCODE_ON_DISK
public static final String DATA_BLOCK_ENCODING
public static final String BLOCKCACHE
public static final String CACHE_DATA_ON_WRITE
public static final String CACHE_INDEX_ON_WRITE
public static final String CACHE_BLOOMS_ON_WRITE
public static final String EVICT_BLOCKS_ON_CLOSE
public static final String PREFETCH_BLOCKS_ON_OPEN
public static final String BLOCKSIZE
DEFAULT_BLOCKSIZE
.
Use smaller block sizes for faster random-access at expense of larger
indices (more memory consumption).
public static final String LENGTH
public static final String TTL
public static final String BLOOMFILTER
public static final String FOREVER
public static final String REPLICATION_SCOPE
public static final byte[] REPLICATION_SCOPE_BYTES
public static final String MIN_VERSIONS
public static final String KEEP_DELETED_CELLS
public static final String COMPRESS_TAGS
@InterfaceStability.Unstable public static final String ENCRYPTION
@InterfaceStability.Unstable public static final String ENCRYPTION_KEY
public static final String DEFAULT_COMPRESSION
public static final boolean DEFAULT_ENCODE_ON_DISK
DATA_BLOCK_ENCODING
is not NONE.
public static final String DEFAULT_DATA_BLOCK_ENCODING
public static final int DEFAULT_VERSIONS
public static final int DEFAULT_MIN_VERSIONS
public static final boolean DEFAULT_IN_MEMORY
public static final KeepDeletedCells DEFAULT_KEEP_DELETED
public static final boolean DEFAULT_BLOCKCACHE
public static final boolean DEFAULT_CACHE_DATA_ON_WRITE
public static final boolean DEFAULT_CACHE_INDEX_ON_WRITE
public static final int DEFAULT_BLOCKSIZE
public static final String DEFAULT_BLOOMFILTER
public static final boolean DEFAULT_CACHE_BLOOMS_ON_WRITE
public static final int DEFAULT_TTL
public static final int DEFAULT_REPLICATION_SCOPE
public static final boolean DEFAULT_EVICT_BLOCKS_ON_CLOSE
public static final boolean DEFAULT_COMPRESS_TAGS
public static final boolean DEFAULT_PREFETCH_BLOCKS_ON_OPEN
Constructor Detail |
---|
@Deprecated public HColumnDescriptor()
public HColumnDescriptor(String familyName)
familyName
- Column family name. Must be 'printable' -- digit or
letter -- and may not contain a :
public HColumnDescriptor(byte[] familyName)
familyName
- Column family name. Must be 'printable' -- digit or
letter -- and may not contain a :
public HColumnDescriptor(HColumnDescriptor desc)
desc
- The descriptor.@Deprecated public HColumnDescriptor(byte[] familyName, int maxVersions, String compression, boolean inMemory, boolean blockCacheEnabled, int timeToLive, String bloomFilter)
HColumnDescriptor(String)
and setters
familyName
- Column family name. Must be 'printable' -- digit or
letter -- and may not contain a :maxVersions
- Maximum number of versions to keepcompression
- Compression typeinMemory
- If true, column data should be kept in an HRegionServer's
cacheblockCacheEnabled
- If true, MapFile blocks should be cachedtimeToLive
- Time-to-live of cell contents, in seconds
(use HConstants.FOREVER for unlimited TTL)bloomFilter
- Bloom filter type for this column
- Throws:
IllegalArgumentException
- if passed a family name that is made of
other than 'word' characters: i.e. [a-zA-Z_0-9]
or contains
a :
IllegalArgumentException
- if the number of versions is <= 0
@Deprecated public HColumnDescriptor(byte[] familyName, int maxVersions, String compression, boolean inMemory, boolean blockCacheEnabled, int blocksize, int timeToLive, String bloomFilter, int scope)
HColumnDescriptor(String)
and setters
familyName
- Column family name. Must be 'printable' -- digit or
letter -- and may not contain a :maxVersions
- Maximum number of versions to keepcompression
- Compression typeinMemory
- If true, column data should be kept in an HRegionServer's
cacheblockCacheEnabled
- If true, MapFile blocks should be cachedblocksize
- Block size to use when writing out storefiles. Use
smaller block sizes for faster random-access at expense of larger indices
(more memory consumption). Default is usually 64k.timeToLive
- Time-to-live of cell contents, in seconds
(use HConstants.FOREVER for unlimited TTL)bloomFilter
- Bloom filter type for this columnscope
- The scope tag for this column
- Throws:
IllegalArgumentException
- if passed a family name that is made of
other than 'word' characters: i.e. [a-zA-Z_0-9]
or contains
a :
IllegalArgumentException
- if the number of versions is <= 0
@Deprecated public HColumnDescriptor(byte[] familyName, int minVersions, int maxVersions, KeepDeletedCells keepDeletedCells, String compression, boolean encodeOnDisk, String dataBlockEncoding, boolean inMemory, boolean blockCacheEnabled, int blocksize, int timeToLive, String bloomFilter, int scope)
HColumnDescriptor(String)
and setters
familyName
- Column family name. Must be 'printable' -- digit or
letter -- and may not contain a :minVersions
- Minimum number of versions to keepmaxVersions
- Maximum number of versions to keepkeepDeletedCells
- Whether to retain deleted cells until they expire
up to maxVersions versions.compression
- Compression typeencodeOnDisk
- whether to use the specified data block encoding
on disk. If false, the encoding will be used in cache only.dataBlockEncoding
- data block encodinginMemory
- If true, column data should be kept in an HRegionServer's
cacheblockCacheEnabled
- If true, MapFile blocks should be cachedblocksize
- Block size to use when writing out storefiles. Use
smaller blocksizes for faster random-access at expense of larger indices
(more memory consumption). Default is usually 64k.timeToLive
- Time-to-live of cell contents, in seconds
(use HConstants.FOREVER for unlimited TTL)bloomFilter
- Bloom filter type for this columnscope
- The scope tag for this column
- Throws:
IllegalArgumentException
- if passed a family name that is made of
other than 'word' characters: i.e. [a-zA-Z_0-9]
or contains
a :
IllegalArgumentException
- if the number of versions is <= 0
Method Detail |
---|
public static byte[] isLegalFamilyName(byte[] b)
b
- Family name.
b
IllegalArgumentException
- If not null and not a legitimate family
name: i.e. 'printable' and ends in a ':' (Null passes are allowed because
b
can be null when deserializing). Cannot start with a '.'
either. Also Family can not be an empty value or equal "recovered.edits".public byte[] getName()
public String getNameAsString()
public byte[] getValue(byte[] key)
key
- The key.
public String getValue(String key)
key
- The key.
public Map<ImmutableBytesWritable,ImmutableBytesWritable> getValues()
public HColumnDescriptor setValue(byte[] key, byte[] value)
key
- The key.value
- The value.
public void remove(byte[] key)
key
- Key whose key and value we're to remove from HCD parameters.public HColumnDescriptor setValue(String key, String value)
key
- The key.value
- The value.
public Compression.Algorithm getCompression()
public Compression.Algorithm getCompactionCompression()
public int getMaxVersions()
public HColumnDescriptor setMaxVersions(int maxVersions)
maxVersions
- maximum number of versions
public HColumnDescriptor setVersions(int minVersions, int maxVersions)
minVersions
- minimal number of versionsmaxVersions
- maximum number of versions
public int getBlocksize()
public HColumnDescriptor setBlocksize(int s)
s
- Blocksize to use when writing out storefiles/hfiles on this
column family.
public Compression.Algorithm getCompressionType()
public HColumnDescriptor setCompressionType(Compression.Algorithm type)
type
- Compression type setting.
@Deprecated public DataBlockEncoding getDataBlockEncodingOnDisk()
@Deprecated public HColumnDescriptor setEncodeOnDisk(boolean encodeOnDisk)
public DataBlockEncoding getDataBlockEncoding()
public HColumnDescriptor setDataBlockEncoding(DataBlockEncoding type)
type
- What kind of data block encoding will be used.
public HColumnDescriptor setCompressTags(boolean compressTags)
compressTags
-
public boolean shouldCompressTags()
public Compression.Algorithm getCompactionCompressionType()
public HColumnDescriptor setCompactionCompressionType(Compression.Algorithm type)
type
- Compression type setting.
public boolean isInMemory()
public HColumnDescriptor setInMemory(boolean inMemory)
inMemory
- True if we are to keep all values in the HRegionServer
cache
public KeepDeletedCells getKeepDeletedCells()
@Deprecated public HColumnDescriptor setKeepDeletedCells(boolean keepDeletedCells)
setKeepDeletedCells(KeepDeletedCells)
keepDeletedCells
- True if deleted rows should not be collected
immediately.
public HColumnDescriptor setKeepDeletedCells(KeepDeletedCells keepDeletedCells)
keepDeletedCells
- True if deleted rows should not be collected
immediately.
public int getTimeToLive()
public HColumnDescriptor setTimeToLive(int timeToLive)
timeToLive
- Time-to-live of cell contents, in seconds.
public int getMinVersions()
public HColumnDescriptor setMinVersions(int minVersions)
minVersions
- The minimum number of versions to keep.
(used when timeToLive is set)
public boolean isBlockCacheEnabled()
public HColumnDescriptor setBlockCacheEnabled(boolean blockCacheEnabled)
blockCacheEnabled
- True if MapFile blocks should be cached.
public BloomType getBloomFilterType()
public HColumnDescriptor setBloomFilterType(BloomType bt)
bt
- bloom filter type
public int getScope()
public HColumnDescriptor setScope(int scope)
scope
- the scope tag
public boolean shouldCacheDataOnWrite()
public HColumnDescriptor setCacheDataOnWrite(boolean value)
value
- true if we should cache data blocks on write
public boolean shouldCacheIndexesOnWrite()
public HColumnDescriptor setCacheIndexesOnWrite(boolean value)
value
- true if we should cache index blocks on write
public boolean shouldCacheBloomsOnWrite()
public HColumnDescriptor setCacheBloomsOnWrite(boolean value)
value
- true if we should cache bloomfilter blocks on write
public boolean shouldEvictBlocksOnClose()
public HColumnDescriptor setEvictBlocksOnClose(boolean value)
value
- true if we should evict cached blocks from the blockcache on
close
public boolean shouldPrefetchBlocksOnOpen()
public HColumnDescriptor setPrefetchBlocksOnOpen(boolean value)
value
- true if we should prefetch blocks into the blockcache on open
public String toString()
toString
in class Object
Object.toString()
public String toStringCustomizedValues()
public static PrettyPrinter.Unit getUnit(String key)
public static Map<String,String> getDefaultValues()
public boolean equals(Object obj)
equals
in class Object
Object.equals(java.lang.Object)
public int hashCode()
hashCode
in class Object
Object.hashCode()
@Deprecated public void readFields(DataInput in) throws IOException
parseFrom(byte[])
instead.
readFields
in interface org.apache.hadoop.io.Writable
IOException
@Deprecated public void write(DataOutput out) throws IOException
toByteArray()
instead.
write
in interface org.apache.hadoop.io.Writable
IOException
public int compareTo(HColumnDescriptor o)
compareTo
in interface Comparable<HColumnDescriptor>
public byte[] toByteArray()
parseFrom(byte[])
public static HColumnDescriptor parseFrom(byte[] bytes) throws DeserializationException
bytes
- A pb serialized HColumnDescriptor
instance with pb magic prefix
HColumnDescriptor
made from bytes
DeserializationException
toByteArray()
public static HColumnDescriptor convert(HBaseProtos.ColumnFamilySchema cfs)
cfs
-
HColumnDescriptor
made from the passed in cfs
public HBaseProtos.ColumnFamilySchema convert()
public String getConfigurationValue(String key)
public Map<String,String> getConfiguration()
configuration
map.
public void setConfiguration(String key, String value)
configuration
map.
key
- Config key. Same as XML config key e.g. hbase.something.or.other.value
- String value. If null, removes the configuration.public void removeConfiguration(String key)
configuration
map.
@InterfaceStability.Unstable public String getEncryptionType()
@InterfaceStability.Unstable public HColumnDescriptor setEncryptionType(String algorithm)
algorithm
- @InterfaceStability.Unstable public byte[] getEncryptionKey()
@InterfaceStability.Unstable public HColumnDescriptor setEncryptionKey(byte[] keyBytes)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |