@ThreadSafe public class CachingHiveMetastore extends Object implements ExtendedHiveMetastore
| Modifier and Type | Field and Description |
|---|---|
protected ExtendedHiveMetastore |
delegate |
| Constructor and Description |
|---|
CachingHiveMetastore(ExtendedHiveMetastore delegate,
ExecutorService executor,
io.airlift.units.Duration cacheTtl,
io.airlift.units.Duration refreshInterval,
long maximumSize) |
CachingHiveMetastore(ExtendedHiveMetastore delegate,
ExecutorService executor,
HiveClientConfig hiveClientConfig) |
| Modifier and Type | Method and Description |
|---|---|
void |
addColumn(String databaseName,
String tableName,
String columnName,
HiveType columnType,
String columnComment) |
void |
addPartitions(String databaseName,
String tableName,
List<Partition> partitions)
Adds partitions to the table in a single atomic task.
|
void |
alterPartition(String databaseName,
String tableName,
Partition partition) |
void |
createDatabase(Database database) |
void |
createTable(Table table,
PrincipalPrivileges principalPrivileges) |
void |
dropColumn(String databaseName,
String tableName,
String columnName) |
void |
dropDatabase(String databaseName) |
void |
dropPartition(String databaseName,
String tableName,
List<String> parts,
boolean deleteData) |
void |
dropTable(String databaseName,
String tableName,
boolean deleteData) |
void |
flushCache() |
List<String> |
getAllDatabases() |
Optional<List<String>> |
getAllTables(String databaseName) |
Optional<List<String>> |
getAllViews(String databaseName) |
Optional<Database> |
getDatabase(String databaseName) |
Set<HivePrivilegeInfo> |
getDatabasePrivileges(String user,
String databaseName) |
Optional<Partition> |
getPartition(String databaseName,
String tableName,
List<String> partitionValues) |
Optional<Map<String,Map<String,HiveColumnStatistics>>> |
getPartitionColumnStatistics(String databaseName,
String tableName,
Set<String> partitionNames,
Set<String> columnNames) |
Optional<List<String>> |
getPartitionNames(String databaseName,
String tableName) |
Optional<List<String>> |
getPartitionNamesByParts(String databaseName,
String tableName,
List<String> parts) |
Map<String,Optional<Partition>> |
getPartitionsByNames(String databaseName,
String tableName,
List<String> partitionNames) |
Set<String> |
getRoles(String user) |
Optional<Table> |
getTable(String databaseName,
String tableName) |
Optional<Map<String,HiveColumnStatistics>> |
getTableColumnStatistics(String databaseName,
String tableName,
Set<String> columnNames) |
Set<HivePrivilegeInfo> |
getTablePrivileges(String user,
String databaseName,
String tableName) |
void |
grantTablePrivileges(String databaseName,
String tableName,
String grantee,
Set<HivePrivilegeInfo> privileges) |
protected void |
invalidateDatabase(String databaseName) |
protected void |
invalidateTable(String databaseName,
String tableName) |
static CachingHiveMetastore |
memoizeMetastore(ExtendedHiveMetastore delegate,
long maximumSize) |
void |
renameColumn(String databaseName,
String tableName,
String oldColumnName,
String newColumnName) |
void |
renameDatabase(String databaseName,
String newDatabaseName) |
void |
renameTable(String databaseName,
String tableName,
String newDatabaseName,
String newTableName) |
void |
replaceTable(String databaseName,
String tableName,
Table newTable,
PrincipalPrivileges principalPrivileges)
This should only be used if the semantic here is drop and add.
|
void |
revokeTablePrivileges(String databaseName,
String tableName,
String grantee,
Set<HivePrivilegeInfo> privileges) |
protected final ExtendedHiveMetastore delegate
@Inject public CachingHiveMetastore(ExtendedHiveMetastore delegate, ExecutorService executor, HiveClientConfig hiveClientConfig)
public CachingHiveMetastore(ExtendedHiveMetastore delegate, ExecutorService executor, io.airlift.units.Duration cacheTtl, io.airlift.units.Duration refreshInterval, long maximumSize)
public static CachingHiveMetastore memoizeMetastore(ExtendedHiveMetastore delegate, long maximumSize)
public void flushCache()
public Optional<Database> getDatabase(String databaseName)
getDatabase in interface ExtendedHiveMetastorepublic List<String> getAllDatabases()
getAllDatabases in interface ExtendedHiveMetastorepublic Optional<Table> getTable(String databaseName, String tableName)
getTable in interface ExtendedHiveMetastorepublic Optional<Map<String,HiveColumnStatistics>> getTableColumnStatistics(String databaseName, String tableName, Set<String> columnNames)
getTableColumnStatistics in interface ExtendedHiveMetastorepublic Optional<Map<String,Map<String,HiveColumnStatistics>>> getPartitionColumnStatistics(String databaseName, String tableName, Set<String> partitionNames, Set<String> columnNames)
getPartitionColumnStatistics in interface ExtendedHiveMetastorepublic Optional<List<String>> getAllTables(String databaseName)
getAllTables in interface ExtendedHiveMetastorepublic Optional<List<String>> getAllViews(String databaseName)
getAllViews in interface ExtendedHiveMetastorepublic void createDatabase(Database database)
createDatabase in interface ExtendedHiveMetastorepublic void dropDatabase(String databaseName)
dropDatabase in interface ExtendedHiveMetastorepublic void renameDatabase(String databaseName, String newDatabaseName)
renameDatabase in interface ExtendedHiveMetastoreprotected void invalidateDatabase(String databaseName)
public void createTable(Table table, PrincipalPrivileges principalPrivileges)
createTable in interface ExtendedHiveMetastorepublic void dropTable(String databaseName, String tableName, boolean deleteData)
dropTable in interface ExtendedHiveMetastorepublic void replaceTable(String databaseName, String tableName, Table newTable, PrincipalPrivileges principalPrivileges)
ExtendedHiveMetastorereplaceTable in interface ExtendedHiveMetastorepublic void renameTable(String databaseName, String tableName, String newDatabaseName, String newTableName)
renameTable in interface ExtendedHiveMetastorepublic void addColumn(String databaseName, String tableName, String columnName, HiveType columnType, String columnComment)
addColumn in interface ExtendedHiveMetastorepublic void renameColumn(String databaseName, String tableName, String oldColumnName, String newColumnName)
renameColumn in interface ExtendedHiveMetastorepublic void dropColumn(String databaseName, String tableName, String columnName)
dropColumn in interface ExtendedHiveMetastorepublic Optional<Partition> getPartition(String databaseName, String tableName, List<String> partitionValues)
getPartition in interface ExtendedHiveMetastorepublic Optional<List<String>> getPartitionNames(String databaseName, String tableName)
getPartitionNames in interface ExtendedHiveMetastorepublic Optional<List<String>> getPartitionNamesByParts(String databaseName, String tableName, List<String> parts)
getPartitionNamesByParts in interface ExtendedHiveMetastorepublic Map<String,Optional<Partition>> getPartitionsByNames(String databaseName, String tableName, List<String> partitionNames)
getPartitionsByNames in interface ExtendedHiveMetastorepublic void addPartitions(String databaseName, String tableName, List<Partition> partitions)
ExtendedHiveMetastoreaddPartitions in interface ExtendedHiveMetastorepublic void dropPartition(String databaseName, String tableName, List<String> parts, boolean deleteData)
dropPartition in interface ExtendedHiveMetastorepublic void alterPartition(String databaseName, String tableName, Partition partition)
alterPartition in interface ExtendedHiveMetastorepublic Set<String> getRoles(String user)
getRoles in interface ExtendedHiveMetastorepublic Set<HivePrivilegeInfo> getDatabasePrivileges(String user, String databaseName)
getDatabasePrivileges in interface ExtendedHiveMetastorepublic Set<HivePrivilegeInfo> getTablePrivileges(String user, String databaseName, String tableName)
getTablePrivileges in interface ExtendedHiveMetastorepublic void grantTablePrivileges(String databaseName, String tableName, String grantee, Set<HivePrivilegeInfo> privileges)
grantTablePrivileges in interface ExtendedHiveMetastorepublic void revokeTablePrivileges(String databaseName, String tableName, String grantee, Set<HivePrivilegeInfo> privileges)
revokeTablePrivileges in interface ExtendedHiveMetastoreCopyright © 2012-2017. All Rights Reserved.