Инженеры/архитекторы/аналитики данных
1.01K subscribers
1 photo
3 videos
58 links
Канал посвящен обучению с нуля до архитектора хранилища данных. Изучаем SQL, Power BI, ETL, Python, моделирование DWH, выбор технических решений для DWH.
Download Telegram
Привет 👋
📚 Опубликовал два новых видеоурока по Python.

В них разбираем темы, которые пригодятся не только для понимания языка, но и для написания действительно качественного кода.

🔹 Урок 38. Использование декораторов. Разбираем, зачем функции нужна эта «обёртка». Смотрим на практичные примеры: кэширование через @lru_cache (чтобы не вычислять одно и то же по десять раз, нагружая процессор) и элегантное превращение методов в свойства через @property.
🔹 Урок 39. Создание своих декораторов. Учимся писать универсальные декораторы с *args и **kwargs, передавать в них аргументы для гибкой настройки и сохранять документацию оригинальной функции с помощью @wraps, чтобы не терять читаемость кода.

Ссылки на видео:
▶️ Урок 38: https://youtu.be/Td_DnkSGGSY
▶️ Урок 39: https://youtu.be/3LTb22D27XU

Полные версии уроков вместе с домашними заданиями и проверкой результатов уже доступны на Stepik:
🔗 https://stepik.org/lesson/2473247/step/1?unit=2510961
🔗 https://stepik.org/lesson/2473248/step/1?unit=2510962
👍41
Инженеры/архитекторы/аналитики данных pinned «Также вы можете приобрести полные версии курсов по ClickHouse и dbt со скидкой 1000 рублей. Курс по ClickHouse: Ссылка: https://stepik.org/a/259019 Промокод: FORCHANNEL Курс по dbt: Ссылка: https://stepik.org/a/240234 Промокод: FORCHANNEL»
🎥 Опубликовал новый видеоурок по Python — Работа с API и библиотека requests.

API — один из самых важных инструментов современного разработчика. Именно через API программы получают данные от внешних сервисов, работают с Telegram-ботами, погодными сервисами, банковскими системами, нейросетями и тысячами других приложений.

В этом уроке подробно разбираем:
• что такое API и как происходит обмен данными по HTTP;
• чем отличаются запросы GET, POST, PUT и DELETE;
• как использовать библиотеку requests;
• как передавать параметры через params и заголовки через headers;
• как получать и обрабатывать JSON-ответы;
• что означают основные HTTP-статусы (200, 400, 403, 404, 500);
• как правильно обрабатывать ошибки и использовать тайм-ауты при работе с внешними сервисами.

🎬 Смотреть видео:
https://youtu.be/gadQkLmWE8o
https://rutube.ru/video/private/ffb2ea42e642730eac8687ed4a0b64d8/?p=XF9SO6YoppY2pwrN8eMxig

📚 Если хотите не просто посмотреть урок, а закрепить материал на практике, полная версия занятия с тестами доступна на Stepik:
https://stepik.org/lesson/2495164/step/1?unit=2533026

💻 Весь код из урока:
https://github.com/amelinvladimir/python_basics_course/tree/main/%D0%A3%D1%80%D0%BE%D0%BA%2040

Даже если вы не планируете становиться backend-разработчиком, понимание работы API сегодня необходимо практически каждому Python-разработчику, аналитику данных и специалисту по автоматизации. Это одна из тех тем, без которой сложно представить реальные проекты.
👍7🔥2
🎥 Опубликовал новый видеоурок по Python — Создание собственного API на FastAPI.

В предыдущем уроке мы научились обращаться к чужим API с помощью библиотеки requests. Теперь пришло время посмотреть на задачу с другой стороны — создать собственный API, к которому смогут обращаться другие программы.

В этом уроке разбираем:

• как работают серверные приложения, предоставляющие API;
• почему FastAPI стал одним из самых популярных Python-фреймворков для разработки веб-сервисов;
• как создавать собственные API-эндпоинты с помощью декораторов;
• как обрабатывать GET, POST, PUT и DELETE-запросы;
• как принимать параметры из URL и тела запроса;
• как запустить приложение, которое постоянно ожидает входящие запросы и возвращает клиентам структурированные ответы.

