535 subscribers
342 photos
83 videos
15 files
418 links
Data Engineering Technologies.
SQL, Python, Kafka, Spark, Pandas, Airflow, Clickhouse, Greenplum, Postgres, dbt, LLM agentic systems, AI, robots, drones etc.

Boost channel - https://t.me/boost/data_engi
Download Telegram
0⃣-й пост из цикла.

Прелюдия

🔘Ты ежедневно обрабатываешь несколько ГБ данных, но тратишь часы на настройку/отладку масштабных систем обработки данных? Кто бы ни создавал инфраструктуру данных, он скорее всего скопировал её из какого-то блога/выступления крупной технологической компании!

🔘Представь, что внезапно ответственность за управление расходами команд обработки данных легла на твои плечи. Тебе приходится тщательно проверять все расходы на систему, какими бы незначительными они ни были, чтобы сэкономить немного денег для компании.

🔘Может быть неприятно, когда поставщики данных взимают с компании кучу денег и с радостью возьмут ещё больше, если ты не будешь осторожен с использованием доставшегося тебе легаси.

🔘Представь себе, если бы затраты на обработку данных были очень дешёвыми! Представь себе, что ты можешь быстро воспроизводить и отлаживать проблемы на своем ноутбуке!

🔘В цикле постов расскажу, как использовать последние достижения в области систем обработки данных и дешёвое оборудование для обеспечения дешёвой обработки данных. Буду использовать DuckDB и Python, чтобы показать, как быстро и дёшево обрабатывать данные, одновременно улучшая эргономику разработчиков.

#duckdb #python #etl #de #elt
Please open Telegram to view this post
VIEW IN TELEGRAM
55
1️⃣-й пост из цикла

Начало

Если ты активно работаешь с данными, ты, вероятно, сталкивался с такими системами, как Snowflake, Databricks, Kafka и т.д., о которых было написано много статей о том, как они произвели революцию в обработке данных.

Однако, несмотря на всю эту шумиху, многие компании поняли, что всё это быстро становится дорогостоящим. Мониторинг и отработка отказов обходятся дорого, особенно в таких системах, как Kafka, Apache Spark и Snowflake, в которых много узлов.

Если тебе интересно:

🔜 Как будущее уходит от распределенных вычислений?

🔜 Почему компании тратят умопомрачительные суммы денег на эти бесполезные ресурсы?

🔜 Почему небольшие компании имитируют то, что делают крупные компании, не будучи при этом крупными компаниями?

🔜 Зачем нужно просматривать данные в инфракрасном диапазоне с помощью микроскопа, да ещё и переплачивать за все эти популярные инструменты?

🔜 Как избежать выплаты 1000 долларов за случайное сканирование данных.

🔜 Как избегать поставщиков данных, которые почти всегда возлагают ответственность за то, чтобы пользователи использовали их инструменты “правильным образом”?

Если да, то этот цикл постов для тебя. Представь, если бы твои затраты на обработку данных были настолько низкими, что тебе даже не пришлось бы их отслеживать!

Обсудим подход, который использует последние достижения в области обработки данных в оперативной памяти в сочетании с дешёвым и мощным железом для значительного снижения затрат на обработку данных!


#duckdb #python #etl #de #elt #kafka #spark #databricks #snowflake
Please open Telegram to view this post
VIEW IN TELEGRAM
12
Не могу не поделиться один классным фреймворком - FastStream. Он существенно упрощает реализацию консьюмеров и продюсеров для RabbitMQ, Kafka и т.п. И за счёт этого позволяет сконцентрироваться на бизнес-логике. В комплекте идёт удобный DI (dishka), валидация через pydantic, генерация AsyncAPI, подключение по OpenTelemetry, метрики, мидлвари и куча клиентов. Настоятельно рекомендую!

И нет, FastStream решает более общую задачу, нежели Celery; так что сравнивать их некорректно.

https://habr.com/ru/articles/822505/ #python
❤‍🔥3👏3😁1
😁932
pytest - непростой фреймворк. Это мощный комбайн, под капотом которого происходит много действий (в том числе и магических). Поэтому если вы хотите подружится с ним, понять и принять, то лучший способ - покопаться в его внутрянке и решить какую-то учебную задачу. Например, переделать вывод результатов во что-то более читаемое.

P.S. Бонусом идёт список полезных материалов по pytest на самом Хабре в конце статьи.

