Прелюдия
#duckdb #python #etl #de #elt
Please open Telegram to view this post
VIEW IN TELEGRAM
Начало
Если ты активно работаешь с данными, ты, вероятно, сталкивался с такими системами, как Snowflake, Databricks, Kafka и т.д., о которых было написано много статей о том, как они произвели революцию в обработке данных.
Однако, несмотря на всю эту шумиху, многие компании поняли, что всё это быстро становится дорогостоящим. Мониторинг и отработка отказов обходятся дорого, особенно в таких системах, как Kafka, Apache Spark и Snowflake, в которых много узлов.
Если тебе интересно:
Если да, то этот цикл постов для тебя. Представь, если бы твои затраты на обработку данных были настолько низкими, что тебе даже не пришлось бы их отслеживать!
Обсудим подход, который использует последние достижения в области обработки данных в оперативной памяти в сочетании с дешёвым и мощным железом для значительного снижения затрат на обработку данных!
#duckdb #python #etl #de #elt #kafka #spark #databricks #snowflake
Please open Telegram to view this post
VIEW IN TELEGRAM
Telegram
DE
🐍🦆
Построение эффективных дата-пайплайнов с помощью Python и DuckDB
TL;DR: DuckDB делает обработку данных дешёвой и простой. Покажу, как эффективно использовать DuckDB в цикле постов
👇👇👇
0⃣ Прелюдия
1️⃣ Начало
2️⃣ Проект
…
Построение эффективных дата-пайплайнов с помощью Python и DuckDB
TL;DR: DuckDB делает обработку данных дешёвой и простой. Покажу, как эффективно использовать DuckDB в цикле постов
👇👇👇
0⃣ Прелюдия
1️⃣ Начало
2️⃣ Проект
…
Forwarded from Small Data Science for Russian Adventurers
#код
Довольно известный ресурс про эффективное программирование на питоне (по памяти и по скорости) - но в этом канале я ещё на него ни разу не ссылался. Есть отдельная подборка статей по DS: numpy, pandas, polars и т.п.
https://pythonspeed.com/
Довольно известный ресурс про эффективное программирование на питоне (по памяти и по скорости) - но в этом канале я ещё на него ни разу не ссылался. Есть отдельная подборка статей по DS: numpy, pandas, polars и т.п.
https://pythonspeed.com/
Forwarded from О разработке и не только
Не могу не поделиться один классным фреймворком - FastStream. Он существенно упрощает реализацию консьюмеров и продюсеров для RabbitMQ, Kafka и т.п. И за счёт этого позволяет сконцентрироваться на бизнес-логике. В комплекте идёт удобный DI (dishka), валидация через pydantic, генерация AsyncAPI, подключение по OpenTelemetry, метрики, мидлвари и куча клиентов. Настоятельно рекомендую!
И нет, FastStream решает более общую задачу, нежели Celery; так что сравнивать их некорректно.
https://habr.com/ru/articles/822505/ #python
И нет, FastStream решает более общую задачу, нежели Celery; так что сравнивать их некорректно.
https://habr.com/ru/articles/822505/ #python
Хабр
FastStream — новый убийца Celery?
FastStream - это относительно новая блестящая игрушка в руках Python'истов, которая создана специально для работы с брокерами сообщений. В Python сложилось устойчивое убеждение, что если мы работаем с...
❤🔥3👏3😁1
Оказывается есть стандарт OpenFeature с которым фича-флаги выглядят ещё более удобными и привлекательными при разработке.
Please open Telegram to view this post
VIEW IN TELEGRAM
👏5
DE
Feature flags (или флаги функций) важный инструмент в современном программировании. Они позволяют тебе включать и выключать определённые функции в коде без необходимости вносить изменения в основной код базы. Это особенно полезно при разработке и тестировании новых функций.
✔️ Преимущества использования feature flags
1️⃣ Контроль над функциями:
Можно безопасно тестировать новые функции на ограниченной группе пользователей.
2️⃣ Ускорение разработки:
Новые функции могут быть внедрены быстрее, так как их можно включать или выключать без релиза новой версии приложения.
3️⃣ Уменьшение риска:
Если новая функция вызывает проблемы, её можно быстро отключить, минимизируя влияние на пользователей.
4️⃣ Персонализация:
Различные пользователи могут видеть разные наборы функций в зависимости от своих предпочтений, групп или политик безопасности.
✅ Влияние feature flags на кодовые базы
1️⃣ Усложнение кода:
При неправильном использовании количество условий в коде (многообразие if-elif, которые ты так любишь🙃 ) может увеличиться, что сделает его сложнее для чтения и сопровождения.
2️⃣ Тестирование:
Необходимо тестировать каждую комбинацию включённых и выключенных флагов, что может увеличить объём работы тестировщиков.
3️⃣ Технический долг:
Если feature flags не удаляются после стабилизации функции, они могут накопить технический долг, усложняя кодовую базу.
📎 Заключение
Feature flags являются мощным инструментом при правильном использовании, помогая управлять развитием продукта и уменьшать риски. Однако важно следить за их количеством и своевременно удалять неиспользуемые флаги, чтобы поддерживать кодовую базу в чистоте.
#dev #featureflags #if
Можно безопасно тестировать новые функции на ограниченной группе пользователей.
Новые функции могут быть внедрены быстрее, так как их можно включать или выключать без релиза новой версии приложения.
Если новая функция вызывает проблемы, её можно быстро отключить, минимизируя влияние на пользователей.
Различные пользователи могут видеть разные наборы функций в зависимости от своих предпочтений, групп или политик безопасности.
При неправильном использовании количество условий в коде (многообразие if-elif, которые ты так любишь
Необходимо тестировать каждую комбинацию включённых и выключенных флагов, что может увеличить объём работы тестировщиков.
Если feature flags не удаляются после стабилизации функции, они могут накопить технический долг, усложняя кодовую базу.
Feature flags являются мощным инструментом при правильном использовании, помогая управлять развитием продукта и уменьшать риски. Однако важно следить за их количеством и своевременно удалять неиспользуемые флаги, чтобы поддерживать кодовую базу в чистоте.
#dev #featureflags #if
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7
Forwarded from О разработке и не только
Хороший доклад про эволюцию средств установки python пакетов. Вечером за ужином самое то :)
tl;dr Экосистема python сломана, проклята и никто чинить её не собирается.
https://www.youtube.com/watch?v=2_fpwTaSQgE #python
tl;dr Экосистема python сломана, проклята и никто чинить её не собирается.
https://www.youtube.com/watch?v=2_fpwTaSQgE #python
YouTube
Николай Марков. Управление пакетами — хорошее, плохое, злое?
Николай Марков
Data Platform Lead, Altenar
Управление пакетами — хорошее, плохое, злое?
Экосистема пакетов Python существует очень давно, и в этом есть как плюсы, так и минусы. С одной стороны, мы имеем один из самых больших репозиториев пакетов на все…
Data Platform Lead, Altenar
Управление пакетами — хорошее, плохое, злое?
Экосистема пакетов Python существует очень давно, и в этом есть как плюсы, так и минусы. С одной стороны, мы имеем один из самых больших репозиториев пакетов на все…
Forwarded from Николай Хитров | Блог
Gleam. Убийца Rust/Elixir? Опять?
В узких кругах любителей функционального программирования этот язык обсуждали уже давно и далеко не один раз. Но вот несколько месяцев назад случился релиз😎
Вы спросите: ну и че это за очереднойбесполезный язык?
Отвечаю: по сути на😑
Из интересного:
🔣 Компилятор написан на
🔣 Язык поддерживает два рантайма:
🔣 Код на
🔣 Из коробки есть набор джентельмена: компилятор, пакетный менеджер, форматер, LSP
🔣 В документации есть подсказки-сравнения с другими языками, чтобы было проще вкатиться (например для python, elixir, rust)
🔣 Программистов на
🔣 Есть hot reload от
🔣 В языке нет неявных исключений и нет типа
🔣 Авторы говорят, что можно тащить в прод
Что думаете? Очередной убийца🤓
В узких кругах любителей функционального программирования этот язык обсуждали уже давно и далеко не один раз. Но вот несколько месяцев назад случился релиз
1.0.0 версии и покатилась маленькая, но гордая волна хайпа. С момента релиза уже успела выйти версия 1.3.0 и некоторое количество видосов о языке (раз, два) Вы спросите: ну и че это за очередной
Отвечаю: по сути на
erlang решили натянуть статическую типизацию и сверху посыпать сахаром из Rust, Elm, OCaml. И оно вроде как даже получилось. И похоже даже работаетИз интересного:
Rusterlang vm и javanoscript (NodeJS, Deno, Bun)gleam можно встроить в код на elixir и получить бенефиты от обоих миров. Уже есть обвязки для этого (тык)gleam называют Gleamlins (глимлины?)erlang, но с оговоркамиInfinity, поэтому деление на ноль вернет нольЧто думаете? Очередной убийца
c++/rust/elixir/whatevername, про которого все забудут? Или все же он найдет свою смузи нишу?Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Your backend is too complicated
This is why you should be using Gleam to simplify your software projects.
Level up your coding skills with CodeCrafters: https://ihh.dev/codecrafters
Modern software engineering can be a bit of a nightmare. You've got all these different third-party services…
Level up your coding skills with CodeCrafters: https://ihh.dev/codecrafters
Modern software engineering can be a bit of a nightmare. You've got all these different third-party services…
😁5