hbase 协处理器 部署_hbase协处理器概念及知识点总结

本文详细介绍了HBase数据库,强调了HBase的使用场景和操作,包括写入、读取、删除和扫描操作。此外,文章探讨了HBase的分布式模式,以及为何引入协处理器来解决二级索引等问题。协处理器提供了RegionObserver和Endpoint两类,用于region级别的操作和自定义RPC协议扩展。最后,文中概述了协处理器的加载和部署方式。
摘要由CSDN通过智能技术生成

HBase是一种Hadoop数据库,经常被描述为一种稀疏的,分布式的,持久化的,多维有序映射,它基于行键、列键和时间戳建立索引,是一个可以随机访问的存储和检索数据的平台。HBase不限制存储的数据的种类,允许动态的、灵活的数据模型,不用SQL语言,也不强调数据之间的关系。HBase被设计成在一个服务器集群上运行,可以相应地横向扩展。

HBase使用场景和成功案例

互联网搜索问题:爬虫收集网页,存储到BigTable里,MapReduce计算作业扫描全表生成搜索索引,从BigTable中查询搜索结果,展示给用户。

抓取增量数据:例如,抓取监控指标,抓取用户交互数据,遥测技术,定向投放广告等

内容服务

信息交互

入门

1、API

和数据操作有关的HBase API有5个,分别是 Get(读),Put(写),Delete(删),Scan(扫描)和Increment(列值递增)

2、操作表

首先要创建一个configuraTIon对象

ConfiguraTIon conf = HBaseConfiguraTIon.create();

使用eclipse时的话还必须将配置文件添加进来。

conf.addResource(new Path(“E:\\share\\hbase-site.xml”));

conf.addResource(new Path(“E:\\share\\core-site.xml”));

conf.addResource(new Path(“E:\\share\\hdfs-site.xml”));

使用连接池创建一张表。

HTablePool pool = new HTablePool(conf,1);

HTableInterface usersTable = pool.getTable(“users”);

3、写操作

用来存储数据的命令是put,往表里存储数据,需要创建Put实例。并制定要加入的行

Put put = new Put(byte[] row) ;

Put的add方法用来添加数据,分别设定列族,限定符以及单元格的指

put.add(byte[] family , byte[] qualifier , byte[] value) ;

最后提交命令给表

usersTable.put(put);

usersTable.close();

修改数据,只需重新提交一次最新的数据即可。

HBase写操作的工作机制:

HBase每次执行写操作都会写入两个地方:预写式日志(write-ahead log,也称HLog)和MemStore(写入缓冲区),以保证数据持久化,只有当这两个地方的变化信息都写入并确认后,才认为写动作完成。MemStore是内存里的写入缓冲区,HBase中数据在永久写入硬盘之前在这里累积,当MemStore填满后,其中的数据会刷写到硬盘,生成一个HFile。

4、读操作

创建一个Get命令实例,包含要查询的行

Get get = new Get(byte[] row) ;

执行addColumn()或addFamily()可以设

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值