Я хочу использовать HBase в качестве хранилища, куда я могу добавить несколько миллионов записей в формате {document => {term => weight}}
, например. «Вставьте термин X в документ Y с весом Z», а затем введите команду, например «Выберите 1000 лучших терминов для этого документа» или «Выберите 1000 лучших терминов для каждого документа». Это работает в моей текущей реализации MySQL, но, возможно, домен больше подходит для HBase. Отмечу, что HBase и BigTable используются для полнотекстового индексирования, что является похожей проблемной областью.
Вы можете сказать, что я не сделал больше, чем прочитал несколько страниц на HBase, но я надеюсь, что вы понимаете суть моего вопроса. Это связано с этим вопросом.
Среди возможных барьеров может быть HBase, не разрешающий запросы с эквивалентом предложения LIMIT
. Учитывая, что я хочу запрашивать по весу, я хотел бы связать {weight => term}
, что было бы проблематично для двух терминов с одинаковым весом (я предполагаю, что HBase допускает только уникальные ключи). В качестве альтернативы мне пришлось бы хранить набор терминов для заданного веса, но это ограничило бы мою способность точно ограничивать количество возвращаемых терминов.