Skip to content

ETL пайплайн данных об учебных заведениях

License

Notifications You must be signed in to change notification settings

kirillov-n/universitiesETL

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Описание

Данные берутся отсюда: University Domains and Names API

Далее ищем заведения с ключевыми словами в названии для определения типа заведения: Колледж, университет или институт. Поиск по ключевым словам ведется на 4 самых наиболее встречаемых в наборе языках (английский, испанский, немецкий и французский). Под тип заведения добавляется колонка. Если не удаётся определить тип – поле остается пустым. Избавляемся от ненужных колонок.

Результат инкрементально (загружаем только новые записи) загружаем в базу PostgreSQL по расписанию раз в сутки в 3 ночи.

Как развернуть проект?

Создать .env файл в корне проекта со следующим содержимым:

export AIRFLOW_UID=50000
POSTGRES_USER=<ИМЯ_ПОЛЬЗОВАТЕЛЯ>
POSTGRES_PASSWORD=<ПАРОЛЬ>
POSTGRES_DB=<НАЗВАНИЕ_БД>
_AIRFLOW_WWW_USER_USERNAME=<ИМЯ_ПОЛЬЗОВАТЕЛЯ>
_AIRFLOW_WWW_USER_PASSWORD=<ПАРОЛЬ>

Поднять проект с помощью Docker:

docker-compose up -d

Запущенный сервер доступен по адресу 127.0.0.1:8080

Авторизироваться и создать соединение Admin -> Connections:

connection id: postgres
connection type: Postgres
host: postgres
login: <ИМЯ_ПОЛЬЗОВАТЕЛЯ>
port: 5432

About

ETL пайплайн данных об учебных заведениях

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages