Сравнение синтаксиса [ Pandas | Polars | PySpark] ч.1
Ранее на канале мы уже ознакомились с теорией о:
• Pandas и Polars
• PySpark
Сегодня разберемся, как одни и те же операции выполняются в данных инструментах.
Главное саммари по этому сравнению:
1. Polars очень схож с Pandas
2. PySpark очень схож с Polars
Так как в свободном доступе не получается поработать с PySpark - можно научиться работать с Polars и бОльшую часть вы уже будете знать
Ранее на канале мы уже ознакомились с теорией о:
• Pandas и Polars
• PySpark
Сегодня разберемся, как одни и те же операции выполняются в данных инструментах.
Главное саммари по этому сравнению:
1. Polars очень схож с Pandas
2. PySpark очень схож с Polars
Так как в свободном доступе не получается поработать с PySpark - можно научиться работать с Polars и бОльшую часть вы уже будете знать
👍9❤5⚡3🔥3
Практические вопросы по JOIN-ам
Мои любимые вопросы по JOIN-ам, которые часто показывают, знает ли человек на самом деле, как они работают:
У вас есть 2 таблицы.
1ая - 100 строк
2ая - 10 строк
Какое [ min & max ] количество записей выдаст:
1 секция
• inner join
• left join
• right join
2 секция
• cross join
• full outer join
• anti left join
Переходим к скринами, сначала пробуем сами решить, следующим скрином сверяемся с моим решением.
Ставим 💯 если получилось решить все, ✍️ если узнали для себя что-то новое
Мои любимые вопросы по JOIN-ам, которые часто показывают, знает ли человек на самом деле, как они работают:
У вас есть 2 таблицы.
1ая - 100 строк
2ая - 10 строк
Какое [ min & max ] количество записей выдаст:
1 секция
• inner join
• left join
• right join
2 секция
• cross join
• full outer join
• anti left join
Переходим к скринами, сначала пробуем сами решить, следующим скрином сверяемся с моим решением.
Ставим 💯 если получилось решить все, ✍️ если узнали для себя что-то новое
✍22🔥5❤3💯3👍1
Взаимодействие с командой DWH
Один из важнейших навыков миддл аналитика — грамотное взаимодействие с командой DWH. Здесь подразумевается:
1. Понимание работы дата-инженера
• Вы должны понимать основные задачи и инструменты, с которыми работают дата-инженеры: ETL-процессы, структуры бд, способы оптимизации запросов.
2. Коммуникация на одном языке
• Важно уметь объяснить свои потребности на понятном команде языке и также понимать их ответ.
• Это не только упростит работу, но и поможет вам быть на одной волне с командой + снизит количество возможных недоразумений.
3. Составление четкого ТЗ для создания витрин
• Умение чётко и структурированно составить ТЗ для команды DWH — ключ к получению правильных данных.
• Хорошее ТЗ должно включать все необходимые детали: требования к данным, фильтры, формат и частоту обновления.
4. Понимание работы витрин
• Вы должны знать, как работают витрины данных: из каких источников данные собираются, как они обновляются и как их правильно использовать в аналитике.
• Это позволит не только корректно запрашивать данные, но и использовать их наиболее эффективно.
Один из важнейших навыков миддл аналитика — грамотное взаимодействие с командой DWH. Здесь подразумевается:
1. Понимание работы дата-инженера
• Вы должны понимать основные задачи и инструменты, с которыми работают дата-инженеры: ETL-процессы, структуры бд, способы оптимизации запросов.
2. Коммуникация на одном языке
• Важно уметь объяснить свои потребности на понятном команде языке и также понимать их ответ.
• Это не только упростит работу, но и поможет вам быть на одной волне с командой + снизит количество возможных недоразумений.
3. Составление четкого ТЗ для создания витрин
• Умение чётко и структурированно составить ТЗ для команды DWH — ключ к получению правильных данных.
• Хорошее ТЗ должно включать все необходимые детали: требования к данным, фильтры, формат и частоту обновления.
4. Понимание работы витрин
• Вы должны знать, как работают витрины данных: из каких источников данные собираются, как они обновляются и как их правильно использовать в аналитике.
• Это позволит не только корректно запрашивать данные, но и использовать их наиболее эффективно.
❤7🔥4👍2
Опыт увольнений
Многие говорят как устроиться быстрее и лучше, но мало кто говорит о теме увольнения.
Недавно у меня вышла интереснейшая беседа с HR-ом в одном из чатов.
Сначала небольшая МОЯ предыстория:
Я проработал небольшое количество времени в Озоне и все было супер... Ровно до тех пор пока ко мне не пришел рук и не сказал: "Никит, у нас оптимизация, сверху пришли и сказали сократить штат" (Это правда)
Мне предлагают 2 варианта:
1 - ротация
2 - 2 оклада и полюбовно распрощаемся
Я решил не торопиться со вторым и собесился в разные команды, куда хотел - не получилось, куда получилось - понял, что не будет интересно в длительной перспективе. И выбрал 2 вариант. Хотя озон мега хорош(
Далее советы начинающим и уже опытным ребятам тусующимся в этой кухне:
1. Если работодатель предлагает уволится «давайте по соглашению сторон в зубы стандартно 2 оклада» - всегда торгуйтесь, законом не оговорены никакие стандартные 2 оклада. Но многое зависит от причин.
• Если Ваше место сокращают, но не хотят это проводить как сокращение, то торговаться можно легко.
• Если Вас "просят" уйти (doesnt matter как вы работаете), то тоже можно торговаться, но надо понимать, что на Вас будут давить.
• Если вы хорошо работаете (по мнению обеих сторон), но, допустим, просто Ваше место нужно под другого, вы дорого обходитесь, у них есть вариант дешевле - это и используйте: "За два оклада уйду через три месяца. А за пять - сейчас"
• если вы проработали меньше 3-х месяцев, то торговаться вряд ли получится(
Важные момента для аргументации:
• в нашей сфере поиск работы с моим стажем в среднем занимает N (Если N > 2) месяцев, поэтому 2 оклада меня не спасут
• короткий срок работы вызовет вопросы у будущего работодателя (все равно не прикольно, можно указать этот момент)
• при устройстве опять проходить тучу собеседований и тестовых - не хотелось бы, а вот получается придется(
Многие говорят как устроиться быстрее и лучше, но мало кто говорит о теме увольнения.
Недавно у меня вышла интереснейшая беседа с HR-ом в одном из чатов.
Сначала небольшая МОЯ предыстория:
Я проработал небольшое количество времени в Озоне и все было супер... Ровно до тех пор пока ко мне не пришел рук и не сказал: "Никит, у нас оптимизация, сверху пришли и сказали сократить штат" (Это правда)
Мне предлагают 2 варианта:
1 - ротация
2 - 2 оклада и полюбовно распрощаемся
Я решил не торопиться со вторым и собесился в разные команды, куда хотел - не получилось, куда получилось - понял, что не будет интересно в длительной перспективе. И выбрал 2 вариант. Хотя озон мега хорош(
Далее советы начинающим и уже опытным ребятам тусующимся в этой кухне:
1. Если работодатель предлагает уволится «давайте по соглашению сторон в зубы стандартно 2 оклада» - всегда торгуйтесь, законом не оговорены никакие стандартные 2 оклада. Но многое зависит от причин.
• Если Ваше место сокращают, но не хотят это проводить как сокращение, то торговаться можно легко.
• Если Вас "просят" уйти (doesnt matter как вы работаете), то тоже можно торговаться, но надо понимать, что на Вас будут давить.
• Если вы хорошо работаете (по мнению обеих сторон), но, допустим, просто Ваше место нужно под другого, вы дорого обходитесь, у них есть вариант дешевле - это и используйте: "За два оклада уйду через три месяца. А за пять - сейчас"
Важные поинт.
Но вообще надо понимать, что всегда лучше расставаться красиво. Земля такая круглая, а бумеранг всегда возвращается)
• если вы проработали меньше 3-х месяцев, то торговаться вряд ли получится(
Важные момента для аргументации:
• в нашей сфере поиск работы с моим стажем в среднем занимает N (Если N > 2) месяцев, поэтому 2 оклада меня не спасут
• короткий срок работы вызовет вопросы у будущего работодателя (все равно не прикольно, можно указать этот момент)
• при устройстве опять проходить тучу собеседований и тестовых - не хотелось бы, а вот получается придется(
Итог:
Вот поэтому мне надо не 2 , а N окладов и я без вопросов уйду.
Самый важный поинт:
Не наглеть на пустом месте. Мир очень маленький и никогда не знаешь как сыграет та или иная ситуация в будущем.
❤32👏7🔥6
Совместно с каналом Ани решили сделать ответы на одни из самых часто задаваемых вопросов ребят, которые хотят вкатиться, но те кто уже в профессии, хотелось бы услышать ваше мнение по поводу вопросов.
1. У меня нет высшего технического образования. Это будет проблемой, нужна ли она вообще?
• Критически - не важна.
• Но для многих HR это важный поинт, если вы залетаете в IT специальность.
• У меня лично специальность Информационая Безопасность
Могу сказать что например экономисты вообще норм заходят в аналитику из-за понимания юнит экономики.
2. Как долго готовиться к собесам?
В зависимости от того, насколько хорошо вы знаете ту или иную предметную область.
В интернете куча роадмэпов по всем направлениям, но вот мой стартер пак для начинающих:
• Leetcode 30 первых задачек уровня easy по алгоритмам Python
• Leetcode 30 первых задачек по SQL + Обязательное решение не только на [ MySQL | PostreSQL ], но и решить эти задачки через Pandas (там есть такая возможность)
• SQL: подзапросы, CTE, сложные запросы, все типы оконок (агрегирующие - маст хэв) [ ранжирующие, смещения ] - обязательно потрогать и понять назначение, все джоины и порядок выполнения операторов, индексы
• По возможности парочку пару пет проектов на гитхабе с полным цикла анализа данных (Очистка, заполнение, обработка данных - тот же parse dates, визуализация, создание новых фич, label encoding, one hot encoding)
• Юнит экономика (понимание различных метрик в разных сферах)
• Шарить за колоночные бд, PySpark, HDFS
3. Мое мнение о стажировках
Если честно это очень щекотливая тема, я считаю пробоваться - стоит всегда. Но делать ставку только на них - не стоит. Вот куча других каналов как можно попасть на работу
• Подаваться на джуновские вакансии (от вас не убудет, а если хоть одна компания ответит из 20, это реальная возможность)
• Писать на почту самим в небольшие компании
• Мониторить чатики по типу: Джуниор вакансии
• Качать нетворкинг, просить знакомых рекомендовать вас в стажерские / джуновские позиции.
Вторую часть ответов на интересеные вопросы вы можете увидеть на канале Ани которая уже 5 лет работает в аналитике и помогает развивать ее в компании недвижимости М2
1. У меня нет высшего технического образования. Это будет проблемой, нужна ли она вообще?
• Критически - не важна.
• Но для многих HR это важный поинт, если вы залетаете в IT специальность.
• У меня лично специальность Информационая Безопасность
Могу сказать что например экономисты вообще норм заходят в аналитику из-за понимания юнит экономики.
2. Как долго готовиться к собесам?
В зависимости от того, насколько хорошо вы знаете ту или иную предметную область.
В интернете куча роадмэпов по всем направлениям, но вот мой стартер пак для начинающих:
• Leetcode 30 первых задачек уровня easy по алгоритмам Python
• Leetcode 30 первых задачек по SQL + Обязательное решение не только на [ MySQL | PostreSQL ], но и решить эти задачки через Pandas (там есть такая возможность)
• SQL: подзапросы, CTE, сложные запросы, все типы оконок (агрегирующие - маст хэв) [ ранжирующие, смещения ] - обязательно потрогать и понять назначение, все джоины и порядок выполнения операторов, индексы
• По возможности парочку пару пет проектов на гитхабе с полным цикла анализа данных (Очистка, заполнение, обработка данных - тот же parse dates, визуализация, создание новых фич, label encoding, one hot encoding)
• Юнит экономика (понимание различных метрик в разных сферах)
• Шарить за колоночные бд, PySpark, HDFS
Крайне рекомендую использовать для подготовки бот Ани @DataismPrepBot, которым пользуюсь сам
Там собраны все необходимые темы для подготовки в виде квиза. Очень крутой интерфейс с гибкой настройкой тем под вас!
Еще важный поинт:
Половина из того, что я рекомендовал может и не понадобиться как и куча рекомендаций других людей, все зависит от собеседования и компании куда устраиваетесь.
Ничто не может претендовать на истину в первой инстанции
3. Мое мнение о стажировках
Если честно это очень щекотливая тема, я считаю пробоваться - стоит всегда. Но делать ставку только на них - не стоит. Вот куча других каналов как можно попасть на работу
• Подаваться на джуновские вакансии (от вас не убудет, а если хоть одна компания ответит из 20, это реальная возможность)
• Писать на почту самим в небольшие компании
• Мониторить чатики по типу: Джуниор вакансии
• Качать нетворкинг, просить знакомых рекомендовать вас в стажерские / джуновские позиции.
Сразу отвечу на вопрос: откуда брать знакомых?
• Вы можете обратиться ко мне и я вас порекомендую на доступные вакансии в МТС, не бойтесь стучаться в личку
Вторую часть ответов на интересеные вопросы вы можете увидеть на канале Ани которая уже 5 лет работает в аналитике и помогает развивать ее в компании недвижимости М2
Telegram
Dataism
Бот для подготовки к IT-собесам @DataismPrepBot 📲
Недушный канал про аналитику, карьеру в IT и немного португальского лайфстайла.
Полезно аналитикам, дата-сатанистам и продактам.
Недушный канал про аналитику, карьеру в IT и немного португальского лайфстайла.
Полезно аналитикам, дата-сатанистам и продактам.
❤23👍7⚡3❤🔥2🔥2🤩1
Сравнение синтаксиса [ Pandas | Polars | PySpark] ч.2
Ранее на канале мы уже сравнивали синтаксис этих инструментов:
Сегодня посмотрим на более продвинутые методы в данных инструментах
Ранее на канале мы уже сравнивали синтаксис этих инструментов:
Сегодня посмотрим на более продвинутые методы в данных инструментах
👍9❤6⚡2❤🔥1
Шардирование и партиционирование
Оооочень часто эти понятия путают. Давайте разберемся, в чем же отличие!
Партиционирование - это процесс разделения одной таблицы на логические части. Например, если у вас есть данные за несколько лет, вы можете разбить их по годам или месяцам. При этом партиции остаются частью одной таблицы и хранятся в одном хранилище данных. Партиционирование помогает оптимизировать запросы, так как вместо того, чтобы просматривать всю таблицу, система работает только с нужной партицией.
Шардирование - это разделение данных между разными серверами (или базами данных). Каждый шард хранит часть данных, и вместе они образуют полное хранилище. Это позволяет горизонтально масштабировать систему — при увеличении объема данных можно добавлять новые шарды и распределять нагрузку между ними.
В чем разница?
• Партиционирование — это способ оптимизации внутри одного хранилища данных, когда данные делятся на части, но остаются в одной таблице.
• Шардирование — это распределение данных между разными физическими серверами, чтобы избежать перегрузки одного сервера при большом объеме данных.
Закрепим:
Шардирование обычно используется в масштабируемых системах с большими объемами данных, тогда как партиционирование чаще применяется для оптимизации запросов в одной базе.
Оооочень часто эти понятия путают. Давайте разберемся, в чем же отличие!
Партиционирование - это процесс разделения одной таблицы на логические части. Например, если у вас есть данные за несколько лет, вы можете разбить их по годам или месяцам. При этом партиции остаются частью одной таблицы и хранятся в одном хранилище данных. Партиционирование помогает оптимизировать запросы, так как вместо того, чтобы просматривать всю таблицу, система работает только с нужной партицией.
Шардирование - это разделение данных между разными серверами (или базами данных). Каждый шард хранит часть данных, и вместе они образуют полное хранилище. Это позволяет горизонтально масштабировать систему — при увеличении объема данных можно добавлять новые шарды и распределять нагрузку между ними.
В чем разница?
• Партиционирование — это способ оптимизации внутри одного хранилища данных, когда данные делятся на части, но остаются в одной таблице.
• Шардирование — это распределение данных между разными физическими серверами, чтобы избежать перегрузки одного сервера при большом объеме данных.
Закрепим:
Шардирование обычно используется в масштабируемых системах с большими объемами данных, тогда как партиционирование чаще применяется для оптимизации запросов в одной базе.
👍22❤4🔥1