Description
Implement fuzzy row key filter to allow fetching records e.g. by this criteria: "???alex?b".
This seems to be very useful as an alternative to select records by row keys by specifying their part which is not prefix part. Due to fast-forwarding nature of the filter in many situations this helps to avoid heavy full-table scans.
This is especially effective when you have composite row key and (some of) its parts has fixed length. E.g. with the key of format userId_actionId_time, given that userId and actionId length is fixed, one can select user actions of specific type using fuzzy row key by specifying mask "????_myaction". Given fast-forwarding nature of filter, this will usually work much faster than doing whole table scan with any of the existing server-side filters.
In many cases this can work as secondary-indexing alternative.
Many times users implement it as a custom filter and many times they just don' know this is possible. Let's add it to the common codebase.
Attachments
Attachments
Issue Links
- breaks
-
HBASE-7892 FuzzyRowFilter would have wrong behaviors if user gives an arbitary byte for an "unfixed" position instead of byte 0
- Closed
- is related to
-
HBASE-6527 Make custom filters plugin
- Closed
- relates to
-
HBASE-7628 Port HBASE-6509 fast-forwarding FuzzyRowFilter to 0.94
- Closed
1.
|
Document FuzzyRowFilter | Closed | Unassigned |