DataEng
4.36K subscribers
40 photos
9 files
537 links
Канал про Data Engineering & Distributed Systems.

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

Автор @adilkhash
Download Telegram
Прямо в сердце 😄
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30💯12🔥2
Привет!

За два месяца ни одного нового поста. Признаться, мне стало неинтересно делиться ссылками на материал по теме и превращать канал в ссылкопомойку, но тем не менее я продолжаю активно читать и искать новые статьи/видео/лекции по темам:

— data engineering
— data processing
— distributed systems
— ml/ai engineering

У меня возникла идея сделать аналог hackernews только по нашей теме. Там мы вместе сможем делиться интересным материалом, обсуждать и коллективно оценивать его.

Я даже наговновайбкодил прототип 🤓, он сверху 🔝

Что скажете? Накидайте мнений в комментах.
💯31👍12🔥12
Курс AI Agents от Microsoft

Нашел на просторах сети бесплатный курс по AI Агентам от Microsoft: https://microsoft.github.io/ai-agents-for-beginners/
Помимо текстового материала есть и видео лекции на Ютубе.
🔥12
На злобу дня

Трамп раскрыл тарифы на производительность популярных библиотек для анализа данных 😁

Так вот в чем кроется секрет успеха pandas 🐼
👍22🔥1
Ахтунг! Про Apache Iceberg

Как то не заметил, что легенда Tim Berglund вернулся в Confluent, и теперь снова вещает нам с экранов.
На этот раз Тим разбирает Apache Iceberg: Apache Iceberg | What It Is and Why Everyone’s Talking About It

А вы уже использовали его у себя?
🔥15👍8💯3
Релиз Airflow 3.0

Час назад вышла мажорная версия Apache Airflow 3.0: https://github.com/apache/airflow/releases/tag/3.0.0

Помимо полностью обновлённого интерфейса там ещё куча разных ништяков:

— DAG Versioning (в сообществе долго ждали эту фичу, но мне она не особо нужна)
— Code agnostic execution (появятся т.н. TaskSDK под разные языки программирования, начнут с Go)
— Event-driven scheduling and Data Assets (под капотом всё те же триггеры, но механизм немного изменён)

Подробности читайте здесь.
👍19🔥18
MANNING_Practical_Guide_to_Apache_Airflow_3.pdf
14 MB
The Practical Guide to Airflow 3 🚀

Дорогие друзья, я вижу как вам нравятся посты про Apache Airflow. В этот раз очередной пост про него любимого 😊

Прошла неделя с релиза Apache Airflow 3, и вот в сети от ребят из Astronomer выходит небольшая книга The Practical Guide to Airflow 3 за авторством Tamara Janina Fingerlin, Developer Advocate, Astronomer. Книга издательства Manning, доступна бесплатно в электронном формате. Книга заточена под новшества новой версии, и будет полезна как начинающим так и опытным дата инженерам, планирующим переход на тройку.

У меня пока не дошли руки потестировать новую версию, планирую это сделать на выходных. А вы уже попробовали?
👍17🔥11💯1
Релиз Apache Airflow 2.11.0

Я уже не думал, что будут обновления для 2-й ветки Airflow, а тут релиз 2.11.0: https://github.com/apache/airflow/releases/tag/2.11.0

Причем это не какой-то релиз с багфиксами, там есть новые фишки:

— DeltaTriggerTimetable (trigger-based scheduling)
— Consistent timing metrics across all backends
— Более плавная подготовка к миграции на Airflow 3.0 (добавили команды airflow config lint и airflow config update)
👍8🔥3
Доклады с PyCon US 2025 🐍🐍🐍

Когда я был на PyCon US в 2016 году в Портленде, то записи докладов в сети появлялись в тот же день, но последние года 4 организаторы решили на этом зарабатывать, и записи с конференций появляются со значительной задержкой (несколько месяцев и больше). В этот раз ситуация немного лучше, и на официальном Ютуб канале уже доступны спонсорские доклады для просмотра:

High-Performance Python: Faster Type Checking and Free Threaded Execution

Building AI Applications the Pydantic Way

