дата инженеретта – Telegram
дата инженеретта
3.13K subscribers
258 photos
28 videos
4 files
103 links
мелкое — крупно,
в глубоком разговоре
мудрость приходит

по вопросам сюда: @aigul_sea
Download Telegram
Двойные эмоциональные качели

Эта история случилась, которая я устраивалась в Сбер. И до сих пор только избранные знали, как это произошло на самом деле)

🐌 Я параллельно общалась с двумя компаниями: первая удаленно (Mediascope), вторая в мск (Сбер)

Особенности первой позиции: удаленно, зп в 2 раза больше, да на стыке с де, есть ночные дежурства, после которых можно начать попозже

Особенности второй позиции: надо переезжать, зп в 3 раза больше, крутой вайб с лидом, чисто де задачи. Что меня больше всего впечатлило - лид попросил глянуть тестовое и самой написать, сколько времени понадобится на выполнение. Почему-то этот момент попал мне в самое сердечко💖

Мне очень понравилась вторая позиция, но было сильно давление сверху от мамы. Типо вот так возьму и оставлю ее одну...

🧐 Именно тогда я вступила датаинженерские чатики, чтобы поспрашивать, стоит ли переезжать, сколько стоило просить, как работается. Нашла похожий вопрос на хабре Q&A и написала автору на почту. Писала людям на линкедине из этих компаний, спрашивала про общее ощущение, про задачи. Даже нашла девчонку, которая до этого работала в моей текущей команде и увольнялась по тем же причинам, что и я))

В общем, скрепя сердце я приняла свою долю, отказала сберу и решила согласиться на удаленку в предстоящем вечернем созвоне. Но мне воткнули нож в спину, еще вчера они переманивали к себе, а уже сегодня выбрасывают на улицу🥲 Ничего не оставалось, как попытаться стереть память hr

🏃‍♂️А дальше я уволилась, в тот же вечер села в поезд, с утра приехала в мск, съемной квартиры еще нет, оставила чемоданы и сумки на вокзале, на улице снег и минусовая температура, в пальто и демисезонных сапогах очень холодно, оформилась только к вечеру, успела на ежеквартальный фуршет...

А там мне сказали: "Мы тебя так ждали"💖

Happy end🎉

P.S. Мои переписки в датаинженерских чатиках, сомнения в переезде и обсуждения зп читал мой будущий лид. Я видела наши общие каналы, но понадеялась, что нормальные люди не мониторят там сутками) Спустя полгода сидя в ресторанчике, он мне все это рассказал👀 И что они в команде это тоже обсуждали. Я готова была провалиться сквозь землю

@data_engineerette
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
5521🤔1
Замена show partitions

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

1️⃣ max(date) - самое ресурсозатратное, потому что нужно пробежаться по всей таблице

2️⃣ show partitions - отличный способ, пробегаемся только по метаданным

Другие 2 варианта подойдут для айсберга:

3️⃣ raw.my_table.partitions - в айсберге есть много системных мета-таблиц, таблица с партициями выглядит так:


-RECORD 0-------------------------------------------
partition | {2025-03-29 00:00:00}
spec_id | 0
record_count | 7251
file_count | 1
total_data_file_size_in_bytes | 91062
position_delete_record_count | 0
position_delete_file_count | 0
equality_delete_record_count | 0
equality_delete_file_count | 0
last_updated_at | 2025-11-20 12:25:48.678
last_updated_snapshot_id | 5910543042911865752
only showing top 1 row


Это как аналог show partitions: идем в табличку и отбираем max(partition)

4️⃣ TBLPROPERTIES - тут обсудим подробнее

Пусть таблица партицируется по другим полям или не партицируется вообще. Тогда в момент загрузки можно проставить любое свойство:


ALTER TABLE raw.my_table
SET TBLPROPERTIES ('raw.last-date' = '2025-12-05');


Их может быть несколько, посмотрим на текущий список:


SHOW TBLPROPERTIES raw.my_table


Сюда добавилось наше кастомное свойство:


+-------------------------------+-----------------+
|key |value |
+-------------------------------+-----------------+
|current-snapshot-id |63675018113182479|
|format |iceberg/PARQUET |
|format-version |2 |
|raw.last-date |2025-12-05 |
|write.format.default |PARQUET |
|write.parquet.compression-codec|zstd |
+-------------------------------+-----------------+


Убрать свойство можно так:


ALTER TABLE raw.my_table
UNSET TBLPROPERTIES('raw.last-date');


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

@data_engineerette
Please open Telegram to view this post
VIEW IN TELEGRAM
18👍7
Поделилась тут интересной историей🤗
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from БАШНЯ
HARD SKILLS🫥

