hbase权威指南学习笔记--过滤器
2015-01-08 11:38
141 查看
1.使用hbase是shell客户端进行过滤查询
2.hbase中的过滤器
A:比较过滤器(继承自CompareFilter)
RowFilter 行过滤器(按行健进行过滤)
FamilyFilter 列族过滤器
QualifierFilter 列名过滤器
ValueFilter 值过滤器 (在使用特定的比较器时,只能与部分运算符搭配。eg。使用字符串匹配,这种匹配只能使用EQUAL与NOT_EQUAL)
DependentColumnFilter 参考列过滤器(这种过滤器允许指定一个参考列或引用列,使用参考列的时间戳,在过滤时包括所有与引用时间戳相同的列)
B:专用过滤器(继承自FilterBase)
SingleColumnValueFilter 单列值过滤器(根据指定列的值进行过滤,如果参考列不存在时,根据用户设置是否把这一行包含在结果中)
SingleColumnValueExcludeFilter 单列排除过滤器 (继承自SingleColumnValueFilter ,与后者的区别是,前者不会把参考列包含在结果中)
PrefixFilter 前缀过滤器(所有与前缀【行健】匹配的行都会被返货客户端)
PageFilter 分页过滤器
KeyOnlyFilter 行健过滤器(只返回结果中的KeyValue实例的键,不需要返回实际的数据)
FirstKeyOnlyFilter 首次行健过滤器(返回每行中的第一列,hbase中的行与列都按字典顺序进行排序,这样最旧的列就会排在最前面,因此时间戳最久的列会被最先检索到)
InclusiveStopFilter 包含结束的过滤器
TimestampsFilter 时间戳过滤器
ColumnCountGetFilter 列计数过滤器(限制每行最多取回多少列,一行的列数达到设定的值,过滤器会停止扫描操作)
ColumnPaginationFilter 列分页过滤器
ColumnPrefixFilter 列前缀过滤器
C:附加过滤器(实现了Filter接口)
SkipFilter 跳转过滤器(被包装的过滤器必须实现filterKeyValue()方法,SkipFilter只通过这个方法的返回值决定如何处理这一行)
WhileMatchFilter 全局匹配过滤器(当一条数据被过滤掉时,就会直接放弃这次扫描)
FilterList类实现了Filter接口,可以通过组合多个过滤器的功能来实现某种效果。
自定义的过滤器可以实现Filter接口或者直接继承FilterBase类,后者为接口中的所有成员方法提供了默认实现。编译自定义的类,打包成JAR包,发到每个region服务器中。(包可以放在lib文件夹下或者修改hbase-env.sh中的HBASE_CLASSPATH)。
scan 'testtable',{COLUMNS=>'colfam1:col-0',FILTER=>RowFilter.new(CompareFilter::CompareOp.valueOf('EQUAL'),SubstringComparator.new("-5"))}
2.hbase中的过滤器
A:比较过滤器(继承自CompareFilter)
RowFilter 行过滤器(按行健进行过滤)
FamilyFilter 列族过滤器
QualifierFilter 列名过滤器
ValueFilter 值过滤器 (在使用特定的比较器时,只能与部分运算符搭配。eg。使用字符串匹配,这种匹配只能使用EQUAL与NOT_EQUAL)
DependentColumnFilter 参考列过滤器(这种过滤器允许指定一个参考列或引用列,使用参考列的时间戳,在过滤时包括所有与引用时间戳相同的列)
B:专用过滤器(继承自FilterBase)
SingleColumnValueFilter 单列值过滤器(根据指定列的值进行过滤,如果参考列不存在时,根据用户设置是否把这一行包含在结果中)
SingleColumnValueExcludeFilter 单列排除过滤器 (继承自SingleColumnValueFilter ,与后者的区别是,前者不会把参考列包含在结果中)
PrefixFilter 前缀过滤器(所有与前缀【行健】匹配的行都会被返货客户端)
PageFilter 分页过滤器
KeyOnlyFilter 行健过滤器(只返回结果中的KeyValue实例的键,不需要返回实际的数据)
FirstKeyOnlyFilter 首次行健过滤器(返回每行中的第一列,hbase中的行与列都按字典顺序进行排序,这样最旧的列就会排在最前面,因此时间戳最久的列会被最先检索到)
InclusiveStopFilter 包含结束的过滤器
TimestampsFilter 时间戳过滤器
ColumnCountGetFilter 列计数过滤器(限制每行最多取回多少列,一行的列数达到设定的值,过滤器会停止扫描操作)
ColumnPaginationFilter 列分页过滤器
ColumnPrefixFilter 列前缀过滤器
C:附加过滤器(实现了Filter接口)
SkipFilter 跳转过滤器(被包装的过滤器必须实现filterKeyValue()方法,SkipFilter只通过这个方法的返回值决定如何处理这一行)
WhileMatchFilter 全局匹配过滤器(当一条数据被过滤掉时,就会直接放弃这次扫描)
FilterList类实现了Filter接口,可以通过组合多个过滤器的功能来实现某种效果。
自定义的过滤器可以实现Filter接口或者直接继承FilterBase类,后者为接口中的所有成员方法提供了默认实现。编译自定义的类,打包成JAR包,发到每个region服务器中。(包可以放在lib文件夹下或者修改hbase-env.sh中的HBASE_CLASSPATH)。
相关文章推荐
- hbase权威指南学习笔记--架构--存储
- 安全指南 学习笔记(1)
- Java开发学习笔记之九:过滤器
- 高质量C编程指南 学习笔记(一)
- JSP学习笔记——过滤器(二)使用
- 高质量C++/C编程指南学习笔记(上)
- 学习笔记[序列化].NET Framework 开发员指南
- shell 脚本学习指南-笔记(二)
- 微软StockTrader 2.03 学习笔记(8)--配置服务实现示例指南(四)
- 微软StockTrader 2.03 学习笔记(7)--配置服务实现示例指南(三)
- Jquery 学习笔记(二)jQuery性能优化指南
- CCNA学习指南第3章IP寻址笔记
- LINUX与UNIX SHELL编程指南 学习笔记
- JSP学习笔记--Servlet过滤器
- CCNA学习指南之 CCNA复习笔记
- 高质量C++/C编程指南学习笔记(上)
- [ASP.NET学习笔记之二十]ASP_NET 2.0 中web part使用指南
- appfuse实例中的web.xml学习笔记之过滤器
- 招数和过滤器--Css学习笔记(八)
- GNU/Linux 编程指南学习笔记之four : diff & patch