Обнаружение аномалий с помощью mapreduce - PullRequest
3 голосов
/ 23 сентября 2011

Я новичок в Apache Hadoop и с нетерпением жду возможности изучить его новые возможности.После основного примера подсчета слов я хотел немного увеличить ставку.Таким образом, я сел с этим утверждением проблемы, которое я получил, просматривая книгу Hadoop In Action.«Возьмите файл журнала веб-сервера. Напишите программу MapReduce для агрегирования количества посещений для каждого IP-адреса. Напишите другую программу MapReduce, чтобы найти лучшие K IP-адресов с точки зрения посещений. Эти частые посетители могут быть законными прокси-серверами ISP (совместно используемымимногие пользователи), или они могут быть скребками и мошенниками (если журнал сервера из рекламной сети). "Кто-нибудь может мне помочь с тем, как я должен начать?На самом деле довольно сложно написать собственный код, поскольку hadoop дает только wordcount в качестве основного примера для начала.Любая помощь с благодарностью приветствуется.Спасибо.

1 Ответ

2 голосов
/ 23 сентября 2011

Напишите программу MapReduce для агрегирования количества посещений для каждого IP-адреса.

Пример WordCount не сильно отличается от этого. В примере wordcount карта выдает («word», 1) после извлечения «word» из входных данных, в случае IP-адреса карта выдает («192.168.0.1», 1) после извлечения «« 192.168.0.1 » IP-адрес из файлов журнала.

Напишите другую программу MapReduce, чтобы найти K лучших IP-адресов с точки зрения посещений.

После завершения первого задания MapReduce будет много выходных файлов на основе числа редукторов с таким содержимым, как этот

<visits> <ip address>

Все эти файлы должны быть объединены с использованием опции getmerge . Опция getmerge объединит файл, а также получит файл локально.

Затем локальный файл должен быть отсортирован с помощью команды сортировки на основе 1-го столбца, который является числом посещений.

Затем с помощью команды head вы можете получить первые n строк, чтобы получить первые n IP-адресов по визитам.

Может быть лучше подходить ко второму MR Job.

...