Hbase之删除数据
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;
import org.apache.hadoop.hbase.TableName;
import org.apache.hadoop.hbase.client.Connection;
import org.apache.hadoop.hbase.client.ConnectionFactory;
import org.apache.hadoop.hbase.client.Delete;
import org.apache.hadoop.hbase.client.Table;
import org.apache.hadoop.hbase.util.Bytes; import java.io.IOException; /**
* 在hbase中删除数据
*/
public class DeleteDataFromHbase {
public static void main(String args[]) throws IOException {
Configuration configuration = HBaseConfiguration.create();
Connection connection = ConnectionFactory.createConnection(configuration);
//建立表的连接
Table table = connection.getTable(TableName.valueOf("testtable"));
//穿件删除指定的行
Delete delete = new Delete(Bytes.toBytes("5701"));
//Set timestamp for row deletes.
delete.setTimestamp(1);
//只删除最后版本的一列
delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual1000"));
//删除指定版本的一列
delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual1000"),3);
//删除指定版本列的所有数据
delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual1000"));
//删除给定而且老的版本的列
delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual1000"),2);
//删除所有的列族
delete.addFamily(Bytes.toBytes("colfam1"));
//删除给定版本的列族数据
delete.addFamily(Bytes.toBytes("colfam1"), 3);
delete.addFamily(Bytes.toBytes("colfam1"), 2);
delete.addFamily(Bytes.toBytes("colfam1"), 1);
//删除操作
table.delete(delete);
}
}
/**
---
5702 column=colfam1:qual0997, timestamp=1471844438322, value=val0997
5702 column=colfam1:qual0998, timestamp=1471844438322, value=val0998
5702 column=colfam1:qual0999, timestamp=1471844438322, value=val0999
convert <== delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual0998"));
5702 column=colfam1:qual0997, timestamp=1471844438322, value=val0997
5702 column=colfam1:qual0998, timestamp=1471844438322, value=val0998
5702 column=colfam1:qual0999, timestamp=1471844438322, value=val0999
convert <== delete.addColumn(Bytes.toBytes("colfam1"),Bytes.toBytes("qual0999"),3);
5702 column=colfam1:qual0997, timestamp=1471844438322, value=val0997
5702 column=colfam1:qual0998, timestamp=1471844438322, value=val0998
5702 column=colfam1:qual0999, timestamp=1471844438322, value=val0999
convert <==
---
5702 column=colfam1:qual0998, timestamp=1, type=Delete
5702 column=colfam1:qual0999, timestamp=1471844438322, value=val0999
5702 column=colfam1:qual0999, timestamp=3, type=Delete *
*
*/
Hbase之删除数据的更多相关文章
- Hbase之批量删除数据
import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.HBaseConfiguration; impo ...
- HBase删除数据的原理
转自:https://blog.csdn.net/cenjianteng/article/details/96645447 -------------------------------------- ...
- HBase删除数据
hbase官方文档中描述了,hbase删除数据可以总结为下面三种(Java API有很多接口,可以总结下面的几种): 删除一个列的指定版本 删除一个列的所用版本 删除指定列族的所有列 hbase删除数 ...
- HBase 高性能获取数据(多线程批量式解决办法) + MySQL和HBase性能测试比较
摘要: 在前篇博客里已经讲述了通过一个自定义 HBase Filter来获取数据的办法,在末尾指出此办法的性能是不能满足应用要求的,很显然对于如此成熟的HBase来说,高性能获取数据应该不是问题. ...
- HBase协处理器统计表数据量
1.Java代码实现 import org.apache.hadoop.hbase.client.coprocessor.AggregationClient; import org.apache.ha ...
- hbase高性能读取数据
有时需要从hbase中一次读取大量的数据,同时对实时性有较高的要求.可以从两方面进行考虑:1.hbase提供的get方法提供了批量获取数据方法,通过组装一个list<Get> gets即可 ...
- HDFS只支持文件append操作, 而依赖HDFS的HBase如何完成数据的增删改查
转:http://www.th7.cn/db/nosql/201510/135382.shtml 1. HDFS的文件append功能 早期版本的HDFS不支持任何的文件更新操作,一旦一个文件创建.写 ...
- HBase表的数据导出和导入
1. 表数据导出 hbase org.apache.hadoop.hbase.mapreduce.Export test file:///home/hadoop/test (导入到本地) hbase ...
- CRL快速开发框架系列教程四(删除数据)
本系列目录 CRL快速开发框架系列教程一(Code First数据表不需再关心) CRL快速开发框架系列教程二(基于Lambda表达式查询) CRL快速开发框架系列教程三(更新数据) CRL快速开发框 ...
随机推荐
- 异步I/O
http://blog.csdn.net/gotosola/article/details/7412409 Linux2.6异步I/O AIO的基本思想: 允许进程发起很多I/O操作,而不用阻塞或等 ...
- sorl维护索引库sorl4j的使用
1.维护索引库 添加:添加一个json格式的文件就可以. 修改:在solr中没有update,只需要添加一个新的文档,要求文档id和被修改文档的id一致.原理是先删除后添加. 删除:使用xml格式. ...
- 2016年10月30日 星期日 --出埃及记 Exodus 19:15
2016年10月30日 星期日 --出埃及记 Exodus 19:15 Then he said to the people, "Prepare yourselves for the thi ...
- C# Json 转对象
C# public static UserInfo JsonConvertStringWeiXinInfo(string json) { return (UserInfo)Newtonsoft.Jso ...
- HTTP缓存机制
缓存对于移动端是非常重要的存在. 减少请求次数,减小服务器压力. 本地数据读取速度更快,让页面不会空白几百毫秒. 在无网络的情况下提供数据. 缓存一般由服务器控制(通过某些方式可以本地控制缓存,比如向 ...
- java中为什么byte的取值范围是-128到+127
概念:java中用补码表示二进制数,补码的最高位是符号位,最高位为“0”表示正数,最高位为“1”表示负数.正数补码为其本身:负数补码为其绝对值各位取反加1:例如:+21,其二进制表示形式是000101 ...
- BZOJ 3534 重建
题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=3534 题意:给定一个无向图,每条边有选择概率P:求选出的边恰是一棵生成树的概率. 思路: ...
- 从Unity学UE(一)之蓝图类的使用----制作一个可控灯光
转自:http://blog.csdn.net/u011707076/article/details/44171829 首先申明,本文章内容适合有Unity引擎基础的童鞋享用,如果不了解Unity引擎 ...
- [翻译]投影变换 Projection Transform (Direct3D 9)
你可以认为投影变换就是控制摄像机内部的一种方式.他可以类推为为摄像机选择一个漏字板.它是三种变换中最难懂的.本文只讨论以下的一些内容. 典型的投影变换就是缩放和透视投影.投影就变换把视椎转化为一个立方 ...
- SignalR记录
服务端检索数据库,有跟新,推送给客户端 1: GlobalHost.ConnectionManager.GetHubContext<tvHub>().Clients.Client(Clie ...