Сравнение синтаксиса [ 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 и бОльшую часть вы уже будете знать
Практические вопросы по 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
Переходим к скринами, сначала пробуем сами решить, следующим скрином сверяемся с моим решением.
Ставим 💯 если получилось решить все, ✍️ если узнали для себя что-то новое
Взаимодействие с командой DWH
Один из важнейших навыков миддл аналитика — грамотное взаимодействие с командой DWH. Здесь подразумевается:
1. Понимание работы дата-инженера
• Вы должны понимать основные задачи и инструменты, с которыми работают дата-инженеры: ETL-процессы, структуры бд, способы оптимизации запросов.
2. Коммуникация на одном языке
• Важно уметь объяснить свои потребности на понятном команде языке и также понимать их ответ.
• Это не только упростит работу, но и поможет вам быть на одной волне с командой + снизит количество возможных недоразумений.
3. Составление четкого ТЗ для создания витрин
• Умение чётко и структурированно составить ТЗ для команды DWH — ключ к получению правильных данных.
• Хорошее ТЗ должно включать все необходимые детали: требования к данным, фильтры, формат и частоту обновления.
4. Понимание работы витрин
• Вы должны знать, как работают витрины данных: из каких источников данные собираются, как они обновляются и как их правильно использовать в аналитике.
• Это позволит не только корректно запрашивать данные, но и использовать их наиболее эффективно.
Один из важнейших навыков миддл аналитика — грамотное взаимодействие с командой DWH. Здесь подразумевается:
1. Понимание работы дата-инженера
• Вы должны понимать основные задачи и инструменты, с которыми работают дата-инженеры: ETL-процессы, структуры бд, способы оптимизации запросов.
2. Коммуникация на одном языке
• Важно уметь объяснить свои потребности на понятном команде языке и также понимать их ответ.
• Это не только упростит работу, но и поможет вам быть на одной волне с командой + снизит количество возможных недоразумений.
3. Составление четкого ТЗ для создания витрин
• Умение чётко и структурированно составить ТЗ для команды DWH — ключ к получению правильных данных.
• Хорошее ТЗ должно включать все необходимые детали: требования к данным, фильтры, формат и частоту обновления.
4. Понимание работы витрин
• Вы должны знать, как работают витрины данных: из каких источников данные собираются, как они обновляются и как их правильно использовать в аналитике.
• Это позволит не только корректно запрашивать данные, но и использовать их наиболее эффективно.
Сравнение синтаксиса [ Pandas | Polars | PySpark] ч.2
Ранее на канале мы уже сравнивали синтаксис этих инструментов:
Сегодня посмотрим на более продвинутые методы в данных инструментах
Ранее на канале мы уже сравнивали синтаксис этих инструментов:
Сегодня посмотрим на более продвинутые методы в данных инструментах
Шардирование и партиционирование
Оооочень часто эти понятия путают. Давайте разберемся, в чем же отличие!
Партиционирование - это процесс разделения одной таблицы на логические части. Например, если у вас есть данные за несколько лет, вы можете разбить их по годам или месяцам. При этом партиции остаются частью одной таблицы и хранятся в одном хранилище данных. Партиционирование помогает оптимизировать запросы, так как вместо того, чтобы просматривать всю таблицу, система работает только с нужной партицией.
Шардирование - это разделение данных между разными серверами (или базами данных). Каждый шард хранит часть данных, и вместе они образуют полное хранилище. Это позволяет горизонтально масштабировать систему — при увеличении объема данных можно добавлять новые шарды и распределять нагрузку между ними.
В чем разница?
• Партиционирование — это способ оптимизации внутри одного хранилища данных, когда данные делятся на части, но остаются в одной таблице.
• Шардирование — это распределение данных между разными физическими серверами, чтобы избежать перегрузки одного сервера при большом объеме данных.
Закрепим:
Шардирование обычно используется в масштабируемых системах с большими объемами данных, тогда как партиционирование чаще применяется для оптимизации запросов в одной базе.
Оооочень часто эти понятия путают. Давайте разберемся, в чем же отличие!
Партиционирование - это процесс разделения одной таблицы на логические части. Например, если у вас есть данные за несколько лет, вы можете разбить их по годам или месяцам. При этом партиции остаются частью одной таблицы и хранятся в одном хранилище данных. Партиционирование помогает оптимизировать запросы, так как вместо того, чтобы просматривать всю таблицу, система работает только с нужной партицией.
Шардирование - это разделение данных между разными серверами (или базами данных). Каждый шард хранит часть данных, и вместе они образуют полное хранилище. Это позволяет горизонтально масштабировать систему — при увеличении объема данных можно добавлять новые шарды и распределять нагрузку между ними.
В чем разница?
• Партиционирование — это способ оптимизации внутри одного хранилища данных, когда данные делятся на части, но остаются в одной таблице.
• Шардирование — это распределение данных между разными физическими серверами, чтобы избежать перегрузки одного сервера при большом объеме данных.
Закрепим:
Шардирование обычно используется в масштабируемых системах с большими объемами данных, тогда как партиционирование чаще применяется для оптимизации запросов в одной базе.