задача 1

Выполнен
Заказ
703494
Раздел
Программирование
Предмет
Тип работы
Антиплагиат
Не указан
Срок сдачи
18 Дек 2016 в 23:59
Цена
Договорная цена
Блокировка
20 дней
Размещен
29 Ноя 2016 в 16:42
Просмотров
392
Описание работы
Постановка задачи
Напишите программу, вычисляющую на основе предоставленных исходных данных:
1. Среднее число подписчиков у пользователя.
Формат: avgfollowercount
2. Число пользователей в следующих интервалах по числу подписчиков: [1,10], (10,102], (102,103], (103,104] и т. д.
Формат:
[1, 10] \t count1
(10, 100] \t count2
(100, 1000] \t count3

3. Top50 пользователей по числу подписчиков.
Формат: userid \t follower_count (в порядке убывания followercount)
Для решения следует использовать Hadoop MapReduce. Программы должны быть реализованы на Python с использованием интерфейса Streaming.
Для решения следует использовать Hadoop MapReduce. Программы могут быть реализованы на Python (Hadoop Streaming) или Java.
Исходные данные
Путь к данным в HDFS: /data/twitter/twitter_rv.net (~25 GB).
Данные состоят из строк вида userid \t follower_id, где user_id - идентификатор пользователя Твиттера, followerid - идентификатор одного из подписчиков данного пользователя, \t - символ табуляции (пробелов вокруг него быть не должно).
Не запускайте свою программу сразу на всех данных. Сначала попробуйте подать на вход кусочек данных для отладки: /data/twitter/twitter_rv.net.part (~64 MB).
Соответствия между идентификаторами и именами пользователей хранятся в файле /data/twitter/numeric2screen в формате userid screenname.
Тестирование решений
Для запуска MapReduce-программ на кластере следует использовать сервисы Hadoop MapReduce (Streaming) и Hadoop MapReduce (Java). Данный сервис не выполняет запуск программ, а только проверяет полученные результаты для каждого из пунктов задачи.
Время выполнения тестов - несколько секунд.
ссылки на сервисы и пароль, логин для входа я предоставлю.
Контрольные вопросы
1. Опишите свое решение. Какие MapReduce-программы запускаются, что каждая из них делает, как реализованы map и reduce?
2. Какие из рассмотренных на занятиях приемов, оптимизаций и стратегий для MapReduce-программ вы использовали в своем решении? Почему?
3. Какое число редьюсеров используется для каждого из запусков? Почему?
4. Насколько хорошо ваше решение будет масштабироваться в случае многократного роста объема входных данных? Не станут ли какие-то этапы узким местом? Нет ли риска переполнения памяти?
Требования к отчету
Отчет должен содержать:
Описание решения и ответы на контрольные вопросы (как обычно).
Ссылки на все запуски программ (задания Everest), выполненные для получения требуемых результатов.
Прикрепленный исходный код программ, в случае если он не доступен по ссылкам на задания Everest (например, в случае посылки jar-файла через сервис для программ на Java).
Ссылку на тестирование результатов данным сервисом.
ЧАВО
Надо ли учитывать в пункте 1 пользователей без подписчиков, то есть тех, кого нет в файле twitter_rv.net?
Нет. Считаем среднее число подписчиков только для пользователей с подписчиками.
Может ли в файле с данными о подписчиках какая-нибудь пара (userid, followerid) встречаться несколько раз?
Нет.
Нужна такая же работа?
  • Разместите заказ
  • Выберите исполнителя
  • Получите результат
Гарантия на работу 1 год
Средний балл 4.54
Стоимость Назначаете сами
Эксперт Выбираете сами
Уникальность работы от 70%
Нужна аналогичная работа?
Оформи быстрый заказ и узнай стоимость
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Темы журнала
Показать ещё
Прямой эфир