Building Scalable AI Tool Servers with Model Context Protocol (MCP) and Heroku

Evolving Django: What We Learned by Integrating MongoDB

Accelerated Python: The Community and Ecosystem

Полный список можно посмотреть в плейлисте (сейчас доступно 11 докладов)

Я так понимаю, что все записи уже доступны, но скрыты от нежелательных глаз. Когда именно появятся все доклады неизвестно, но надеюсь в самое ближайшее время. В этот раз было много интересных тем.
👍3🔥1
Apache Airflow 3.0.2

Буквально час назад вышла новая багфикс версия Apache Airflow 3.0.2. Я с недавнего времени начал использовать тройку на своих проектах и столкнулся с неприятным сюрпризом - утечкой памяти. Встроенный dag-processor плодил кучу тредов и открытых файлов из-за чего количество файл дескрипторов росло вместе с количеством потребляемой оперативной памяти. Важный апдейт. Обновился только что и пока наблюдаю решил ли релиз проблему, позже отпишусь в комментариях.

Ссылка на релиз: https://github.com/apache/airflow/releases/tag/3.0.2
👍19🔥9
Orchestrating Workflows for GenAI Applications

На платформе DeepLearning AI вышел новый курс про Apache Airflow от ребят из Astronomer — Orchestrating Workflows for GenAI Applications

Курс прикладной без лишней воды, рассчитан на тех, кто не знаком с Airflow. В курсе разбирают пример создания кастомного RAG с последующей загрузкой в векторную базу через призму работы с Airflow. Возможно кому-то будет полезным!
👍7🔥3
Ранее я писал про релиз Airflow 3.0.2 в котором исправили утечку памяти, но на деле оказалось, что не полностью. Проблема была решена лишь частично, мои пайплайны продолжали периодически падать и съедать память. Посидев вечерок я локализовал проблему и написал фикс, который благополучно был принят в главную ветку Airflow.

Судя по всему релиз 3.0.3 не за горами.
2👍49🔥29
Apache Airflow 3.0.3

Вышла минорная версия Apache Airflow — 3.0.3, в этой версии пофиксили множество багов: https://github.com/apache/airflow/releases/tag/3.0.3
Я уже поставил, полёт нормальный.

Но буквально на днях я нашел ещё один баг с утечкой памяти, но мне необходимо время чтобы его проверить и подтвердить (и возможно исправить ещё одним PR в мастер). К сожалению, релиз 3-й версии не очень радует, слишком много проблем + непривычный UI, ждём-с 3.1.

А вы уже поставили тройку? Как полёт?

Хотите запишу в YouTube скринкаст с комментариями об установке и настройке новой версии? Накидайте лайкосов и комментов под постом. 🔥🔥🔥
🔥33👍19
Forwarded from DevBrain
Ух, давненько я не писал в блог. Почти 2 года и ни одного поста за это время. Исправляюсь, держите: https://khashtamov.com/ru/django-orm-and-simplelazyobject/
Недавно столкнулся с задачей, где мне захотелось использовать "ленивые" вычисления и Django ORM. Что получилось, читайте в посте.
Продвинутый SQL и PostgresSQL

Зашел на сайт Postgres Pro и был приятно удивлён выходом их новой книги — PostgreSQL. Профессиональный SQL, автор Евгений Моргунов. Книга доступна на сайте в электронном виде бесплатно (как и остальные). PostgreSQL. Профессиональный SQL является продолжением другой книги — PostgreSQL. Основы языка SQL, в ней поднимаются более продвинутые темы SQL такие как общие табличные выражения (CTE), агрегатные и оконные функции, пользовательские функции и процедуры. В общем, must read.
🔥31👍6
На Ютуб-канале CultRepo вышел большой документальный фильм про наш любимый язык программирования — Python.

Python: The Documentary | An origin story

Сам ещё не смотрел, но уже в предвкушении!
🔥8👍4
Релиз Apache Airflow 3.1

Вышла новая версия Apache Airflow 3.1, в ней куча изменений и новых фич, бессмысленно пересказывать — бегите читать пост в блоге: https://airflow.apache.org/blog/airflow-3.1.0/
🔥13
Что происходит в LLM. Октябрь 2025

