5.2 KiB
Лабораторная работа №3. Знакомство с инструментами Pig и Hive
Цель
- Научиться обрабатывать и проводить анализ данных с помощью инструметов Pig и Hive.
Выполнение
Защита лабораторной работы подразумевает наличие отчета, который должен содержать пункты задания, команды, которые вы вводите и ответы системы на них. При необходимости - комментарии по полученным результатам.
Задание
Внимание: В локальной папке stud
создать папку lab03
. Далее работы проводить в этой папке
Знакомство с Pig
1.1 Загрузить текстовый файл в соответствии с вариантом.
1.2 В среде grunt
, запущенной локально реализовать алгоритм подсчета слов (word count). Результат должен быть уполрядочен по алфавиту
1.3 Выполнить подсчет слов в текстовом файле, результат сохранить в файл.
1.4 Модифицировать алгоритм, выводя только слова на первую букву вашей фамилии.
1.5 Модифицировать алгоритм таким образом, чтобы после подсчета word_count и фильтрации по первой букве, в качестве результата выдавалась сумма всех значений столбца `count' (сумма слов).
1.6 Загрузить данные из текстового файла user_visits.txt
о посещении пользователями сайтов в локальную папку. Познакомиться с данными.
1.7 Загрузить данные из текстового файла user_info.txt
с информацией о пользователях в локальную папку. Познакомиться с данными.
1.8 Создать запрос, который выводит среднее время посещения всех сайтов пользователем с номером, совпададающим с вашим номером по журналу. Пояснить результат.
Знакомство с Hive
2.1 В среде Hive
создать таблицы visits
и info
, позволяющие хранить данные из файлов п.п.1.6 и 1.7.
2.2 Загрузить данные в таблицы.
2.3 Найти в HDFS место хранения таблиц, в отчете указать их размер и уровень репликации.
2.4 Сформировать запросы, которые выводят первые 10 строк каждой таблицы.
2.5 Создать запрос, который выводит среднее время посещения всех сайтов пользователем с номером, совпададающим с вашим номером по журналу. Сравнить результат с п.1.8
2.6 Создать запрос, который выведет электронный адрес, идентификатор пользователя, название посещенного сайта и время посещения этого сайта.
2.7 Создать запрос, реализующий полное внешнее соединение таблиц visits
и info
. Пояснить, какие строки каждой из таблиц попали или не попали в результирующее множество.
Варианты заданий
- http://lib.ru/SHAKESPEARE/ENGL/dream_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/much_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/pericles_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/errors_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/mercant_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/winters_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/measure_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/allend_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/pilgrim_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/macbeth_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/lear_en.txt
- http://lib.ru/SHAKESPEARE/ENGL/othel_en.txt
Вопросы
- Что такое и для чего нужен инструмент Pig?
- Как запустить код, написанный на языке Pig Latin?
- Что такое "мешок", "кортеж" и "поле" в Pig?
- Что такое и для чего нужен инструмент Hive?
- Чем отличается Hive от Pig?
- Какие шаги (какие команды) нужно выполнить, чтобы создать таблицу на основе данных из файла?