Посмотрела вчерашний митап, вот еще картиночки архитектур
По сути это классическое двх, data lake и data lakehouse
Но вам не кажется, что кх поверх гринплам - немножко многовато, тем более в lakehouse?
#system_design
По сути это классическое двх, data lake и data lakehouse
Но вам не кажется, что кх поверх гринплам - немножко многовато, тем более в lakehouse?
#system_design
👍14🔥5
А вы знали, что в питоне так можно?
Собрала несколько кейсов, о которых вы могли даже не подозревать:
1️⃣ Имя функции - это переменная, и этому имени мы можем присвоить что угодно:
Естественно, после переопределения все предыдущие возможности перестают действовать
2️⃣ Та же история с модулями:
3️⃣ При импорте модулей существующие переменные перезаписываются:
4️⃣ А переменные после цикла остаются существовать:
#python_tips
Собрала несколько кейсов, о которых вы могли даже не подозревать:
def func():
print('hi')
func()
# hi
func = -1
func()
# Traceback (most recent call last):
# File "<stdin>", line 1, in <module>
# TypeError: 'int' object is not callable
Естественно, после переопределения все предыдущие возможности перестают действовать
import math
type(math)
# <class 'module'>
math = -1
type(math)
# <class 'int'>
x = 2
from mymodule import x
print(x)
# 'new_value'
for i in range(2):
print(i)
print(i) # 2
#python_tips
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥20 12👍7🌚5👀3😁2🎄1
Про качество данных
В конце прошлого года я зачитывалась книжками. И в одной из них мне понравилось выражение, что данные - это "тихий убийца".
Мы можем даже не понимать, что они некачественные, но в какой-то момент это выстрелит.
😭 Был кейс, когда одна команда сделала финансовую отчетность на основе некорректных данных и направила куда-то выше. В этой отчетности цифры были сильно меньше, чем потратили. И встал вопрос - а куда делись все остальные средства? Так что это может довести до серьезных последствий.
❤️🩹 А вообще качество данных - это очень хрупкая вещь.
Где может пойти не так?
▶️ при выгрузке из источника (поставили лишний фильтр)
▶️ при передаче между системами (все задублировалось, потеряли куски информации)
▶️ при интеграции нескольких источников (не на все данные прописаны правила сопоставления)
▶️ при анализе (неправильно посчитали)
А это очень милая и грустная аномалия в контексте целостности данных:
▶️ сироты - когда внешние ключи никуда не ведут
#data_dmbok #fundamentals_of_de
В конце прошлого года я зачитывалась книжками. И в одной из них мне понравилось выражение, что данные - это "тихий убийца".
Мы можем даже не понимать, что они некачественные, но в какой-то момент это выстрелит.
Где может пойти не так?
А это очень милая и грустная аномалия в контексте целостности данных:
Каждый, кто прикасается к данным, способен повлиять на их качество. Обеспечение качества данных — предмет заботы всей организации, а не только команды качества данных или ИТ.
Руководство данными нужно для того, чтобы «делать правильные вещи» (Doing the right things), а управление данными — для того, чтобы «делать вещи правильно» (Doing things right)
#data_dmbok #fundamentals_of_de
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35🔥11👀6😁1
Полезности про Spark
1️⃣ Я периодически посматриваю доклады с хайлоада. Один из крутых - «Оптимизация Spark-приложений от простого к сложному. С примерами». По ссылочке можно найти презу:
https://highload.ru/moscow/2024/abstracts/13255
2️⃣ И тут я поняла, что натыкалась на его же статью про спиллы данных, где подробно на примерах и в картинках это все разбирается:
https://habr.com/ru/amp/publications/743292/
https://highload.ru/moscow/2024/abstracts/13255
https://habr.com/ru/amp/publications/743292/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥15👍6 4
Теперь я lamodian☺️
Начинаю эту весну с изменений в своей жизни - теперь я буду дата инженерить в Lamoda Tech🙂
👔 В пн был мой первый рабочий день - провели онбординг в процессы, выдали мак на м3, устроили экскурсию по офису. Я познакомилась с корп сервисами, сразу записалась на фотосессию для профиля и на экскурсию в фотостудию 🥰
Узнала, что на этой неделе будут проходить встречи, мастер-классы и квизы на тему моды, будет день модных вкусняшек и день призов от какого-то бренда. Все очень прикольно, но в офис я ехать больше не хочу - я добиралась 1:20 от двери до двери с двумя пересадками на метро + автобус😱
🥠 На кухоньке есть свежие фрукты, овощи, зона завтрака с мюслями, печеньки и чокопайки, кофеечек, холодос с 4 видами молока, можно сделать тосты
🙂 Из удивительного - в офисе есть душевая, а временный пропуск я оформила за пару минут
🙂 В конце нам раздали велком-пак: шопер, термокружка, карабин для пропуска и значок. Я познакомилась со своим тимлидом, установила нужные проги, а почти все доступы у меня уже были
📺 Еще я сходила на встречу "collaba", где менеджмент рассказывает про бизнес-инсайты, цифры, бренды, процессы поставок через страны
🛍️ Плюс каждый месяц у меня есть два промика на -15%, кому нужно - пишите)
Начинаю эту весну с изменений в своей жизни - теперь я буду дата инженерить в Lamoda Tech🙂
Узнала, что на этой неделе будут проходить встречи, мастер-классы и квизы на тему моды, будет день модных вкусняшек и день призов от какого-то бренда. Все очень прикольно, но в офис я ехать больше не хочу - я добиралась 1:20 от двери до двери с двумя пересадками на метро + автобус
Please open Telegram to view this post
VIEW IN TELEGRAM
6🔥98 35❤19👍7🦄3🌚2👀1
Песочница для DE
Один крутой чел создал песочницу с де-инструментами. Из прикольного там есть Zookeeper, MinIO, Iceberg, MariaDB и даже Grafana. Я сама только походила по репе, но вам советую попробовать поднять все это дело, потыкаться и поделиться, что как оно там
Ссылка на репу: https://gitflic.ru/project/ananevsyu/sandbox_db_public
Автор: @ananevsyu😎
Один крутой чел создал песочницу с де-инструментами. Из прикольного там есть Zookeeper, MinIO, Iceberg, MariaDB и даже Grafana. Я сама только походила по репе, но вам советую попробовать поднять все это дело, потыкаться и поделиться, что как оно там
Ссылка на репу: https://gitflic.ru/project/ananevsyu/sandbox_db_public
Автор: @ananevsyu
Please open Telegram to view this post
VIEW IN TELEGRAM
❤36🔥16👍3 2
Закулисье фотостудии
Краткая история о моем походе в фотостудию ламоды
NB! Нельзя было фоткать, поэтому вот официальный кадр кусочка студии
📌 📌 📌 📌 📌
Сейчас сезон, в день привозят 2-3к товаров, а к вечеру они должны появиться в каталоге на сайте
☁️ Есть отдельные стенды для каждого вида съемок:
🩷 предметная (аксессуары, обувь) - просто фоткают предметы
🩷 обувь только на женской ноге
🩷 одежда и предметы на модели
🩷 детские вещи, шарфы, парео - тут под углом 45 градусов, чтобы можно было красиво разложить
🩷 постельное белье - есть даже матрас
🩷 маркетинговые - по каким-то поводам, выездные, готовятся сильно заранее
👻 Обитатели студии:
⏺️ фотографы
⏺️ модели
⏺️ стилисты
⏺️ визажисты
⏺️ копирайтеры
⏺️ ретушеры
⏺️ менеджмент
⏺️ продюсеры
⏺️ креативная группа
С моделью работают стилист, визажист, фотограф. Стилисты уже знают, на какой модели какие вещи лучше смотрятся
🎉 Через какие этапы это все проходит:
1️⃣ Приемка товара
Со складов приезжают много коробок с вещами, заранее считают, сколько их будет, какие категории, сколько нужно моделей и рейлов. Стандартные размеры - 40-42 для одежды, 36-37 для обуви
2️⃣ Preparation
Вещи распаковываются, гладятся, раскладываются по категориям
3️⃣ Mannequin
Съемка на манекене
4️⃣ Copywriting
Копирайтеры готовят карточки товаров
5️⃣ Model
Съемка на модели. Если что-то не сочетается, то у них есть своя «Нарния» с базовыми вещами
В конце дня отсматривают все снимки. Могут поревьюить и сами бренды
Вот такая получилась экскурсия)
Краткая история о моем походе в фотостудию ламоды
NB! Нельзя было фоткать, поэтому вот официальный кадр кусочка студии
Сейчас сезон, в день привозят 2-3к товаров, а к вечеру они должны появиться в каталоге на сайте
С моделью работают стилист, визажист, фотограф. Стилисты уже знают, на какой модели какие вещи лучше смотрятся
Со складов приезжают много коробок с вещами, заранее считают, сколько их будет, какие категории, сколько нужно моделей и рейлов. Стандартные размеры - 40-42 для одежды, 36-37 для обуви
Вещи распаковываются, гладятся, раскладываются по категориям
Съемка на манекене
Копирайтеры готовят карточки товаров
Съемка на модели. Если что-то не сочетается, то у них есть своя «Нарния» с базовыми вещами
В конце дня отсматривают все снимки. Могут поревьюить и сами бренды
Вот такая получилась экскурсия)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14❤7 4👍1
Deciphering Data Architectures
Недавно прочитала книжку "Deciphering Data Architectures" - там всего 275 страниц. Не знаю, есть ли на русском, но на английском читается прям супер легко, где-то за недельку
Автор рассказывает про 6 типов архитектур:
🟠 DWH
🟠 Data Lake
🟠 Modern DWH
🟠 Data Fabric
🟠 Data LakeHouse
🟠 Data Mesh
Подробно описывается каждый тип, эволюция от одного к другому, плюс база про моделирование, как проводятся архитектурные дизайн-сессии и т.д.
Но меня больше всего удивило словосочетание "Data Fabric" - я его в нашем дата-пространстве ни разу не слышала. Кто-то его переводит как "фабрика данных", но у меня в голове осталась четкая ассоциация с "лоскутками данных". Т.е. разные доп. сервисы цепляются друг к дружке, как в лоскутном одеялке😴
Книжка подойдет, если хотите в своей голове структурировать все эти подходы. Если лень читать так много, то есть статейка с кратким содержанием на полчаса:
https://habr.com/ru/articles/822669/
Недавно прочитала книжку "Deciphering Data Architectures" - там всего 275 страниц. Не знаю, есть ли на русском, но на английском читается прям супер легко, где-то за недельку
Автор рассказывает про 6 типов архитектур:
Подробно описывается каждый тип, эволюция от одного к другому, плюс база про моделирование, как проводятся архитектурные дизайн-сессии и т.д.
Но меня больше всего удивило словосочетание "Data Fabric" - я его в нашем дата-пространстве ни разу не слышала. Кто-то его переводит как "фабрика данных", но у меня в голове осталась четкая ассоциация с "лоскутками данных". Т.е. разные доп. сервисы цепляются друг к дружке, как в лоскутном одеялке
Книжка подойдет, если хотите в своей голове структурировать все эти подходы. Если лень читать так много, то есть статейка с кратким содержанием на полчаса:
https://habr.com/ru/articles/822669/
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤8🔥6
dbt meetup
Когда: 27 марта в 19:00
Формат: онлайн, бесплатно
О чем: dbt, Great Expectations, DuckDB
Где: https://inzhenerka.tech/dbt_meetup
Когда: 27 марта в 19:00
Формат: онлайн, бесплатно
О чем: dbt, Great Expectations, DuckDB
Где: https://inzhenerka.tech/dbt_meetup
inzhenerka.tech
dbt & modern data stack Meetup 25 сентября в 19:00 (+3GMT)
25 сентября в 19:00 (+3 GMT) приглашаем на митап, где опытные data-инженеры поделятся инсайтами, реальными кейсами и лучшими практиками работы с dbt и современным data stack.
❤10👍4🔥2
Стата по моим офферам
Довольно многих волнует тема офферов, поэтому я тут поделюсь своей историей
🪐 Разделим последний год на 2 hr-кампании, когда я осознанно хотела пособеситься. Каждая кампания длиной примерно 2 месяца:
1️⃣ лето: 02.07 - 06.09
2️⃣ зима: 23.12 - 12.02
➡️ Первая hr-кампания меня сильно прокачала в плане проведения собственных собесов и научила не быть слепым котеночком. Иногда я ставила даже 2 собеса в день, и моя энергия скатывалась куда-то в минус
➡️ А в зимний период я понимала, что может быть сложно начинать. Но мне сказали, что бюджеты все равно закладываются заранее, так что по сути в начале года ничего не мешает начинать найм
☕️ Итак, смотрим на графички. Не поленилась, прошлась по всей стате на hh и по всем перепискам в мессенджерах😁 Возьмем оранжевую линию за основу - это те вакансии, которые были мне интересны. Конверсия в оффер получилась 8/15 = 53% vs 1/21 = 4,7%. Т.е. зимняя hr-кампания отработала в 11 раз хуже летней. Возможно, с весны эта ситуация меняется? Но я не уверена
👩💻 Также есть качественная разница в уровне компаний. Если летом мне писали отсюда:
CIAN
Альфа
МТС
Magnit
Лента
То зимой конкретно все поменялось:
Quickly Search
WMT Group
ИЦ АЙ-ТЕКО
Datanomica
Trinity Monsters
🗓️ Средняя длительность hr-процесса получилась 10 дней летом vs 18 дней зимой (зааффектили нг каникулы). Включала компании, от которых я получила ОС по итогам собесов, и исключила выброс в виде яндекса - там 63 дня на 3 этапа 👍
Прокомменчу 3 других отказа зимой:
Касперский - двх на MS SQL🙂 и я была просто антиметчем их вакансии
Билайн - искал топового скалиста🙂
Авито - завалилась на алгосах с NP-полной задачей🙂
🎤 В итоге я пришла к таким выводам:
- хоть и количество просмотров увеличилось
- но очень много интеграторов, и общее качество компаний упало
- отклики на hh не работают (почти), в большинстве пишут сами и поэтому заинтересованы больше, чем если откликаться самому
Было страшно подавать заявление, понимая, что на рынке вот такая ситуация, выходить только через месяц, а у меня единственный оффер на руках
🎤 Есть кто сейчас в процессе поисков, какие ощущения?
Довольно многих волнует тема офферов, поэтому я тут поделюсь своей историей
CIAN
Альфа
МТС
Magnit
Лента
То зимой конкретно все поменялось:
Quickly Search
WMT Group
ИЦ АЙ-ТЕКО
Datanomica
Trinity Monsters
Прокомменчу 3 других отказа зимой:
Касперский - двх на MS SQL
Билайн - искал топового скалиста
Авито - завалилась на алгосах с NP-полной задачей
- хоть и количество просмотров увеличилось
- но очень много интеграторов, и общее качество компаний упало
- отклики на hh не работают (почти), в большинстве пишут сами и поэтому заинтересованы больше, чем если откликаться самому
Было страшно подавать заявление, понимая, что на рынке вот такая ситуация, выходить только через месяц, а у меня единственный оффер на руках
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍33❤16🔥8
rows between
Когда я в декабре решала Advent of SQL, на 11 день было интересное задание - найти скользящее среднее по текущей строке с двумя предыдущими. Еще похожая штука применяется, когда нужно найти кумулятивную сумму
🚃 Выход - оконка! (но только в целях SQL)
Мы можем написать так:
Но под капотом это так:
т.е. мы стартуем с первой строки и берем все до текущей
Всего есть несколько способов тюнинга:
В контексте задачи со скользящим средним просто нужно взять не 1, а 2 строки:
А для кумулятивной суммы нужно просто сделать так, потому что по дефолту она и будет кумулятивной✨
Когда я в декабре решала Advent of SQL, на 11 день было интересное задание - найти скользящее среднее по текущей строке с двумя предыдущими. Еще похожая штука применяется, когда нужно найти кумулятивную сумму
Мы можем написать так:
avg(amount) over(order by column)
Но под капотом это так:
avg(amount) over(order by column rows between unbounded preceding and current row)
т.е. мы стартуем с первой строки и берем все до текущей
Всего есть несколько способов тюнинга:
--от первой до текущей
rows between unbounded preceding and current row
--от текущей до последней
rows between current row and unbounded following
--с конкретикой - сколько до и сколько после
--от предыдущей до текущей (2 строки)
rows between 1 preceding and current row
--от текущей до 1 следующей (2 строки)
rows between current row and 1 following
--от предыдущей до следующей (3 строки, еще текущая есть)
rows between 1 preceding and 1 following
В контексте задачи со скользящим средним просто нужно взять не 1, а 2 строки:
avg(amount) over(order by rows between 2 preceding and current row)
А для кумулятивной суммы нужно просто сделать так, потому что по дефолту она и будет кумулятивной
sum(amount) over(order by column)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍44 9
Пост-мит dbt meetup
Только что закончился dbt meetup
Что было:
1️⃣ "Данные под контролем: Great Expectations в деле"
База про что такое data quality, какие критерии качества данных бывают, как добавить тест в GX, какой файлик с результатами получается, как выглядит таблица в UI DataHub (это такой дата каталог, чтобы пользователям было удобно смотреть бизнес-сущности, запущенные проверки и т.д.) Хотелось послушать на х3, скучно, в чате были вопросы круче, мне не понравилось :(
2️⃣ "Так ли удобен dbt, как о нём рассказывают (костыли, ограничения, трудности)"
Про dbt на практике. Как переопределять макросы, добавлять хинты для dbt, как обращаться к системным таблицам, как возвращать значения из макросов, особенности логирования и работы с json, dbt unit testing (либа)
3️⃣ "Современные практики локальной разработки и тестирования в dbt"
Про локальную разработку в dbt, Makefile (для удобного запуска команд), Zero Copy Clone (прод - read-only, запись в dev), dbt unit tests (в dbt core), эфемерные модели, фикстуры (один раз создаются, даже если нужны в нескольких тестах)
4️⃣ "DuckDB на каждый день - меньше рутины, больше аналитики"
Про pandas, DuckDB overview, кейсы использования, как интегрировать с dbt, новые фичи в SQL (group by all, union by name и т.д.)
5️⃣ "Данные на максималках: инкрементальные загрузки и partition replacing"
Про инкрементальные модели в dbt, SCD, WAP-паттерн (Write-Audit-Pattern, сначала записываем, потом проверяем и публикуем), метод замены партиций, продвинутая работа с изменениями в данных. Тут надо еще немного преисполниться
Только что закончился dbt meetup
Что было:
База про что такое data quality, какие критерии качества данных бывают, как добавить тест в GX, какой файлик с результатами получается, как выглядит таблица в UI DataHub (это такой дата каталог, чтобы пользователям было удобно смотреть бизнес-сущности, запущенные проверки и т.д.) Хотелось послушать на х3, скучно, в чате были вопросы круче, мне не понравилось :(
Про dbt на практике. Как переопределять макросы, добавлять хинты для dbt, как обращаться к системным таблицам, как возвращать значения из макросов, особенности логирования и работы с json, dbt unit testing (либа)
Про локальную разработку в dbt, Makefile (для удобного запуска команд), Zero Copy Clone (прод - read-only, запись в dev), dbt unit tests (в dbt core), эфемерные модели, фикстуры (один раз создаются, даже если нужны в нескольких тестах)
Про pandas, DuckDB overview, кейсы использования, как интегрировать с dbt, новые фичи в SQL (group by all, union by name и т.д.)
Про инкрементальные модели в dbt, SCD, WAP-паттерн (Write-Audit-Pattern, сначала записываем, потом проверяем и публикуем), метод замены партиций, продвинутая работа с изменениями в данных. Тут надо еще немного преисполниться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤19👍6