Добро пожаловать!
Меня зовут Мария Жарова, и это мой блог про науку о данных✨
Лайфхаки из будней MLщика, полезности по Data Science и ответы на вопросы, которые волнуют новичков и не только🌝
Автор @NaNCat
Post #219
905
Изучаем_Spark_Молниеносный_анализ_данных_by_Захария_М_,_Венделл.pdf15.7 MB
Привет, друзья!
Сегодня поговорим про Apache Spark - один из самых мощных инструментов для обработки больших данных😎
💡 Что это такое?
Apache Spark - это платформа для быстрой и распределённой работы с большими данными. Она делит их на части и параллельно обрабатывает на нескольких серверах (кластере).
💡 Чем Spark хорош?
1. Быстрота: в отличие от других традиционных систем, Spark держит данные в оперативной памяти, что позволяет выполнять цепочки преобразований в разы быстрее.
Для сравнения: многие классические SQL-базы хранят данные на диске и только частично кэшируют их в памяти для ускорения запросов.
К слову, Pandas тоже работает в памяти, как и Spark, но рассчитан на обработку только на одной машине - если данные не помещаются в память, начинаются проблемы с производительностью.
2. Распределённость и масштабируемость: упомянутую выше проблему Spark решает! Он умеет распределять данные и обработку между множеством серверов в кластере, масштабируя работу на необходимый объем ресурсов.
3. Универсальность: Spark поддерживает сразу несколько сценариев работы с данными.
Можно писать SQL-запросы (Spark SQL), строить пайплайны машинного обучения (Spark MLlib), обрабатывать потоковые данные в реальном времени (Spark Structured Streaming) и работать с графовыми структурами (Spark GraphX).
4. Поддержка нескольких языков: можно писать код на Python (через библиотеку PySpark, причём она поддерживает и синтаксис SQL), Scala, Java и R.
💡 Как писать код для Spark?
Синтаксис для Python реализован через библиотеку PySpark, он очень напоминает по логике работу с Pandas и Polars.
Данные также представлены в виде таблиц (DataFrame), а операции можно писать цепочкой методов (select, filter, groupBy и т.д.). Можно даже писать чистые SQL-запросы к таблицам.
Главное отличие: в PySpark все операции "ленивые", они накапливаются в план выполнения и запускаются только при явном запросе результата (collect, show, write).
💡 И, конечно, полезные материалы!
1. Методичка ИТМО по Spark.
2. Хорошее обучающее видео на русском.
3. Книга "Learning Spark" от O’Reilly во вложении - очень крутое введение в тему (возможно, вам удастся найти более новую версию:)).
4. Документация Databricks по PySpark (тут много базовых примеров).
5. И официальная документация PySpark.
Удачи с большими данными, друзья! 🌟
#mlops@data_easy
Сегодня поговорим про Apache Spark - один из самых мощных инструментов для обработки больших данных😎
💡 Что это такое?
Apache Spark - это платформа для быстрой и распределённой работы с большими данными. Она делит их на части и параллельно обрабатывает на нескольких серверах (кластере).
💡 Чем Spark хорош?
1. Быстрота: в отличие от других традиционных систем, Spark держит данные в оперативной памяти, что позволяет выполнять цепочки преобразований в разы быстрее.
Для сравнения: многие классические SQL-базы хранят данные на диске и только частично кэшируют их в памяти для ускорения запросов.
К слову, Pandas тоже работает в памяти, как и Spark, но рассчитан на обработку только на одной машине - если данные не помещаются в память, начинаются проблемы с производительностью.
2. Распределённость и масштабируемость: упомянутую выше проблему Spark решает! Он умеет распределять данные и обработку между множеством серверов в кластере, масштабируя работу на необходимый объем ресурсов.
3. Универсальность: Spark поддерживает сразу несколько сценариев работы с данными.
Можно писать SQL-запросы (Spark SQL), строить пайплайны машинного обучения (Spark MLlib), обрабатывать потоковые данные в реальном времени (Spark Structured Streaming) и работать с графовыми структурами (Spark GraphX).
4. Поддержка нескольких языков: можно писать код на Python (через библиотеку PySpark, причём она поддерживает и синтаксис SQL), Scala, Java и R.
💡 Как писать код для Spark?
Синтаксис для Python реализован через библиотеку PySpark, он очень напоминает по логике работу с Pandas и Polars.
Данные также представлены в виде таблиц (DataFrame), а операции можно писать цепочкой методов (select, filter, groupBy и т.д.). Можно даже писать чистые SQL-запросы к таблицам.
Главное отличие: в PySpark все операции "ленивые", они накапливаются в план выполнения и запускаются только при явном запросе результата (collect, show, write).
💡 И, конечно, полезные материалы!
1. Методичка ИТМО по Spark.
2. Хорошее обучающее видео на русском.
3. Книга "Learning Spark" от O’Reilly во вложении - очень крутое введение в тему (возможно, вам удастся найти более новую версию:)).
4. Документация Databricks по PySpark (тут много базовых примеров).
5. И официальная документация PySpark.
Удачи с большими данными, друзья! 🌟
#mlops@data_easy
- ❤ 18
- 🔥 11
- ❤🔥 7
- 👍 2
- 🐳 1









