Hbase计数器可以用于统计用户数,点击量等信息

基本操作


可以使用incr操作计数器,incr语法格式如下:

incr '<table>', '<row>', '<column>', |<increment-value>|

然后使用get_counter可以获取对应的计数器的值

不用初始化计数器,第一次使用计数器时,计数器被自动设置为0

eg:

对于wishTest1表

incr 'wishTest1','2','score:Math',1

incr 'wishTest1','2','score:Math',1

get_counter 'wishTest1','2','score:Math'

结果如下:

hbase(main):004:0> incr 'wishTest1','2','score:Math',1
COUNTER VALUE = 1 hbase(main):005:0> incr 'wishTest1','2','score:Math',1
COUNTER VALUE = 2 hbase(main):007:0> get_counter 'wishTest1','2','score:Math'
COUNTER VALUE = 2 hbase(main):008:0>

增大计数的递增值:

hbase(main):001:0> incr 'wishTest1','2','score:Math',10
COUNTER VALUE = 12 hbase(main):002:0> incr 'wishTest1','2','score:Math',10
COUNTER VALUE = 22 hbase(main):003:0> get_counter 'wishTest1','2','score:Math'
COUNTER VALUE = 22

使用API操作计数器


使用table.incrementColumnValue()

eg:

     String tableName = "wishTest1";
HTablePool pool = new HTablePool(cfg, 1000);
try {
long count1 = pool.getTable(tableName).incrementColumnValue(Bytes.toBytes("2"),Bytes.toBytes("score"),Bytes.toBytes("Math"),1);
long count2 = pool.getTable(tableName).incrementColumnValue(Bytes.toBytes("2"),Bytes.toBytes("score"),Bytes.toBytes("Math"),1);
long currentCount = pool.getTable(tableName).incrementColumnValue(Bytes.toBytes("2"),Bytes.toBytes("score"),Bytes.toBytes("Math"),0);
System.out.println("count1: "+count1);
System.out.println("count2: "+count2);
System.out.println("currentCount: "+currentCount);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

输出:

count1: 23
count2: 24
currentCount: 24

Hbase 计数器的更多相关文章

  1. hbase计数器

    1 计数器 计数器可以方便.快速地进行计数操作,而且避免了加锁等保证了原子性的操作.   1.1 Java API 操作 HBase 计数器 public Result increment(final ...

  2. HBase - 计数器 - 计数器的介绍以及使用 | 那伊抹微笑

    博文作者:那伊抹微笑 csdn 博客地址:http://blog.csdn.net/u012185296 itdog8 地址链接 : http://www.itdog8.com/thread-215- ...

  3. HBase之计数器

    HBase计数器 #创建counters表 列族['daily','weekly','monthly'] hbase(main):001:0> create 'counters','daily' ...

  4. Hbase学习04

    3.2.4 反向时间戳 反向扫描API HBASE-4811(https://issues.apache.org/jira/browse/HBASE-4811)实现了一个API来扫描一个表或范围内的一 ...

  5. HBase常用shell操作

    行(row),列(Column),列蔟(Column Family),列标识符(Column Qualifier)和单元格(Cell) 行:由一个个行键(rowkey)和一个多个列组成.其中rowke ...

  6. hbase开发实例

    1.put/checkAndPut package com.testdata; import java.io.IOException; import org.apache.hadoop.conf.Co ...

  7. HBase与MongDB等NoSQL数据库对照

    HBase概念学习(十)HBase与MongDB等NoSQL数据库对照 转载请注明出处: jiq•钦's technical Blog - 季义钦 一.开篇 淘宝之前使用的存储层架构一直是MySQL数 ...

  8. HBase Shell 常见操作

    1.一般操作 status 查看状态 version 查看HBase版本 2.DDL操作 create 'member','member_id','address','info' 创建了一个membe ...

  9. HBase使用场景和成功案例 (转)

    HBase 使用场景和成功案例 有时候了解软件产品的最好方法是看看它是怎么用的.它可以解决什么问题和这些解决方案如何适用于大型应用架构,能够告诉你很多.因为HBase有许多公开的产品部署,我们正好可以 ...

随机推荐

  1. Linux下一个Redis启动/关闭/重新启动服务脚本

    脚本功能: 实现redis单机多实例情况下的正常启动.关闭.重新启动单个redis实例.完毕系统标准服务的下面经常使用功能:  start|stop|status|restart 注:redis程序代 ...

  2. JQ滑动导航菜单的实现

    前言:不多说直接看效果!!! 这样的菜单我们在一般的网站上见到的也比较多,有比较好的用户体验!   原理:这个很重要,任何的特效只要原理搞明白了,实现起来都是很容易的!这个特效的原理很简单,菜单的样式 ...

  3. 如何写好一个UITableView

    本文是直播分享的简单文字整理,直播共分为上.下两部分. 第一部分: 优酷 :http://v.youku.com/v_show/id_XMTUzNzQzMDU0NA%3Cmark%3E.html Or ...

  4. 请输出in.txt文件中的2 4 6 8 9 10 12行

    in.txt文件: 学号 姓名 性别 年龄 1001 张三 男 18 1002 赵四 男 19 1003 李丽 女 18 1004 刘芳 女 32 1005 王五 男 54 1006 小明 男 32 ...

  5. PHP 关于文件操作的简单介绍

    文件操作一直是Web程序员头疼的地方,而文件操作在CMS这样的系统中又是必须的.如今,PHP文件操作的函数内容已经非常强大,文件这部分也是学习PHP非常重要的一部分,希望大家不要忽略.这篇文章会简单介 ...

  6. (转)PHP的ereg()与eregi()的不同及相同点。对比

    ereg() 字符串比对解析. 语法: int ereg(string pattern, string string, array [regs]); 返回值: 整数/数组 函数种类: 资料处理 内容说 ...

  7. exp、imp简单测试

    imp 分为以下几个测试场景 imp name1/password1 file=xxxx.dmp  full=y fromuser=name2 touser=name3 场景1 name1正确.pas ...

  8. .net中XML的创建02(linqToXml)

    linqToXml比较的灵活和方便,它是基于函数式编程具体的使用如下:引用程序集using System.Xml.Linq; 1.创建XDocument并设置文档头  XDocument XDoc = ...

  9. PHP json的插入和解析在数据库中的操作

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. PHP中往数据库中存储json数据在项目开发中也经常遇到,下面我就 ...

  10. UVA 10131 - Is Bigger Smarter? (动态规划)

    Is Bigger Smarter? The Problem Some people think that the bigger an elephant is, the smarter it is. ...