前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hbase篇--HBase中一对多和多对多的表设计

Hbase篇--HBase中一对多和多对多的表设计

作者头像
LhWorld哥陪你聊算法
发布2018-09-13 14:03:51
1.9K0
发布2018-09-13 14:03:51
举报

一.前述

今天分享一篇关于HBase的一对多和多对多的案例的分析。

二.具体案例

案例一.多对多

   人员-角色

  人员有多个角色  角色优先级

  角色有多个人员

  人员 删除添加角色

  角色 可以添加删除人员

  人员 角色 删除添加

PS:说明,两张表User表和Role表, User表中定义两个列族,第一个列族是名字,第二个列族中  多个列定义为具体的角色,列的内容定义为具体的值,即优先级(这里利用了列也能存信息,所以把角色Id定义为具体的列,值越大代表优先级越高)

案例二.一对多

组织架构 部门-子部门   查询 顶级部门 查询 每个部门的所有子部门   部门 添加、删除子部门   部门 添加、删除

PS:解释 一个表 rowkey中0代表顶级部门  1代表非顶级部门  因为顶级部门不是经常查  列族的列是具体的子部门列表。值是具体的名称。

案例三.

3、微博 添加关注 查看粉丝列表 发布微博 查看某个用户所有的微博  排序:时间降序排序 查看首页  时间降序排序 001小明       关注  韩梅梅、李雷 002李雷       关注  韩梅梅 003韩梅梅 关注粉丝表 rowkey         CF1 - 关注列表       CF2 - 粉丝列表 pid 小明   001     CF1:003=韩梅梅;CF1:002=李雷; 李雷   002     CF1:003=韩梅梅;         CF2:001=小明; 韩梅梅 003                             CF2:001=小明;CF2:002=李雷; 微博表 rowkey           cf wid            cf:content=微博内容; wid设计: pid_(Max-timestamp) 收取微博表 rowkey    cf (maxversion=1000) pid          cf:sq=wid;

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-01-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档