Package org.apache.accumulo.core.util
Class LocalityGroupUtil
- java.lang.Object
-
- org.apache.accumulo.core.util.LocalityGroupUtil
-
public class LocalityGroupUtil extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
LocalityGroupUtil.LocalityGroupConfigurationError
static class
LocalityGroupUtil.PartitionedMutation
static class
LocalityGroupUtil.Partitioner
-
Constructor Summary
Constructors Constructor Description LocalityGroupUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
checkLocalityGroups(Map<String,String> config)
static Set<ByteSequence>
decodeColumnFamilies(String colFams)
static ByteSequence
decodeColumnFamily(String colFam)
static String
encodeColumnFamilies(Set<org.apache.hadoop.io.Text> colFams)
static String
encodeColumnFamily(ByteSequence bs)
static void
ensureNonOverlappingGroups(Map<String,Set<org.apache.hadoop.io.Text>> groups)
static Set<ByteSequence>
families(Collection<Column> columns)
Create a set of families to be passed into the SortedKeyValueIterator seek call from a supplied set of columns.static Map<String,Set<ByteSequence>>
getLocalityGroups(AccumuloConfiguration acuconf)
static Map<String,Set<ByteSequence>>
getLocalityGroupsIgnoringErrors(AccumuloConfiguration acuconf, TableId tableId)
static boolean
isLocalityGroupProperty(String prop)
static void
seek(FileSKVIterator reader, Range range, String lgName, Map<String,ArrayList<ByteSequence>> localityGroupCF)
This method created to help seek an rfile for a locality group obtained fromRFile.Reader.getLocalityGroupCF()
.
-
-
-
Method Detail
-
families
public static Set<ByteSequence> families(Collection<Column> columns)
Create a set of families to be passed into the SortedKeyValueIterator seek call from a supplied set of columns. We are using the immutable set to enable faster comparisons down in the LocalityGroupIterator.- Parameters:
columns
- The set of columns- Returns:
- An immutable set of columns
-
isLocalityGroupProperty
public static boolean isLocalityGroupProperty(String prop)
-
checkLocalityGroups
public static void checkLocalityGroups(Map<String,String> config) throws LocalityGroupUtil.LocalityGroupConfigurationError
-
getLocalityGroupsIgnoringErrors
public static Map<String,Set<ByteSequence>> getLocalityGroupsIgnoringErrors(AccumuloConfiguration acuconf, TableId tableId)
-
getLocalityGroups
public static Map<String,Set<ByteSequence>> getLocalityGroups(AccumuloConfiguration acuconf) throws LocalityGroupUtil.LocalityGroupConfigurationError
-
decodeColumnFamilies
public static Set<ByteSequence> decodeColumnFamilies(String colFams) throws LocalityGroupUtil.LocalityGroupConfigurationError
-
decodeColumnFamily
public static ByteSequence decodeColumnFamily(String colFam) throws LocalityGroupUtil.LocalityGroupConfigurationError
-
encodeColumnFamilies
public static String encodeColumnFamilies(Set<org.apache.hadoop.io.Text> colFams)
-
encodeColumnFamily
public static String encodeColumnFamily(ByteSequence bs)
-
seek
public static void seek(FileSKVIterator reader, Range range, String lgName, Map<String,ArrayList<ByteSequence>> localityGroupCF) throws IOException
This method created to help seek an rfile for a locality group obtained fromRFile.Reader.getLocalityGroupCF()
. This method can possibly return an empty list for the default locality group. When this happens the default locality group needs to be seeked differently. This method helps do that.For the default locality group will seek using the families of all other locality groups non-inclusive.
- Throws:
IOException
- See Also:
RFile.Reader.getLocalityGroupCF()
-
-