После этого урока вы сможете написать свой первый полноценный API и поймете, как устроено взаимодействие между клиентом и сервером. Именно на таких принципах работают Telegram-боты, мобильные приложения, интернет-магазины, банковские сервисы и большинство современных веб-приложений.

🎬 Смотреть на YouTube:
https://youtu.be/DhiF2RwIek4

или на Rutube:
https://rutube.ru/video/private/a78cba2ccf69f7ad55413bfa977c6c59/?p=aBRvK-xiff2NtgKX946I5g

📚 Полное занятие с тестами и практическими заданиями:
https://stepik.org/lesson/2495165/step/1?unit=2533027

💻 Код из видеоурока:
https://github.com/amelinvladimir/python_basics_course/tree/main/%D0%A3%D1%80%D0%BE%D0%BA%2041

Если проходите курс последовательно, рекомендую сначала изучить предыдущий урок по работе с API через requests, а затем переходить к FastAPI. Вместе эти два занятия дают полное представление о том, как программы обмениваются данными: сначала как клиент, затем как сервер.
6🔥2
Всем привет!

опубликованы 2 урока курса по Python, посвященные работе с реальным проектом httpie, на которых мы:
- узнаем о проекте httpie;
- установим и запустим httpie;
- скачаем исходный код проекта и соберем из него httpie;
- внесем правки в код проекта.

Получайте опыт работы с реальным проектом на python:
https://stepik.org/lesson/2509677/step/1?unit=2547567
https://stepik.org/lesson/2509678/step/1?unit=2547568
Друзья, курс "Основы Python" завершен.
Это был долгий путь в 6 месяцев, в течение которого было пройдено много тем, которых более чем достаточно, чтобы перейти к web разработке на python, работе с данными или решению devOps задач.

Курсом во многом доволен.

Курс опубликован в открытом доступе, так как основы Python также как и SQL это самые первые темы, которые стоит учить, когда заходишь в ИТ в анализ или инжиниринг данных.

Спасибо группе, с которой мы шли.

https://stepik.org/course/271947/syllabus
🔥231
Друзья, несколько анонсов 👇

1. 2 сентября стартует курс по анализу данных с помощью Python.
Более подробную информацию о курсе опубликую в конце этой недели.

2. Прорабатываю полноценную двухлетнюю программу подготовки аналитиков и инженеров данных с нуля.
Обучение будет построено вокруг большого проекта, максимально приближённого к реальному рабочему процессу data-команды.

Мне самому этот проект очень интересен, поэтому буду постепенно делиться новостями и показывать, как всё развивается.
👍22🔥2👏1
2 сентября начнется курс «Python для анализа данных и инженерии данных 🐍»

Курс будет длиться 4 месяца и рассчитан на тех, кто прошел уроки с 1.1 по 6.6 базового курса по Python.
После прохождения курса вы сможете использовать Python для решения практических задач анализа данных и Data Engineering.

Python регулярно встречается в вакансиях по анализу и инженерии данных. Знание Python стало одним из базовых профессиональных навыков.

Как будет проходить обучение
Каждую неделю будут опубликованы 1–2 видеоурока продолжительностью до 15 минут.
После каждого урока будут тестовые вопросы и задачи с автопроверкой.

Раз в неделю, по средам в 20:00, будет общий созвон, на котором мы будем разбирать ваши вопросы по теории и решать дополнительные задачи.

У нас будет общий чат для обсуждения вопросов.

Также учиться нам будет помогать бот, который каждый день будет присылать небольшой блок теории и небольшую задачу.
Цель бота — помочь нам заниматься 10–15 минут каждый день и стабильно продвигаться в обучении даже в условиях нехватки времени.