https://habr.com/ru/articles/844728/ #python
8
Выкатили релиз Python 3.13.0, и он приносит несколько важных обновлений, которые могут улучшить производительность и удобство разработки.

▶️Экспериментальная поддержка JIT-компиляции, которая обещает значительное ускорение работы кода.

▶️Появилась возможность редактирования многострочного кода в интерактивном интерпретаторе, что облегчает работу с длинными выражениями.

▶️Добавлены новые возможности для работы с типами, такие как typing.TypeIs.

▶️Для мобильных разрабов теперь доступны поддержка Android и iOS на уровне Tier 3.

Детали релиза тут: Python 3.13.0.

#dev #python #release #3.13
Please open Telegram to view this post
VIEW IN TELEGRAM
11
😁9
В python добавляют очередной тип строк, который явно разделяет шаблон и его аргументы. Выглядеть это будет примерно так:
attributes = {"src": "shrubbery.jpg", "alt": "looks nice"}
template = t"<img {attributes:.2f} />"
assert html(template) == '<img src="shrubbery.jpg" alt="looks nice" />'
assert template.strings == ("<img ", " />")
assert template.interpolations == attributes
assert template.interpolations[0].format_spec == ".2f"

Т.е. html - кастомная функция, которая разворачивает аргумент-словарь у строки в набор тегов. Я вот так сходу не могу придумать мест применения, кроме экранирования секретов в логах. Но во-первых, это решается по-другому (своим логгером), а во-вторых, уже есть string.Template, который делает нечто похожее. Ну ладно, ещё защита от инъекций (XSS, SQL и т.п.), но там это делается совсем другим способом.

В общем, меня не покидает ощущение, что python становится слишком фичастым. И когда-нибудь это обязательно стрельнет.

https://habr.com/ru/articles/911196/ #python
6❤‍🔥1😁1
Кто-то считает DjangoORM злом, а я думаю, что инструментом просто надо уметь пользоваться. А т.к. это обёртка над другой технологией, то надо разбираться и в ней. Вот хорошая и лёгкая для чтения статья как в действительности DjangoORM работает с БД. Приведены некоторые оптимизации, нюансы использования и т.п. Хороший кандидат, кстати, для перевода на Хабр.

Но не нужно применять все эти хаки постоянно. ИМХО, они нужны больше для оптимизации - когда действительно что-то идёт не так. Какая разница сколько у вас индекс весит, если база нагружена на 20% и свободного места ещё 100Gb.

https://hakibenita.com/django-foreign-keys #python
👏5😁1
Про f-строки писал ранее тут, тут и тут.

В дополнение к этому лови f-string cheat sheets

#dev #python #py #fstrings
42
42❤‍🔥1
Вчера выкатили стабильный Python 3.14.

Коротко: t‑строки (template strings), отложенная оценка аннотаций + annotationlib, подинтерпретаторы в stdlib, удалённая отладка (pdb -p), официальный free‑threaded CPython как вариант сборки, compression.zstd, UUID v6/v7/v8, цветной REPL, экспериментальный JIT в бинарях macOS/Windows, новый Python Install Manager для Windows.

#python #release
9😁1
👩‍💻 Релиз PyCharm 2025.3 — больше, чем просто обновление!

✔️ JetBrains объединила обе ветки: Community и Professional — в единую версию. То есть, если ты раньше юзал Community — ты по-прежнему можешь бесплатно, но получаешь все базовые плюшки + встроенная поддержка Jupyter notebooks.

🖼️ Для тех, кто работает с анализом данных или ML: полная поддержка Jupyter notebooks на удалённой машине — можно открывать, редактировать и запускать ноутбуки, как будто они локальные. Интерактивные таблицы, графики, виджеты — всё внутри IDE.

⚡️ Поддержка современных инструментов разработки: теперь доступны LSP-инструменты вроде Ruff, Pyright, Pyrefly и Ty — для продвинутого статического анализа, автодополнения и проверок.

🤖 Добавили систему агентов/помощников для кода (например, Claude Agent) — для помощи с рефакторингом, автогенерацией, оформлением… Круто, если хочется автокода помощи.

🐛 Плюс: 300+ багфиксов — стабильность и надёжность.

#dev #py #python #pycharm
Please open Telegram to view this post
VIEW IN TELEGRAM
73👏11