单个filter:
import org.apache.hadoop.hbase.filter.CompareFilter
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter
import org.apache.hadoop.hbase.filter.SubstringComparator
import org.apache.hadoop.hbase.util.Bytes
import org.apache.hadoop.hbase.filter.FilterList
import 'ict.gavin.IntSingleColumnValueFilter' //注意加引号
filter=IntSingleColumnValueFilter.new(Bytes.toBytes('cf3'),Bytes.toBytes('dport'), CompareFilter::CompareOp.valueOf('EQUAL'),1)
scan 'hive_test_b', {FILTER=>filter, COLUMNS=>['cf3:dport']}
--------------------------------------------------------------------------------------
filterlist的情况:
import org.apache.hadoop.hbase.filter.CompareFilter
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter
import org.apache.hadoop.hbase.filter.SubstringComparator
import org.apache.hadoop.hbase.util.Bytes
import org.apache.hadoop.hbase.filter.FilterList
filter1 = SingleColumnValueFilter.new(
Bytes.toBytes('c'),
Bytes.toBytes('PDR'),
CompareFilter::CompareOp.valueOf('EQUAL'),
SubstringComparator.new('\\w')
)
filter1.setFilterIfMissing(true)
filter2 = SingleColumnValueFilter.new(
Bytes.toBytes('c'),
Bytes.toBytes('PDR'),
CompareFilter::CompareOp.valueOf('EQUAL'),
SubstringComparator.new('.+')
)
filter2.setFilterIfMissing(true)
filter3 = SingleColumnValueFilter.new(
Bytes.toBytes('c'),
Bytes.toBytes('PDR'),
CompareFilter::CompareOp.valueOf('EQUAL'),
SubstringComparator.new('.*')
)
filter3.setFilterIfMissing(true)
filterlist= FilterList.new(FilterList::Operator::MUST_PASS_ONE,[filter1, filter2,filter3])
scan 'BoardConfig',{FILTER=>filterlist,COLUMNS=>['o:URL','c:PDR']}
分享到:
相关推荐
根据提供的文件信息,本文将详细...以上就是HBase Shell的基本使用方法和一些高级查询技巧。通过这些命令,用户可以方便地对HBase表进行管理和查询。在实际应用中,熟练掌握HBase Shell操作能够极大地提高工作效率。
### HBase Shell 常用命令详解 #### 一、HBase Shell 概述 HBase Shell 是一个基于命令行的工具,用于与HBase进行交互。它提供了一系列丰富的命令来执行基本的数据管理任务,例如创建表、插入数据、查询数据等。...
### HBase Shell 命令详解 #### 一、概述 HBase Shell 是一个命令行工具,用于与 HBase 数据库进行交互。它提供了一系列的命令来管理表、执行数据定义语言 (DDL) 和数据操纵语言 (DML) 操作等。通过 HBase Shell,...
HDFS_HBaseShell的常用命令 HDFS(Hadoop Distributed File System)是一种分布式文件系统,主要用于存储和管理大规模数据。HBase 是一个基于HDFS的NoSQL数据库,用于存储和管理大规模结构化和半结构化数据。HBase ...
HBase Shell是HBase数据库的命令行工具,用户可以使用HBase Shell与HBase进行交互。HBase Shell是一个封装了Java客户端API的JRuby应用软件,在HBase的HMaster主机上通过命令行输入hbase shell,即可进入HBase命令行...
此外,可以使用Scan操作进行范围查询,或通过Filter进行更复杂的过滤。 ### 6. 遇到的问题与解决方案 在实验过程中,可能会遇到启动HBase Shell的困扰。这通常是因为没有启动HBase服务或者环境变量配置不正确。...
HBase的shell提供了一种交互式的命令行界面,用于执行对HBase表的各种操作,包括创建、修改、查询和删除数据。下面将详细介绍HBase shell中的一些常用操作命令。 1. **创建表**: 使用`create`命令创建表,例如...
HBase是一种开源的非关系型分布式...需要注意的是,实验手册中提供的命令格式和使用说明是非常基础的入门指引,对于深入应用HBase来说,掌握高级的Filter使用、时间戳和版本控制、以及数据批量导入方法将更为关键。
除了使用HBase Shell外,还可以通过Java API与HBase进行交互: - **连接HBase**:通过`ConnectionFactory.createConnection(Configuration)`方法建立到HBase集群的连接。 - **基本操作**:使用`Table`接口提供的方法...
在HBase Shell中,可以使用Filter来过滤查询结果。例如,使用`SingleColumnValueFilter`来过滤特定的列值: ```shell get 'notes', 'rowkey1', {FILTER => "SingleColumnValueFilter 'meta','title' = 'title1'"} `...
1. 创建表:使用`hbase shell`进入命令行工具,执行`create '表名', '列族名'`创建表。 2. 插入数据:通过`put '表名', '行键', '列族:列限定符', '值'`命令插入数据。 3. 查询数据:`get '表名', '行键'`获取整行...
4. The HBase Shell 4.1. 使用脚本 4.2. Shell 技巧 5. 数据模型 5.1. 概念视图 5.2. 物理视图 5.3. 表 5.4. 行 5.5. 列族 5.6. Cells 5.7. Data Model Operations 5.8. 版本 5.9. 排序 5.10. 列元数据 5.11. Joins ...
### HBase Shell命令详解 #### 一、HBase Shell简介 HBase Shell 是一个命令行工具,用于与 HBase 数据库进行交互。它提供了一系列的命令来管理表、执行数据...希望这些知识能够帮助您更好地理解和使用 HBase Shell。
本书是HBase开发者和使用者的重要参考资料,适合对大数据处理和NoSQL数据库感兴趣的读者。 在书中,作者详细介绍了HBase的核心概念和架构,包括表、行、列族、单元格以及时间戳。HBase的数据模型是列式存储的,与...
理解并熟练掌握上述概念和命令,将有助于在实践中高效地使用HBase来处理大规模数据。在设计HBase表结构时,需要综合考虑数据模型、访问模式、存储和计算资源等因素,以达到最佳的性能和可扩展性。
6. **使用HBase shell**: - 打开终端,输入 `hbase shell` 进入HBase命令行界面,可以进行创建表、插入数据、查询等操作。 7. **监控和管理**: - 默认情况下,HBase的Web UI在`http://localhost:60010`上运行,...
例如,使用HBase Shell创建表时,可以指定表名、列族,还可以设置版本数(VERSIONS)、生存时间(TTL)、是否启用BlockCache,甚至预先分割Region以优化表的分布。插入数据时,PUT命令需要指定表名、行键(RowKey)...
- **操作HBase**:使用HBase Shell,执行创建表、插入数据、查询数据等操作。 6. **优化与进阶** - **Region大小调整**:根据数据量和访问模式调整Region大小,避免热点和负载不均。 - **Compaction**:定期...
2. **表的操作**:创建、删除、修改表结构,以及如何通过HBase Shell或Java API进行操作。 3. **数据插入与查询**:学习Put和Get操作,了解如何插入和检索数据,包括单行和多行操作。 4. **扫描器(Scanner)**:...