В этом случае у меня много журналов. Каждый журнал содержит время, IP, URL, содержание и т.д.Как создать специальный инвертированный индекс MapReduce?
Вопрос 1: То, что я хочу сделать, это определить, что даст вам определенное слово как «Google», скажите мне, какой журнал Материалы содержит это слово.
Вопрос 2: Я не могу убедиться, какое слово я предпочитаю, поэтому дай мне весь инвертированный индексный ответ.
Итак, мой вопрос: На вопрос 1, как проектировать преобразователь & редуктор?
- Я могу использовать mapper для разбиения содержимого журнала, а на выходе mapper много пар k-v
<'word', log_id>
. Редуктор должен пройти все эти ответы, и если он встретит пару, например<'google', log_id>
, выведите ее. - И я также могу использовать mapper для работы через весь контент, если он соответствует слову «google», он дает вывод
<'google', log_id>
, если он встречает другие слова, просто пропустите. Если преобразователь не соответствует определенному слову, он ничего не выводит. В этом случае редуктор просто выводит, ему не нужно работать.
Так вы могли бы рассказать мне, какой из них лучше?