- 61
- 0
- 约1.58万字
- 约 18页
- 2021-12-03 发布于上海
- 举报
实验 4 熟悉常用的 HBase 操作
实验 4 熟悉常用的 HBase操作
姓名:包生友专业年级:软件 143 学号: 2014012699
1. 实验目的
1. 理解 HBase 在 Hadoop 体系结构中的角色;
2. 熟练使用 HBase 操作常用的 Shell 命令;
3. 熟悉 HBase 操作常用的 Java API 。
2. 实验环境
操作系统: Linux
Hadoop 版本: 2.6.0 或以上版本
HBase 版本: 1.1.2 或以上版本
JDK 版本: 1.6 或以上版本
Java IDE :Eclipse
3. 实验内容和完成情况
1. 编程实现以下指定功能,并用 Hadoop 提供的 HBase Shell 命令完成相同任务:
(完整可执行代码见代码 /QuestionOne.java )
(1)列出 HBase 所有的表的相关信息,例如表名;
Shell:
List
图 1 列出 HBase 所有表的相关信息
编程:
//(1) 列出 HBase 所有的表的相关信息,例如表名、创建时间等
public static void listTables() throws IOException {
init();// 建立连接
HTableDescriptorhTableDescriptors[] = admin.listTables();
实验 4 熟悉常用的 HBase 操作
for(HTableDescriptorhTableDescriptor :hTableDescriptors){
System.out.println( 表名 :+hTableDescriptor.getNameAsString());
}
close();// 关闭连接
}
(2 )在终端打印出指定的表的所有记录数据;
Shell:
scan s1
图 2 打印指定表的所有记录数据
编程:
//(2) 在终端打印出指定的表的所有记录数据
public static void getData(String tableName)throws IOException{
init();
Table table = connection.getTable(TableName.valueOf(tableName));
Scan scan = new Scan();
ResultScanner scanner = table.getScanner(scan);
for (Result result:scanner){
printRecoder(result);
}
close();
}
// 打印一条记录的详情
public static void printRecoder(Result result)throws IOException{
for(Cell cell:result.rawCells()){
System.out.print( 行健 : +new String(CellUtil.cloneRow(cell)));
System.out.print( 列簇 : +new String(CellUtil.cloneFamily(cell)));
System.out.print( 列 : +new String(CellUtil.cloneQualifier(cell)));
System.out.print( 值 : +new String(CellUtil.cloneValue(cell)));
原创力文档

文档评论(0)