image

编辑人: 流年絮语

calendar2025-05-10

message8

visits520

说说Hbase中scan和get的功能以及实现的异同

分析&回答

HBase只提供两种查询方式

Get方式

按指定RowKey 获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get)

Get 的方法处理分两种 : 设置了ClosestRowBefore 和没有设置的rowlock .主要是用来保证行的事务性,即每个get 是以一个row 来标记的.一个row中可以有很多family 和column.

Scan 方式

按指定的条件获取一批记录,scan方法(org.apache.Hadoop.hbase.client.Scan)实现条件查询功能使用的就是scan 方式.

  1. scan 可以通过setCaching 与setBatch 方法提高速度(以空间换时间);
  2. scan 可以通过setStartRow 与setEndRow 来限定范围(start 是闭区间,end 是开区间)。范围越小,性能越高。
  3. scan 可以通过setFilter 方法添加过滤器,这也是分页、多条件查询的基础。

创作类型:
原创

本文链接:说说Hbase中scan和get的功能以及实现的异同

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share