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

по вопросам сюда: @aigul_sea
Download Telegram
repartition vs coalesce

💗 Вопрос у каждого первого.
Нужны для изменения количества партиций в датафрейме. Как итог - файлов на диске.

По умолчанию это 200, можно переопределить при создании спарк сессии конфигом spark.sql.shuffle.partitions

Посмотреть количество партиций можно так:

df.rdd.getNumPartitions()


📚 Пример. У нас есть датафрейм [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] с 4 партициями:

Partition A: 1, 2
Partition B: 3, 4, 5
Partition C: 6, 7
Partition D: 8, 9, 10

Делаем так:

df_nums.repartition(2)

Partition ABC: 1, 3, 5, 6, 8, 10
Partition XYZ: 2, 4, 7, 9


Repartition
🖇делает партиции равномерными
🖇может увеличивать и уменьшать количество партиций
🖇под капотом шафл

В нашем примере циферки из каждой партиции размазались двум финальным партициям - это и есть шафл (перетасовка данных между экзекьюторами).
Именно за счет шафла работает первое и второе.

df_nums.coalesce(2)

Partition A: 1, 2, 3, 4, 5
Partition C: 6, 7, 8, 9, 10


Coalesce
🖇равномерность не гарантирована
🖇может только уменьшать
🖇данные не шафлит, а склеивает

Файлы клеятся друг за другом (без шафла), поэтому умеет только уменьшать (из склеенных файлов обратно расклеить уже нельзя).
В нашем примере B просто приклеилось к A, а D к C

#spark_tips
Please open Telegram to view this post
VIEW IN TELEGRAM
👍135🤔1
В первой таблице 7 строк, во второй - 5. Сколько строк выведется по каждому типу джойна минимально?
inner, left, right, full
Anonymous Quiz
10%
7, 7, 5, 35
47%
0, 7, 5, 12
6%
0, 5, 7, 12
34%
0, 7, 5, 35
3%
35, 7, 5, 35
102
💡Ответ💡

Коллеги в комментах правильно отметили, что при фулле будет 7 строк, поэтому правильно:

0 7 5 7

🌿Inner Join
Минимально - если ключи в таблицах разные:

t1: 1, 2, 3, 4, 5, 6, 7
t2: 8, 9, 10, 11, 12

🌿Left Join
По-любому 7 строк точно будет, т.к. left берет все из левой таблицы. Минимально - если строки сметчились 1:1 (каждый id встречается один раз) или не сметчились.

🌿Right Join
По-любому 5 строк точно будет, логика та же.

🌿Full Join
Тут формула: max(n, m) = max(7, 5) = 7

В нашем первом примере хоть и будет 12 (нет ни одного одинакового id), но во втором случае будет меньше:

t1: 1, 2, 3, 4, 5, 6, 7
t2: 1, 2, 3, 4, 5

Спасибо за бдительность🫡
Please open Telegram to view this post
VIEW IN TELEGRAM
14
Начинаю серию постов про офисы. Телефон переполняется фоточками, поэтому настала пора рассказать и поудалять)

Сегодня про Авито

🗝 Как попала?
Просто увидела в ит-чатиках приглос и заполнила гугл-формочку.

🐾 Где?
Офис на Белорусской, занимают 5 этажей.

🎤 Что было?
Всего было человек 15, для нас устроили экскурсию по всем этажам. Втихаря со стойки утащила ленточку для пропуска с лого 😅

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

🧩 Есть IT Bar, куда можно прийти за техникой, спортзал, бильярдный стол, муз. инструменты и комната с настолками. Мерч покупается за всякие активности типо провести экскурсию, сделать что-то крутое.

Фото 4: место, где можно поспать
Фото 5: лампа из ручек
Фото 7: скрытый коридор
Фото 8: купленное на авито

В конце был квиз на скорость, где я выиграла бутылочку и наклейки 🙂

Нашла ещё больше крутых фоток тут
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
19👍8
dbt meetup 13.08 19:00

Намечается онлайн-митап по дбт!
Я бы послушала про data mesh in action, запускают ли другие dbt в airflow через BashOperator, про Dagster, т.к. с ним не работала, и метаданные + AWS.

Потом можно обсудить, если будет что обсуждать)

https://space307.team/dbt-meetup
👍15
🎤 IT stand-up 🎤

Очень хотела пойти на IT stand-up от яндекса, даже зарегалась за 3 недели, но мою заявочку отклонили(

Зато наконец-то нашла, куда они это все выложили
Ну и народу там, конечно... 😮
Всё, пойдёмте смотреть, пока ютуб работает

Тык
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥2😁1
Дожила - букирую себе обеды

Недавно снизошло такое озарение:
чёрный ящик -> собес -> светло-серый ящик
Ещё осознала, что вопросы ради вопросов - это скучно, и у каждого должна быть своя цель.

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

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

🔍А мы все еще продолжаем собесить и искать ДЕ к себе в команду.

Тем, кто писал раньше - я должна была вернуться да/нет или hr с деталями. Простите, если затянулось, но мои предложения хр задвинули подальше🌚 Но я настроила пусть побыстрее через PO (Product Owner)

✏️Так что если ещё хотите или если вы остались без ответа, отпишитесь плиз
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5😁531
Посещение офиса Тинька

🗝 Как попала?
Зарегалась и пришла на митап тимлидов

🐾 Где?
Офис на Белорусской, размеры оцените по фоторепортажу) Я была совсем с краешка и прошлась только по 2му этажу.

🎤 Что было?
Три спикера, которые рассказывали что-то про эффективность, процессы, ревью, ресурсы, работу команд. Также узнала, что в точке холакратия - власть в руках команд, а не управления. И тебя выгонит сама команда, когда она поймет, что пора очиститься. Так-то.

Вообще показалось скучновато 😐 Но вот несколько мыслей, которые я записала:

💬 Мы не можем все бежать, как стартап, если мы не стартап.

💬 Быстро - это медленно, но без остановок.

💬 Поощрить вклад в сиюминутный результат.

💬 Хоть перформанс ревью и порождает конкуренцию, но цель у всех одна.

💬 Если любишь - отпусти (чел не будет хорошо работать без заинтересованности, пусть лучше приносит выгоду где-то ещё).

💬 С изменениями не надо бороться, надо работать с ними.

💬 Достигнуть целей, которые даже не ставил.

🎙Что думаете?
🎙А сколько у вас уходит времени в неделю на созвоны?
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍3