abc 過濾器介紹 HBase過濾器是一套為完成一些較高級的需求所提供的API介面。 過濾器也被稱為下推判斷器(push down predicates),支持把數據過濾標準從客戶端下推到伺服器,帶有 Filter 條件的 RPC 查詢請求會把 Filter 分發到各個 RegionServer,所 ...
abc
過濾器介紹
HBase過濾器是一套為完成一些較高級的需求所提供的API介面。
過濾器也被稱為下推判斷器(push-down predicates),支持把數據過濾標準從客戶端下推到伺服器,帶有 Filter 條件的 RPC 查詢請求會把 Filter 分發到各個 RegionServer,所有的過濾器都在服務端生效,使被過濾掉的數據不會被傳送到客戶端,這些過濾邏輯在讀操作時使用,可以有效降低網路傳輸的壓力。
過濾器組成
過濾器主要有過濾器本身、比較器和比較運算符組成。
1. 操作符
抽象操作符,也叫比較運算符。
-
LESS:小於
-
LESS_OR_EQUAL:小於等於
-
EQUAL:等於
-
NOT_EQUAL:不等於
-
GREATER:大於
-
GREATER_OR_EQUAL:大於等於
-
NO_OP:排除一切值
2. 比較器
-
BinaryComparator:二進位比較器,用於按字典順序比較指定位元組數組。
-
BinaryPrefixComparator:二進位比較器,只比較首碼是否與指定位元組數組相同。
-
NullComparator:控制比較式,判斷當前值是不是為null。
-
BitComparator:位比價器,通過BitwiseOp提供的AND(與)、OR(或)、NOT(非)進行比較。
-
RegexStringComparator:提供一個正則的比較器,支持正則表達式的值比較,僅支持 EQUAL 和非 EQUAL。
-
SubstringComparator:判斷提供的子串是否出現在value中,並且不區分大小寫。
過濾器家族
HBase 內置了多種過濾器,這些過濾器或直接或間接都繼承於FilterBase抽象類,今天我們先簡單看一下其‘家譜’,隨後再詳細一一介紹。
轉載請註明出處!歡迎關註本人微信公眾號【HBase工作筆記】