1.设计一个关注列表
行键使用用户id表示
列限定名(列名)使用数字
Get g = new Get(Bytes.toBytes(用户id));
Result result = htable.get(g);
3.查询用户是否关注了某用户
Get g = new Get(Bytes.toBytes(用户id));
Result result = htable.get(g);
根据取出来的值比较。
4.关注了一个新用户
获取行键(用户id)
count <-计数加1
put 进去,设置列名:count,值就是新用户id,更新计数器(更新操作就是根据行键和列族与列名重新put一个值)
5.取消关注
与4基本相同,put变成delete?计数器减1,更新计数器。
后续说,这种方案不科学。
行键使用用户id表示
列限定名(列名)使用数字
还需要增加一个计数列count,用来对列的操作,即关注与取消关注的操作
Get g = new Get(Bytes.toBytes(用户id));
Result result = htable.get(g);
3.查询用户是否关注了某用户
Get g = new Get(Bytes.toBytes(用户id));
Result result = htable.get(g);
根据取出来的值比较。
4.关注了一个新用户
获取行键(用户id)
count <-计数加1
put 进去,设置列名:count,值就是新用户id,更新计数器(更新操作就是根据行键和列族与列名重新put一个值)
5.取消关注
与4基本相同,put变成delete?计数器减1,更新计数器。
后续说,这种方案不科学。
反过来,使用被关注用户id作为列限定名(列名),因为单元值不能为空,但可以是任何内容,就是说要给它存储些东西,随便地给个数字1。