Глобальная цель всего проекта - создать витрину данных для анализа вакансий data-специальностей HeadHunter'а.
В качестве источника данных в первую очередь выступает API HeadHunter'а.
Параметры поиска:
area
– регион = Россияdate_from
,date_to
– даты, которые ограничивают диапазон дат публикации вакансий. По умолчанию ограничиваемся одним вчерашним днемsearch_field
– область поиска = только заголовокtext
– текст поиска. Ищем по любому из синонимов специальностей, сохраненных в базе, используя язык поисковых запросов
Т.к. зарплаты некоторых специальностей указываются в валюте, отличной от рубля, необходимо знать курс валют на момент публикации вакансии. Для этого используется API Центрального Банка России.
Для оркестрации процесса используется фреймворк Luigi. Задачи формируют граф зависимостей:
Данные с HeadHunter грузятся последовательно по всем специальностям постранично и сохраняются в csv-файлы.
Курсы валют Центробанка сохраняются как есть в виде xml-файлов.
Данные из файлов переносятся в PostgreSQL-базу, которая организована в виде звезды:
Подробное описание полей можно посмотреть здесь. Предполагается, что таблицы измерений не меняются (SCD-0).
Для построения дашборда используется Google Data Studio.