В аналитическое агентство “Последний шанс” обратилась администрация интернет-магазина “Все на дно!”, магазин занимается продажей морепродуктов, с просьбой провести аналитику потребностей пользователей. В ходе исследования было выявлено, что интернет-магазин не хранит информацию о действиях пользователей и единственное что удалось достать, это логи сервера.
Вам требуется изучить логи сервера, спроектировать реляционную базу данных, которая будет хранить информацию о товарах, транзакциях и действиях пользователей. После проектирования распарсите логи и положите их в только что спроектированную базу. На основе полученной базы данных, вам нужно разработать программный модуль для генерации аналитических отчетов, которые будут отвечать на следующие вопросы:
-
Посетители из какой страны совершают больше всего действий на сайте?
-
Посетители из какой страны чаще всего интересуются товарами из категории “fresh_fish”?
-
В какое время суток чаще всего просматривают категорию “frozen_fish”?
-
Какое максимальное число запросов на сайт за астрономический час (c 00 минут 00 секунд до 59 минут 59 секунд)?
-
Товары из какой категории чаще всего покупают совместно с товаром из категории “semi_manufactures”?
-
Сколько брошенных (не оплаченных) корзин имеется?
-
Какое количество пользователей совершали повторные покупки?
Покупка товара считается завершенной только после того, как в логах появилась запись об успешной оплате Чтобы добавить товар в корзину, вы должны находится на странице с товаром
logs.txt - файл содержащий логи пользователей о действиях с товарами.
-
Язык программирования: Python 3
-
База данных: MySQL, MS SQL, PostgreSQL, SQLite
-
Не использовать pandas
-
Код должен быть рабочим, чтобы мы могли развернуть его у себя и проверить работу как маппера логов, так и генератора ответов
-
Программирование и качество кода (применение ООП приветствуется, но не является обязательным, главное, чтобы код был легко читаемым и хорошо структурированным, также поощряется покрытие кода тестами)
-
Качество спроектированной схемы базы данных (не забывайте о нормальной форме)
-
Правильность ответов на вопросы по аналитике
Помимо ответов на вопросы по логам вам необходимо будет загрузить ссылку на репозиторий с кодом решения и дампом базы данных (см. последний шаг).