2015-01-06 5 views
2

У нас есть таблица HBase с rowkey Lname_Fname_DOB. Рассмотрим следующие строки, которые были вставлены в таблицу HBase Cusack_Tim_06062006, Aptrow_Jill_07072007, Cruise_Tom_06052006.HBase-Retrieve row на основе частей ключа

У меня есть пользовательский интерфейс, в котором пользователи могут вводить Fname Lname и DOB в отдельных текстовых полях. Вопрос у меня есть, если пользователь вводит только C в Lname и T в Fname, есть ли способ получить результаты rowkey Cusack_Tim_06062006 и Cruise_Tom_06052006? Так что в основном пользователи могут вводить только части rowkey, в СУБД я мог бы использовать подобную функцию, не уверен, как справиться с этим в HBase.

ответ

1

Что вам нужно, это использовать сканер с помощью RowFilter и RegexStringComparator.

Но вы должны знать, что сканер очень дорог в ресурсах и может потребовать довольно много времени для получения результатов в зависимости от объема данных, которые у вас есть.

Если вы хотите реальное время поиска, вы должны рассмотреть вопрос индексации данных в реальном поисковике (Apache Solr, Сфинкс ... и т.д.)

 Смежные вопросы

  • Нет связанных вопросов^_^