陈苗苗
新手
新手
  • UID498
  • 粉丝0
  • 关注0
  • 发帖数2
阅读:4949回复:0

hbase基本操作

楼主#
更多 发布于:2019-03-25 18:35
1、 java操作hbase,导包

图片:1.png


2、 得到连接

图片:2.png


3、 进行操作
3.0、创建
   (1)需要得到admin对象
   (2)admin对象中调用createTable()
   (3)HTableDescriptor --表的信息
   (4)向表信息中加入列族信息  addFamily  
HColumnDescriptor

图片:3.png



3.1、增加
put数据,分为两种,一种put一条,还有一种是put一个list
  
3.1.1:拿到Table对象:connection.getTable
  
3.1.2: 通过3.1.1中返回的对象,调用.put(Put)方法
  
3.1.3:为3.1.2构造put对象,所以需要new Put(rowkey)
  
3.1.4:在3.1.3的对象中,调用addColumn(列族名,列名,值)
        以上所有给定的值都需要转为Byte[]
String.getBytes();
  
3.1.5:关闭
============
    3.1.2需要使用.put(List<Put>)  该list为java.util.List,可以采用java的new ArrayList<Put>
=======

图片:4.png

备注:

1.         Put的构造函数都需要指定行键,如果是全新的行键,则新增一行;如果是已有的行键,则更新现有行。
2.         创建Put对象及put.add过程都是在构建一行的数据,创建Put对象时相当于创建了行对象,add的过程就是往目标行里添加cell,直到table.put才将数据插入表格;
3.2、删除
 3.2.1 删除表中数据
(1)获取表
(2)new Delete("rowkey")
(3)调用.delete方法

图片:5.png


3.2.2 删除表
(1)需要得到admin对象
(2)事先判断表是否存在
(3)要禁用掉表
(4)删除表

图片:6.png


 
3.3、修改
3.4、查询
===========
//限制输出的列族
      
get.addFamily("cf02".getBytes());
==================
    3.4.1批量查询
(1)获取表
(2)调用.getScanner(new
Scan())
(3)得到上一步获得的ResultScanner利用for循坏得到Result
(4)通过上一步结果.rawCells(),利用for循坏遍历Cells

图片:7.png

图片:8.png




 
    3.4.2根据指定key查询
(1)获取表
(2)new
Get("rowkey")
(3)调用.get方法得到Result
(4)通过上一步结果.rawCells(),利用for循坏遍历Cells
 

图片:9.png


图片:10.png



3.5、获取表中信息

图片:11.png


3.6、获取所有的表

图片:12.png

游客

返回顶部