hbase好友表设计

首页 » HBase » hbase好友表设计

需求:

  • 添加关注
  • 查看关注
  • 添加粉丝
  • 查看粉丝
rowkey cf1(关注列表) cf2(粉丝列表)
001 002 003
002   001
003 001

创建表

@Test
public void createTable() throws Exception {
 if(admin.tableExists(TN1)) {
  //先禁用这个表
  admin.disableTable(TN1);
  //删除
  admin.deleteTable(TN1);
 }
 //表描述
 HTableDescriptor desc=new HTableDescriptor(TableName.valueOf(TN1));
 //列族
 HColumnDescriptor cf = new HColumnDescriptor("cf1".getBytes());
 HColumnDescriptor cf2 = new HColumnDescriptor("cf2".getBytes());
 //列族加到表描述里
 desc.addFamily(cf);
 desc.addFamily(cf2);
 admin.createTable(desc);
}

添加数据

首先添加001用户的好友

@Test
public void scan2() throws Exception {
 FilterList list = new FilterList(FilterList.Operator.MUST_PASS_ALL);
 PrefixFilter filter1 = new PrefixFilter("001".getBytes());
 //添加过滤器
 list.addFilter(filter1);
 Scan scan = new Scan();
 scan.setFilter(list);
 ResultScanner rss = htable.getScanner(scan);
 for (Result rs:rss) {
  System.out.print(new String(CellUtil.cloneValue(rs.getColumnLatestCell("cf1".getBytes(), "fensi".getBytes()))));
 }
}

 

hbase好友表设计

查看粉丝

@Test
public void scan2() throws Exception {
 FilterList list = new FilterList(FilterList.Operator.MUST_PASS_ALL);
 PrefixFilter filter1 = new PrefixFilter("001".getBytes());
 //添加过滤器
 list.addFilter(filter1);
 Scan scan = new Scan();
 scan.setFilter(list);
 ResultScanner rss = htable.getScanner(scan);
 for (Result rs:rss) {
  System.out.print(new String(CellUtil.cloneValue(rs.getColumnLatestCell("cf1".getBytes(), "fensi".getBytes()))));
 }
}
hbase好友表设计
分享到:
赞(1) 打赏

评论 5

评论前必须登录!

 

  1. #1

    可以

    我也是渣渣6个月前 (03-27)
  2. #2

    给你点赞

    沥青6个月前 (03-28)
  3. #3

    我也是小白以后多多交流

    白云6个月前 (03-28)
  4. #4

    挺明白的

    小白6个月前 (03-28)
  5. #5

    挺明白的

    白云4个月前 (05-26)

觉得文章有用就打赏一下弟弟吧

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.5主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
正在播放:

作者想对您说:

累了就停下来听首歌吧

听完后会给您一个好心情

最后

等到您不容易

还希望您能多待一会儿

      00:00/00:00