HBase API设置列族的VERSION【留给有缘人】

这篇具有很好参考价值的文章主要介绍了HBase API设置列族的VERSION【留给有缘人】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

关于如何使用 hbase api去设置hbase中数据的version这个问题,本人浏览器都快搜烂了,没找到!无奈只能找找源码,有所得,遂记录,留给有缘人。

直接上代码

想使用hbase的VERSION功能需要两步,一个是在创建列族的时候指定存储多少个VERSION,一个是在scan的时候指定要读多少个VERSION,缺一不可!

// 创建列族的时候指定最大Version数(最大保留多少个版本)
TableDescriptor desc = TableDescriptorBuild
.newBuilder("test")
.setColumnFamily(
ColumnFamilyDescriptorBuilder
.newBuilder(Bytes.toBytes("cf_0"))
.setMaxVersions(10) // 主要是这里
.build())
.build()

// scan的时候指定要搜索多少个version
Scan s = new Scan();
s.addFamily(Bytes.toBytes("cf_01"))
s.readAllVersions(); // 主要就是这里配置
Scanner scanner = table.getScanner(s);
for (Result : scanner) {
	Cell[] cells = result.rawCells(); // 这里就可以得到多个版本的数据了
}

笔者还想问点东西

笔者其实还有一些不明白的地方,有懂哥请帮忙解答一下,Cell中有一个type变量,存储的是Put,Delete等类型,但是我scan的时候,只看到了Put,不太明白什么情况下能扫描到Delete类型的Cell?Delete类型的Cell意义何在?文章来源地址https://www.toymoban.com/news/detail-583230.html

到了这里,关于HBase API设置列族的VERSION【留给有缘人】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HBASE-JAVA-API

    Hbse-Java Api 基础知识 初始化 这段代码初始化了一个连接到Apache HBase数据库的过程。以下是每行代码的作用: Configuration conf = HBaseConfiguration.create(); :创建了一个新的HBase配置对象。 conf.set(\\\"hbase.zookeeper.quorum\\\", \\\"master:2181,node1:2181,node2:2181\\\"); :设置了HBase用于协调的ZooKeeper群集服务

    2024年01月17日
    浏览(42)
  • HBase Java API编程实践

    本实例采用Eclipse开发工具。 启动Eclipse,启动以后,出现如下图所示界面,点击ok按钮。 启动进入Eclipse以后的程序开发界面如下图所示。 点击界面顶部的“File”菜单,在弹出的子菜单(如下图所示)中选择“New”,再选择子菜单中的“Project”。 这时会弹出一个Java工程创建

    2024年02月05日
    浏览(38)
  • 基于hadoop的HBase JAVA API

    摘要:   HBase的Java API提供了一种与HBase数据库进行交互的方式,通过编写Java程序可以连接到HBase集群并对数据进行存储、检索和处理。该API适用于大规模数据存储、实时数据访问和高扩展性需求的场景。具有高可靠性、高扩展性和高性能的特点。它可以处理海量数据,并且支

    2024年02月03日
    浏览(48)
  • hbase 设置超时参数

    hbase设计的目标是成为一个高可用集群,能够在失败的时候快速响应,当出现网络抖动等偶发情况时,能快速重试,让用户可以快速拿到结果。而不是一直卡着,使得上层应用阻塞等待。 这个功能可以通过设置下面的3个超时参数、超时重试次数来实现。在超时的时候,立即主

    2024年02月11日
    浏览(37)
  • 在HBase中执行查询操作通常使用HBase Shell或编程语言API(如Java或Python)来执行

    在HBase中执行查询操作通常使用HBase Shell或编程语言API(如Java或Python)来执行。以下是使用HBase Shell进行查询的一些示例: 单行查询:获取指定行键的数据。 扫描表:按行范围获取表中的多个行的数据。 过滤器查询:使用过滤器指定查询条件来获取数据。 列族查询:获取指

    2024年01月21日
    浏览(47)
  • docker搭建hbase 全部流程(包含本地API访问)

    一、使用docker下载并安装hbase 1、搜索:docker search hbase 2、下载:docker pull harisekhon/hbase(一定要下载这个,下面都是围绕此展开的) 3、启动容器: docker run -d -p 2181:2181 -p 16000:16000 -p 16010:16010 -p 16020:16020 -p 16030:16030 --name hbase harisekhon/hbase 这里只是对应了 2181、16000、16010、1602

    2024年01月22日
    浏览(80)
  • HBase Java API 开发:批量操作 第2关:批量删除数据

    删除单行数据 删除一行数据很简单,我们来看个示例: 这段代码就可以删除行键为 row1 的行。 删除多行数据 如何删除多行数据呢? 相信你已经猜到了,既然 get() 方法有重载方法,那应该 delete() 方法也有,确实: 这样就可以删除多行数据啦。 编程要求 还等啥,亲自试一试

    2024年02月05日
    浏览(56)
  • hbase和aerospike基础概念及所对应的python包API使用

    Hbase shell常用操作 1.创建表 table name:表名 column family:列族名 2.查看所有表名称 3.插入操作 row1:行键(即Row Key) column family:column name:列族名和列名 value:插入列的值 4.查看表结构操作 5.更新操作 6.获取指定字段的操作 aerospike常用操作 1.显示所有命名空间 2.显示所有表(集合)

    2024年02月05日
    浏览(32)
  • HBase开发: Java API 管理表 第1关:JavaAPI获取表的列表

    本关我们来使用 JavaApi 对 HBase 中的表进行管理,第一关我们来学习如何列出所有的表。 获取表的列表 如何使用 Java 列出 HBase 中所有的表呢? 在HBase中我们要获取一张表的基本信息需要用到一个类: TableDescriptor ; 通过 TableDescriptor 我们可以获取表的名字,列族等信息; 好了

    2024年02月07日
    浏览(38)
  • HBase Java API 开发:表的扫描与扫描的缓存和批量处理 第1关:批量处理

    批量操作 如果我们去查看 HBaseAPI 的源码会发现,在上次实训中我们使用的 delete、get,put 这些批量操作,实际上都是调用了 batch() 方法。 查看 put(ListPut puts) 函数源码: 我们可以发现 put(ListPut puts) 方法最终还是调用的 batch(final List? extends Row actions, final Object[] results, int rpcTi

    2024年02月09日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包