@InterfaceAudience.Private public class HFileLink extends FileLink
Searches for hfiles in the following order and locations:
| Modifier and Type | Field and Description |
|---|---|
static String |
LINK_NAME_REGEX
A non-capture group, for HFileLink, so that this can be embedded.
|
BACK_REFERENCES_DIRECTORY_PREFIX| Constructor and Description |
|---|
HFileLink(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path path) |
HFileLink(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path archiveDir,
org.apache.hadoop.fs.Path path) |
| Modifier and Type | Method and Description |
|---|---|
static boolean |
create(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
HRegionInfo hfileRegionInfo,
String hfileName)
Create a new HFileLink
|
static boolean |
create(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
TableName linkedTable,
String linkedRegion,
String hfileName)
Create a new HFileLink
|
static HFileLink |
create(org.apache.hadoop.conf.Configuration conf,
TableName table,
String region,
String family,
String hfile)
Create an HFileLink instance from table/region/family/hfile location
|
static boolean |
createFromHFileLink(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
String hfileLinkName)
Create a new HFileLink starting from a hfileLink name
|
static String |
createHFileLinkName(HRegionInfo hfileRegionInfo,
String hfileName)
Create a new HFileLink name
|
static String |
createHFileLinkName(TableName tableName,
String regionName,
String hfileName)
Create a new HFileLink name
|
static org.apache.hadoop.fs.Path |
createPath(TableName table,
String region,
String family,
String hfile)
Create an HFileLink relative path for the table/region/family/hfile location
|
boolean |
exists(org.apache.hadoop.fs.FileSystem fs)
Returns true if the HFileLink exists
|
org.apache.hadoop.fs.Path |
getArchivePath() |
static org.apache.hadoop.fs.Path |
getHFileFromBackReference(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path linkRefPath)
Get the full path of the HFile referenced by the back reference
|
static org.apache.hadoop.fs.Path |
getHFileFromBackReference(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path linkRefPath)
Get the full path of the HFile referenced by the back reference
|
org.apache.hadoop.fs.Path |
getOriginPath() |
static String |
getReferencedHFileName(String fileName)
Get the HFile name of the referenced link
|
static String |
getReferencedRegionName(String fileName)
Get the Region name of the referenced link
|
static TableName |
getReferencedTableName(String fileName)
Get the Table name of the referenced link
|
static boolean |
isHFileLink(org.apache.hadoop.fs.Path path) |
static boolean |
isHFileLink(String fileName) |
getAvailablePath, getBackReferenceFileName, getBackReferencesDir, getFileStatus, getLocations, isBackReferencesDir, open, open, setLocations, toStringpublic static final String LINK_NAME_REGEX
Table name is ([a-zA-Z_0-9][a-zA-Z_0-9.-]*), so '=' is an invalid character for the table name. Region name is ([a-f0-9]+), so '-' is an invalid character for the region name. HFile is ([0-9a-f]+(?:_SeqId_[0-9]+_)?) covering the plain hfiles (uuid) and the bulk loaded (_SeqId_[0-9]+_) hfiles.
public HFileLink(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path path)
throws IOException
conf - Configuration from which to extract specific archive locationspath - The path of the HFile Link.IOException - on unexpected error.public HFileLink(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path archiveDir,
org.apache.hadoop.fs.Path path)
rootDir - Path to the root directory where hbase files are storedarchiveDir - Path to the hbase archive directorypath - The path of the HFile Link.public static org.apache.hadoop.fs.Path createPath(TableName table, String region, String family, String hfile)
table - Table nameregion - Region Namefamily - Family Namehfile - HFile Namepublic static HFileLink create(org.apache.hadoop.conf.Configuration conf, TableName table, String region, String family, String hfile) throws IOException
conf - Configuration from which to extract specific archive locationstable - Table nameregion - Region Namefamily - Family Namehfile - HFile NameIOException - on unexpected error.public org.apache.hadoop.fs.Path getOriginPath()
public org.apache.hadoop.fs.Path getArchivePath()
public static boolean isHFileLink(org.apache.hadoop.fs.Path path)
path - Path to check.public static boolean isHFileLink(String fileName)
fileName - File name to check.public static String getReferencedHFileName(String fileName)
fileName - HFileLink file namepublic static String getReferencedRegionName(String fileName)
fileName - HFileLink file namepublic static TableName getReferencedTableName(String fileName)
fileName - HFileLink file namepublic boolean exists(org.apache.hadoop.fs.FileSystem fs)
throws IOException
IOExceptionpublic static String createHFileLinkName(HRegionInfo hfileRegionInfo, String hfileName)
hfileRegionInfo - - Linked HFile Region InfohfileName - - Linked HFile namepublic static String createHFileLinkName(TableName tableName, String regionName, String hfileName)
tableName - - Linked HFile table nameregionName - - Linked HFile region namehfileName - - Linked HFile namepublic static boolean create(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
HRegionInfo hfileRegionInfo,
String hfileName)
throws IOException
It also adds a back-reference to the hfile back-reference directory to simplify the reference-count and the cleaning process.
conf - Configuration to read for the archive directory namefs - FileSystem on which to write the HFileLinkdstFamilyPath - - Destination path (table/region/cf/)hfileRegionInfo - - Linked HFile Region InfohfileName - - Linked HFile nameIOException - on file or parent directory creation failurepublic static boolean create(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
TableName linkedTable,
String linkedRegion,
String hfileName)
throws IOException
It also adds a back-reference to the hfile back-reference directory to simplify the reference-count and the cleaning process.
conf - Configuration to read for the archive directory namefs - FileSystem on which to write the HFileLinkdstFamilyPath - - Destination path (table/region/cf/)linkedTable - - Linked Table NamelinkedRegion - - Linked Region NamehfileName - - Linked HFile nameIOException - on file or parent directory creation failurepublic static boolean createFromHFileLink(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.FileSystem fs,
org.apache.hadoop.fs.Path dstFamilyPath,
String hfileLinkName)
throws IOException
It also adds a back-reference to the hfile back-reference directory to simplify the reference-count and the cleaning process.
conf - Configuration to read for the archive directory namefs - FileSystem on which to write the HFileLinkdstFamilyPath - - Destination path (table/region/cf/)hfileLinkName - - HFileLink name (it contains hfile-region-table)IOException - on file or parent directory creation failurepublic static org.apache.hadoop.fs.Path getHFileFromBackReference(org.apache.hadoop.fs.Path rootDir,
org.apache.hadoop.fs.Path linkRefPath)
rootDir - root hbase directorylinkRefPath - Link Back Reference pathIOException - on unexpected error.public static org.apache.hadoop.fs.Path getHFileFromBackReference(org.apache.hadoop.conf.Configuration conf,
org.apache.hadoop.fs.Path linkRefPath)
throws IOException
conf - Configuration to read for the archive directory namelinkRefPath - Link Back Reference pathIOException - on unexpected error.Copyright © 2014 The Apache Software Foundation. All rights reserved.