Я хотел бы выполнить запрос с Happybase для некоторых известных ключей строк и добавить фильтр значений, чтобы возвращались только строки, соответствующие фильтру.Happybase-фильтрация с использованием функции строк
В HBase оболочки можно поставить фильтр на команду GET, например, так:
get 'meta', 'someuser', {FILTER => "SingleColumnValueFilter ('cf','gender',=,'regexstring:^male$')"}
В Happybase вы можете добавить фильтр к команде scan
, но я не вижу вариант на rows
запроса , Вот как это работает scan
:
rows = tab.scan(filter="SingleColumnValueFilter('cf','gender',=,'regexstring:^male$')")
Есть ли способ, чтобы выполнить отфильтрованные rows
запроса (для потенциально случайных упорядоченных ключей строк) с использованием Happybase (или любой другой клиентской библиотеки Python Hbase)?
Я предполагал, что это будет выглядеть следующим образом (но нет никакого фильтра аргумента):
rows = tab.rows(rows=['h_key', 'a_key', 'z_key'], filter="SingleColumnValueFilter('cf','gender',=,'regexstring:^male$')")
Об отражении Я что-то оставил из своего вопроса, я его отредактирую. Запрос, который я хочу выполнить, представляет собой запрос 'rows' по произвольно упорядоченному набору ключей строк. Я не могу использовать диапазон строк, поскольку порядок неизвестен. – dsimmie
@dsimmie обновить ответ, и я не думаю, что есть идеальное решение с текущей версией '' 'happybase'''. –