Несмотря на то, что LLM — главный хайп последних 2 лет, вокруг больших моделей остаётся много путаницы и заблуждений. Чем отличаются модели? Надо ли доучивать модель? Хостить или ходить по API? На что можно рассчитывать при построении агента или RAG-системы? Почему у кого-то работают RAG и агенты, а кто-то вовсе в них разочаровался?

Deepschool ответит на эти и другие вопросы на онлайн-лекции в четверг! За полтора часа вы получите актуальный срез индустрии вокруг LLM:
— актуальные модели и их свойства
— бенчмарки
— self-host VS API
— типы задач
— главные «болячки» ванильных решений
— и актуальные советы по их лечению

Спикер — Дмитрий Калашников, NLP Team Lead в Яндексе🔥

А ещё расскажут про курс «LLM», где объяснят теорию LLM, научат промптингу, дообучению, элайменту, построению RAG, агентских-систем и деплою — всё под кураторством опытных инженеров.

Всем участникам лекции подарят скидки на обучение 🎁

Подключайтесь в четверг, 9 октября в 18:30 МСК!

Регистрируйтесь по ссылке и приходите на лекцию в четверг!
👍3
Forwarded from DevBrain
Python 3.14 уже здесь!

Пару часов назад вышел финальный релиз новой версии Python 3.14. Это, пожалуй, один из самых мощных релизов на моей памяти. Новая версия несёт в себе ряд крутых фич, а именно:
- полная поддержка Free-threaded Python
- T-strings, спорная фича, но на мой взгляд удобно иметь в стандартной библиотеке (синтаксис знакомых нам f-strings)
- zstd внутри стандартной либы, один из самых эффективных алгоритмов сжатия данных
- поддержка multiple interpreters из коробки
- uuid 6-8, на 40% быстрее

И многое другое, полный список изменений ловите по ссылке: https://pythoninsider.blogspot.com/2025/10/python-3140-final-is-here.html
👍11🔥6
Последние года 4 я использовал Apache Airflow исключительно в облаке, преимущественно в Amazon — Amazon Managed Apache Airflow. И как обычно бывает, в облаках всё так или иначе между собой связано. Логи хранятся в Cloud Watch, воркеры запускаются в изолированной среде (Amazon Fargate). С июля месяца я стал активно использовать self-hosted Airflow на своих серверах (для своих личных целей), и в целях экономии храню всё в файлах. Так уж получилось, что задачу с регулярной "чисткой" я постоянно откладывал и вот настал час X, когда всё легко из-за исчерпания inodes в файловой системе. Для этого случая я написал DAG, который каждый день в полночь чистит папки со старыми логами, делюсь с вами вдруг он пригодится:

import os
import shutil
from datetime import datetime, timedelta

import pendulum
import structlog
from airflow.sdk import DAG, task

logger = structlog.get_logger(__name__)

@task
def cleanup_airflow_logs(days_to_keep):
log_base_path = os.environ.get("AIRFLOW_HOME", "/opt/airflow") + "/logs"
cutoff_date = datetime.now() - timedelta(days=days_to_keep)

for root, dirs, files in os.walk(log_base_path):
for dir_name in dirs:
dir_path = os.path.join(root, dir_name)
try:
if os.path.getmtime(dir_path) < cutoff_date.timestamp():
logger.info(f"Deleting old log directory: {dir_path}")
shutil.rmtree(dir_path)
except Exception as e:
logger.error(f"Error deleting directory {dir_path}: {e}")


with DAG(
dag_id="airflow_log_cleanup_dag",
start_date=pendulum.datetime(2025, 10, 1, tz="Asia/Almaty"),
schedule="@daily", # Run daily at midnight
catchup=False,
default_args={
"owner": "airflow",
"retries": 2,
"retry_delay": timedelta(minutes=5),
},
max_active_runs=1,
) as dag:
cleanup_airflow_logs(days_to_keep=14)


Здесь учитывается стандартный шаблон именования логов и директорий, включающий дату и время. Я по привычке использую structlog для ведения логов.
👍25🔥5