Сегодня разбираем реальный кейс о том, как один файл и смена инфраструктуры положили Nexus и остановили релизы👩‍💻

Делитесь этим постом с друзьями и пишите свои вопросы в комментарии ✍️

Автор поста: @data_engineerette

#hardskills
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
17👍125😭1
IPv4 vs IPv6

👀 Я раньше очень часто смотрела на таблицу с событиями пользователей из яндекс метрики. Там были столбцы ClientIP и ClientIP6:

ClientIP - IPv4 с которого было установлено TCP соединение с сервером

ClientIP6 - IPv6 с которого было установлено TCP соединение с сервером

Причем ClientIP6 никогда не было заполнено. И я все время задумывалась: а что там вообще должно лежать?

👩‍💻 И вот недавно я собиралась поиграть с европейскими ребятками. Они подняли свой собственный сервер, чтобы пинг был меньше. Скинули мне примерно такую ссылочку:

http://[2a02:8071:78f1:e662:416d:f389:ff96:442e]:8080/

Я в первый раз увидела, что такое IPv6 на самом деле)

Оказалось, что на их стороне роутером не поддерживается IPv4, а на моей стороне провайдером не поддерживается IPv6

🌎Нашла интересную карту, где показано, что в США, Европе показатель доступности около 60%, Саудовская Аравия и Индия под 80%, пока у нас всего 3%. Представляете?
https://stats.labs.apnic.net/ipv6/

Google показывает 9%, но складывается примерно такая же картина:
https://www.google.com/intl/en/ipv6/statistics.html

@data_engineerette
Please open Telegram to view this post
VIEW IN TELEGRAM
😭14👍72
Никогда не ешьте в одиночку и другие правила нетворкинга

🤓 Я увидела эту книгу в рекомендациях, заинтриговало название, но как будто она вообще не про нашу жизнь) Она про конец 20го века, Америку и ведение бизнеса

Кратко вот так:
📌составить список будущих контактов
📌познакомиться с ними
📌периодически им всем звонить и приглашать на встречи
📌быть оргом
📌создать личный бренд и сообщество
📌вертеться возле денег и в кругах сильных этого мира

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

😧 А это уже совсем cringe moment: звонить людям на автоответчик во внерабочее время, чтобы не тратить время на общение, но в то же время напомнить о себе. «Если ты не хочешь разговаривать, зачем звонить?» - моя мама

Но я все-таки процитирую и прокомментирую некоторые мысли, которые мне понравились и которые хоть как-то можно привязать к нам

Про "силу слабых связей"

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

Про деньги

Если то, что вы делаете, могут сделать многие, то обязательно найдется кто-то, кто готов будет сделать это за меньшую плату


Тут вспоминается конкуренция на позицию джуна де. А ведь если этот кто-то не нашелся, значит, это вы?

Творчество бесполезно, если от него нет практической отдачи. Постоянно думайте о том, каким образом это поможет заработать побольше денег


Мама мне говорила то же самое) Чтобы я занялась репетиторством, потому что хорошо учусь, или преподавала сольфеджио, потому что хорошо получается, или фоткала свадьбы, потому что увлекаюсь фотографией. Но в этом мире существуют же хобби?

Про знакомства

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


Я недавно задумалась, что пора бы уже выучить пару анекдотов на русском и английском, подготовить смешную историю из своей жизни и топ-3 интересных факта о себе. Пока в этом списке (по моему мнению) - я участвовала в постановке оперы «Турандот» в гвардии принцессы. Норм для факта?

Не гоняйтесь за лидерами. Лучше попробуйте найти лидеров завтрашнего дня


По сути это как выйти замуж за айтишника-тимлида или за айтишника-джуна, но с потенциалом

Про лайфхаки

1️⃣Клонировать события - если есть люди, с которыми нужно встретиться, но время ограничено, то можно их всех пригласить в одно место, чтобы еще и познакомить их друг с другом. А еще кого-то пригласить пораньше, а с кем-то задержаться. По-моему, это гениально

2️⃣Понравилась идея при знакомствах спрашивать любимый трек и пополнять свой плейлист

3️⃣Говорить людям, что с ними очень приятно общаться

@data_engineerette
Please open Telegram to view this post
VIEW IN TELEGRAM
168💅4👍3
Подъехала задачка!

На картинке a, b - исходные таблицы, res - итоговая

Нужно написать один запрос, который вернет нужный результат в обоих случаях

@data_engineerette
🔥83🌚2💅1
Откуда у них доступ к моему Airflow
😁73🌚3