下面列出了org.apache.hadoop.hbase.client.Admin#getTableRegions ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
private void splitTableSync(Admin admin, TableName hbaseTableName,
byte[] splitPoint , int expectedRegions) throws IOException, InterruptedException {
admin.split(hbaseTableName, splitPoint);
for (int i = 0; i < 100; i++) {
List<HRegionInfo> hRegionInfoList = admin.getTableRegions(hbaseTableName);
if (hRegionInfoList.size() >= expectedRegions) {
break;
}
LOGGER.info("Sleeping for 1000 ms while waiting for "
+ hbaseTableName.getNameAsString() + " to split");
Thread.sleep(1000);
}
}
protected static HRegionLocation getRegionLocation(String conglomId, Admin hBaseAdmin) throws IOException, SQLException {
TableName tableName = TableName.valueOf("splice",conglomId);
List<HRegionInfo> tableRegions = hBaseAdmin.getTableRegions(tableName);
if (tableRegions == null || tableRegions.isEmpty()) {
return null;
}
byte[] encodedRegionNameBytes = tableRegions.get(0).getRegionName();
return MetaTableAccessor.getRegionLocation(hBaseAdmin.getConnection(), encodedRegionNameBytes);
}