首页 > 其他分享 >HBase学习4(导入数据、计数器、scan扫描、过滤器)

HBase学习4(导入数据、计数器、scan扫描、过滤器)

时间:2023-09-13 16:57:20浏览次数:40  
标签:INFO scan ORDER 过滤器 HBase C1

1.导入数据集

先上传文件到指定目录,后执行下面的语句
hbase shell /export/software/ORDER_INFO.txt

 2.查看表中有多少条数据(计数器)

语法:count ‘表名’

缺点:比较慢,当数据量更大的时候可以使用HBase中提供的MapReduce程序来进行计数统计。

要启动好,需要注意,以下三步不是在hbase shell中输入的,是直接在node1上输入

①yarn,start-yarn.sh;

②启动historyserver,mr-jobhistory-daemon.sh start historyserver或者mapred --daemon start historyserver

语法如下:

③ $HBASE_HOME/bin/hbase org.apache.hadoop.hbase.mapreduce.RowCounter '表名'

3.扫描操作(查询大量数据)

在HBase,我们可以使用scan命令来扫描HBase中的表。

语法:scan '表名'

# 查询所有数据,但是避免查询大表(大量数据)
scan 'ORDER_INFO',{FORMATTER => 'toString'}
# 只查询三条数据,中文显示
scan 'ORDER_INFO', {LIMIT => 3, FORMATTER => 'toString'}
# 查询指定列
scan 'ORDER_INFO', {LIMIT => 3, COLUMNS => ['C1:STATUS', 'C1:PAYWAY'], FORMATTER => 'toString'}

4.根据rowkey来查询(添加过滤器)

要查询指定ROWKEY的数据,需要添加过滤器,使用ROWPREFIXFILTER。

语法为:scan '表名', {ROWPREFIXFILTER => 'rowkey'}

scan 'ORDER_INFO', {ROWPREFIXFILTER => '02602f66-adc7-40d4-8485-76b5632b5b53', COLUMNS => ['C1:STATUS', 'C1:PAYWAY'], FORMATTER => 'toString'}

 5.过滤器Filter

文档:http://hbase.apache.org/2.2/devapidocs/index.html

HBase的shell中,通过show_filters指令,可以查看到HBase中内置的一些过滤器。

 例 rowkey 过滤器:查询订单的ID为:02602f66-adc7-40d4-8485-76b5632b5b53

scan 'ORDER_INFO', {FILTER => "RowFilter(=,'binary:02602f66-adc7-40d4-8485-76b5632b5b53')"}

例列过滤器SingleColumnValueFilter:查询状态为「已付款」的订单

scan 'ORDER_INFO', {FILTER => "SingleColumnValueFilter('C1', 'STATUS', =, 'binary:已付款')", FORMATTER => 'toString'}

例:多个过滤器

scan 'ORDER_INFO', {FILTER => "SingleColumnValueFilter('C1', 'PAYWAY', = , 'binary:1') AND SingleColumnValueFilter('C1', 'PAY_MONEY', > , 'binary:3000')", FORMATTER => 'toString'}

6.HBase计数器INCR

012.HBase计数器_哔哩哔哩_bilibili

incr可以实现对某个单元格的值进行原子性计数。

语法如下:incr '表名','rowkey','列蔟:列名',累加值(默认累加1)

注意:使用put创建的列是不能实现累加如果某一列要实现计数功能,必须要使用incr来创建对应的列

 

 

7.shell管理操作

013.HBase的管理命令_哔哩哔哩_bilibili

 

 

标签:INFO,scan,ORDER,过滤器,HBase,C1
From: https://www.cnblogs.com/hmy22466/p/17696196.html

相关文章

  • HBase学习3(增删改查)
    1.启动hbaseshellHBase的shell其实就是JRuby的IRB(交互式Ruby),但在其中添加了一些HBase的命令。输入:hbaseshell2.创建表语法:create'表名','列蔟名'...例如:创建订单表,表名为ORDER_INFO,该表有一个列蔟为C1create'ORDER_INFO','C1'3.添加数据HBase中的put命令,可以用来将......
  • sqoop1.4.7完全支持Hadoop3.x, Hive3.x Hbase2.x
    已经修改好保存至云盘自己下载花了时间的,记得关注我。。。链接:https://pan.xunlei.com/s/VNe6P6Tm1A9Q-RG5GByN08rdA1#提取码:5nke复制这段内容后打开手机迅雷App,查看更方便下载解压直接用,里面的内容已经改好但是需要注意的是conf目录下的sqoop-env.sh里面的hadoop路径和hi......
  • 过滤器:禁止浏览器缓存所有动态页面
    禁止浏览器缓存所有动态页面意味着阻止浏览器在访问网站上的动态生成内容时将这些内容存储在本地缓存中。动态页面通常是那些在每次加载时都会根据用户请求或其他因素而生成不同内容的页面,而不是静态页面,其内容在每次访问时都保持不变。禁止浏览器缓存动态页面可以确保用户在访问......
  • PDF 的流对象和过滤器学习
    PDF的官方文档(https://opensource.adobe.com/dc-acrobat-sdk-docs/pdflsdk/#pdf-reference),版本为1.5,3.2.7和3.3小节一、流对象(StreamObjects)流对象(StreamObjects)和字符串对象一样,是一个字节(bytes)序列。PDF应用程序可以增量读取流,而字符串须完整读取,此外......
  • 记一次SpringBoot Filter的过滤器被重复执行问题
    记一次SpringBootFilter的过滤器被重复执行问题debug发现过滤器执行两次,后来定位到WebFilter和Component注解导致多次扫描,而这次需要用到WebFilter,所以注掉了Component@Order(0)//@Component@WebFilter(urlPatterns={"/*"})@ConditionalOnProperty(name="color.trace.s......
  • 20230909学习总结hbase命令大全
    bin/hbase进入hbaseShell命令模式create'student','Sname','Ssex','Sage','Sdept','course'创建student表,属性'Sname','Ssex','Sage','Sdept','course'put......
  • Hbase结构再探究
    Hbase储存再hdfs上,这是hbase的具体文件夹.hbck:这是HBase的hbase-hbck工具生成的目录,用于存储修复HBase表的信息。hbase-hbck工具用于检查和修复HBase表的一致性和完整性。.tmp:这是一个临时目录,通常用于临时存储数据或文件,以便后续处理。在HBase中,它可能用于一些......
  • ABP-数据过滤器(Fliter)
    过滤器文档地址ABP预定义过滤器过滤器禁用对于默认启动的过滤器,可以使用using语句临时禁用,也可全局禁用using语句临时禁用软删除过滤using(CurrentUnitOfWork.DisableAuditing(AbpDataFilters.SoftDelete)){varlist=_approvaloperaterecordsRepository.GetAll();}us......
  • java中如何用Scanner类读入单个字符
    Scanner没有直接读入单个字符的方法,next方法没办法读入空格符,因为Scanner以空格符作为输入完毕的标志importjava.util.Scanner;Scannerin=newScanner(System.in);Strings=in.nextLine();char[]chars=s.toArray();charc=chars[0];//c就是读入的单个字符......
  • HBASE shell操作CLI
    server查看hbase(main)>statushbase(main)>version创建命名空间:namespace指的是一个表的逻辑分组,同一组中的表有类似的用途,相当于关系型数据库中的database创建该命名空间的表:hbase(main):060:0>create_namespace'test1'hbase(main):061:0>create'test1:test','f1',�......