План на 16 недель
1. Python для эффективной обработки данных
• Итераторы и генераторы
yield и lazy evaluation
• Генераторные выражения
• Потоковая обработка данных
• Работа с большими объёмами данных и памятью
2. NumPy
ndarray, shape, dimensions, dtype
• Индексация и slicing
• Векторизированные вычисления
• Broadcasting
• Агрегации
• NumPy vs обычные Python-циклы
3. Pandas: основы
• Series и DataFrame
• Index и columns
• Типы данных
• Загрузка и первичное исследование datasets
loc, iloc
• Фильтрация и query
4. Pandas: преобразование данных
rename, astype, assign
• Создание новых признаков
map и apply
• Векторизация
• Производительность Pandas
5. Pandas: группировка и агрегация
groupby
agg
• Несколько агрегатов
transform
filter
• MultiIndex
• Расчёт бизнес-метрик
6. Pandas: объединение и изменение структуры данных
merge
• INNER / LEFT / RIGHT / OUTER JOIN
• One-to-one, one-to-many, many-to-many
• Cardinality и дубликаты ключей
concat
pivot, pivot_table, melt
7. Время и очистка данных
• Работа с datetime
• Timezone
• Resampling
• Rolling и накопительные показатели
• Пропуски
• Дубликаты
• Некорректные типы
• Выбросы
• Проверка качества данных
8. Исследовательский анализ данных
• Как правильно проводить EDA
• Постановка аналитического вопроса
• Поиск закономерностей и аномалий
• Формирование и проверка гипотез
• Matplotlib
• Seaborn
• Выбор правильного типа визуализации
Практический кейс: исследование поведения клиентов на реальном наборе данных.
9. Python + PostgreSQL
• Подключение к PostgreSQL из Python
• DB-API
• Connection и Cursor
• Параметризованные запросы
• Transactions
• SQLAlchemy
• Engine и Connection
• Работа с DataFrame и PostgreSQL
10. Надёжная загрузка данных из API
• Pagination
• Rate limits
• Timeout
• Retries
• Обработка ошибок
• Incremental loading
• Watermark
• Checkpoint
• Защита от дубликатов
Практика: API → Python → PostgreSQL
11. ETL / ELT и проектирование Data Pipeline
• ETL и ELT
• Extract → Transform → Load
• Raw / Staging / Final
• Архитектура pipeline
• Full и incremental loading
• Idempotency
• Retry и recovery
• Checkpoints
• Что происходит при падении pipeline
Практика: спроектировать и реализовать устойчивый ETL pipeline.
12. Production Python
• Архитектура Python-проекта
• Modules и packages
src-структура
• Configuration
• Environment variables
• Secrets
pyproject.toml
• Dependencies
• Type hints
• Pydantic
Практика: превратить обычный ETL-скрипт в полноценный Python-проект.
13. Testing и Data Quality
• Pytest
• Unit tests
• Fixtures
• Parametrization
• Mocking
• Тестирование transformations
• Schema validation
• Null checks
• Uniqueness
• Referential integrity
• Business rules
Практика: добавить автоматические тесты и проверки качества данных в pipeline.
14. Большие данные и эффективное хранение
• Когда Pandas перестаёт справляться
• Memory limitations
• Chunk processing
• Streaming
• SQL pushdown
• DuckDB
• Polars
• CSV vs Parquet
• Apache Arrow
• Compression
• Partitioning
• Predicate pushdown
Практика:
CSV → Python → Parquet → DuckDB → Analytics
15. Airflow + Docker
• Зачем нужен orchestration
• Airflow DAG
• Tasks
• Dependencies
• Scheduling
• Retries
• Idempotent tasks
• Docker images и containers
• Dockerfile
• Volumes и networks
• Docker Compose
Практика: запустить собственный ETL pipeline через Airflow в Docker.
16. Финальный проект 🚀
Создание полноценного production-like data-проекта:
External APIs

Python ingestion

Raw data

Data Quality

Transformation

Parquet / PostgreSQL

Data Marts

Analytics
В финальном проекте будем применять всё, что изучили на курсе:
• Python
• Pandas
• SQL
• PostgreSQL
• API ingestion
• Incremental loading
• ETL
• Parquet
• Data Quality
• Testing
• Logging
• Idempotency
• Airflow
• Docker

Стоимость обучения
6000 рублей в месяц.
Оплата помесячная.
По всем вопросам и для записи пишите @vladamelin
🔥7👍4
1. Является ли Python необходимым навыком, чтобы устроиться аналитиком или инженером данных?
2. В каких вакансиях он нужен, а в каких нет?
3. Что именно нужно освоить для овладения навыком работы с данными в Python?
4. Какие плюсы и минусы использования Python для решения аналитических и инженерных задач?

В преддверии старта курса "Python для анализа данных" даю ответы на эти вопросы в данном видео.
🔥4