HBase总结(十一)hbase Java API 介绍及使用演示样例
| java类 | HBase数据模型 |
| HBaseAdmin | 数据库(DataBase) |
| HBaseConfiguration | |
| HTable | 表(Table) |
| HTableDescriptor | 列族(Column Family) |
| Put | 列修饰符(Column Qualifier) |
| Get | |
| Scanner |
| 返回值 | 函数 | 描写叙述 |
| void | addResource(Path file) | 通过给定的路径所指的文件来加入资源 |
| void | clear() | 清空全部已设置的属性 |
| string | get(String name) | 获取属性名相应的值 |
| String | getBoolean(String name, boolean defaultValue) | 获取为boolean类型的属性值,假设其属性值类型部位boolean,则返回默认属性值 |
| void | set(String name, String value) | 通过属性名来设置值 |
| void | setBoolean(String name, boolean value) | 设置boolean类型的属性值 |
- HBaseConfiguration hconfig = new HBaseConfiguration();
- hconfig.set("hbase.zookeeper.property.clientPort","2181");
复制代码
普通情况下,HBaseConfiguration会使用构造函数进行初始化,然后在使用其它方法。
| 返回值 | 函数 | 描写叙述 |
| void | addColumn(String tableName, HColumnDescriptor column) | 向一个已经存在的表加入咧 |
| checkHBaseAvailable(HBaseConfiguration conf) | 静态函数。查看HBase是否处于执行状态 | |
| createTable(HTableDescriptor desc) | 创建一个表。同步操作 | |
| deleteTable(byte[] tableName) | 删除一个已经存在的表 | |
| enableTable(byte[] tableName) | 使表处于有效状态 | |
| disableTable(byte[] tableName) | 使表处于无效状态 | |
| HTableDescriptor[] | listTables() | 列出全部用户控件表项 |
| void | modifyTable(byte[] tableName, HTableDescriptor htd) | 改动表的模式,是异步的操作,可能须要花费一定的时间 |
| boolean | tableExists(String tableName) | 检查表是否存在 |
- HBaseAdmin admin = new HBaseAdmin(config);
- admin.disableTable("tablename")
复制代码
| 返回值 | 函数 | 描写叙述 |
| void | addFamily(HColumnDescriptor) | 加入一个列族 |
| HColumnDescriptor | removeFamily(byte[] column) | 移除一个列族 |
| byte[] | getName() | 获取表的名字 |
| byte[] | getValue(byte[] key) | 获取属性的值 |
| void | setValue(String key, String value) | 设置属性的值 |
- HTableDescriptor htd = new HTableDescriptor(table);
- htd.addFamily(new HcolumnDescriptor("family"));
复制代码
它通常在创建表或者为表加入列族的时候使用。列族被创建后不能直接改动,仅仅能通过删除然后又一次创建的方式。
列族被删除的时候。列族里面的数据也会同一时候被删除。
| 返回值 | 函数 | 描写叙述 |
| byte[] | getName() | 获取列族的名字 |
| byte[] | getValue(byte[] key) | 获取相应的属性的值 |
| void | setValue(String key, String value) | 设置相应属性的值 |
- HTableDescriptor htd = new HTableDescriptor(tablename);
- HColumnDescriptor col = new HColumnDescriptor("content:");
- htd.addFamily(col);
复制代码
| 返回值 | 函数 | 描写叙述 |
| void | checkAdnPut(byte[] row, byte[] family, byte[] qualifier, byte[] value, Put put | 自己主动的检查row/family/qualifier是否与给定的值匹配 |
| void | close() | 释放全部的资源或挂起内部缓冲区中的更新 |
| Boolean | exists(Get get) | 检查Get实例所指定的值是否存在于HTable的列中 |
| Result | get(Get get) | 获取指定行的某些单元格所相应的值 |
| byte[][] | getEndKeys() | 获取当前一打开的表每一个区域的结束键值 |
| ResultScanner | getScanner(byte[] family) | 获取当前给定列族的scanner实例 |
| HTableDescriptor | getTableDescriptor() | 获取当前表的HTableDescriptor实例 |
| byte[] | getTableName() | 获取表名 |
| static boolean | isTableEnabled(HBaseConfiguration conf, String tableName) | 检查表是否有效 |
| void | put(Put put) | 向表中加入值 |
- HTable table = new HTable(conf, Bytes.toBytes(tablename));
- ResultScanner scanner = table.getScanner(family);
复制代码
| 返回值 | 函数 | 描写叙述 |
| Put | add(byte[] family, byte[] qualifier, byte[] value) | 将指定的列和相应的值加入到Put实例中 |
| Put | add(byte[] family, byte[] qualifier, long ts, byte[] value) | 将指定的列和相应的值及时间戳加入到Put实例中 |
| byte[] | getRow() | 获取Put实例的行 |
| RowLock | getRowLock() | 获取Put实例的行锁 |
| long | getTimeStamp() | 获取Put实例的时间戳 |
| boolean | isEmpty() | 检查familyMap是否为空 |
| Put | setTimeStamp(long timeStamp) | 设置Put实例的时间戳 |
- HTable table = new HTable(conf,Bytes.toBytes(tablename));
- Put p = new Put(brow);//为指定行创建一个Put操作
- p.add(family,qualifier,value);
- table.put(p);
复制代码
| 返回值 | 函数 | 描写叙述 |
| Get | addColumn(byte[] family, byte[] qualifier) | 获取指定列族和列修饰符相应的列 |
| Get | addFamily(byte[] family) | 通过指定的列族获取其相应列的全部列 |
| Get | setTimeRange(long minStamp,long maxStamp) | 获取指定取件的列的版本 |
| Get | setFilter(Filter filter) | 当运行Get操作时设置server端的过滤器 |
- HTable table = new HTable(conf, Bytes.toBytes(tablename));
- Get g = new Get(Bytes.toBytes(row));
复制代码
HBase总结(十一)hbase Java API 介绍及使用演示样例的更多相关文章
- Java连接redis的使用演示样例
Java连接redis的使用演示样例 Redis是开源的key-value存储工具,redis通经常使用来存储结构化的数据,由于redis的key能够包括String.hash.listset和sor ...
- java文件夹相关操作 演示样例代码
java文件夹相关操作 演示样例代码 package org.rui.io; import java.io.File; import java.io.FilenameFilter; import ja ...
- 【Unity 3D 游戏开发】Unity3D 入门 - 工作区域介绍 与 入门演示样例
一. 工作区域具体解释 1. Scence视图 (场景设计面板) scence视图简单介绍 : 展示创建的游戏对象, 能够对全部的游戏对象进行 移动, 操作 和 放置; -- 演示样例 : 创建一个球 ...
- Java 嵌套类和内部类演示样例<二>
嵌套类(nested class)是一个在还有一个类或接口内部声明的类. 嵌套类分为两种:静态内部类(static inner class)和非静态嵌套类(non-static nested clas ...
- Java 嵌套类和内部类演示样例<三>
<span style="font-family: Arial, Helvetica, sans-serif;"><span style="font-s ...
- java 泛型深入之Set有用工具 各种集合泛型深入使用演示样例,匿名内部类、内部类应用于泛型探讨
java 泛型深入之Set有用工具 各种集合泛型深入使用演示样例,匿名内部类.内部类应用于泛型探讨 //Sets.java package org.rui.generics.set; import j ...
- java 又一次抛出异常 相关处理结果演示样例代码
java 又一次抛出异常 相关处理结果演示样例代码 package org.rui.ExceptionTest; /** * 又一次抛出异常 * 在某些情况下,我们想又一次掷出刚才产生过的违例,特别是 ...
- ArcSDE SDK For Java二次开发介绍、演示样例
在一个工作中,遇到了须要java后台来查询ArcGIS 中用到的Oracle数据库空间数据,因为对ArcGIS空间数据首次接触,仅仅知道Oracle能够使用ST_GEOMETRY字段存储,例如以下图 ...
- 通过Canvas及File API缩放并上传图片完整演示样例
创建一个只管的用户界面,并同意你控制图片的大小.上传到server端的数据,并不须要处理enctype为 multi-part/form-data 的情况.只一个简单的POST表单处理程序就能够了. ...
随机推荐
- vue.js提交按钮时简单的if判断表达式示例
简单的业务需求如下,看图说话 1:当充值金额没有填写的时候,会有Toast小弹框提示"请输入有效的充值金额" if (!this.money) { console.log('mon ...
- java位运算应用
位移动运算符: <<表示左移, 左移一位表示原来的值乘2. 比如:3 <<2(3为int型) 1)把3转换为二进制数字0000 0000 0000 0000 0000 000 ...
- 【天气APP】之桌面时钟witget组件
桌面时钟之组件开发: 整个流程例如以下: 下载地址demo:www.github.com/xufeifandj service+组件+广播进行后台实时更新时间 (一)开机广播监听开机启动service ...
- 早该知道的 7 个JavaScript 技巧[转]
简洁写法 对象的简写在过去,如果你想创建一个对象,你需要这样: var car = new Object(); car.colour = 'red'; car.wheels = 4; car.h ...
- 洛谷 P1808 单词分类_NOI导刊2011提高(01)
P1808 单词分类_NOI导刊2011提高(01) 题目描述 Oliver为了学好英语决定苦背单词,但很快他发现要直接记住杂乱无章的单词非常困难,他决定对单词进行分类. 两个单词可以分为一类当且仅当 ...
- ORACLE 11G R2 DG_BROKER 之SWITCH OVER
官网:http://docs.oracle.com/cd/B12037_01/server.101/b10822/cli.htm 这个是有必要看一下. 注意本人已经完毕一次SWITCHOVER 所 ...
- Sending e-mail with Spring MVC--转载
原文地址:http://www.codejava.net/frameworks/spring/sending-e-mail-with-spring-mvc Table of contents: 1.S ...
- 逻辑与和逻辑或:&& 、||
逻辑或:首先看左边是真还是假(除了那5个都是真),如果为真,返回左边值,如果为假,返回右边的值 逻辑与:和逻辑或相同,先看左边的值是真是假,如果左边为真返回右边的值,左边为假返回左边的值 在两者同时出 ...
- OFFICE2013 打开两个word文档卡死的解决办法
这几天Office打开一个word好好的,两个就直接卡死了,百度了一下: 原文地址: http://hi.baidu.com/pjhero/item/ca326e3dcfebebb9623aff6e ...
- Day1:循环语句(While,For)
一.while循环 while 条件: 条件为真执行的语句 esle: 条件为假执行的语句 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author: ...