0 added
0 removed
Original
2026-01-01
Modified
2026-03-10
1
<p><strong>Apache Spark</strong> - целостная вычислительная система, включающая в себя набор библиотек для параллельной обработки данных на кластерах компьютеров. Сегодня это активно разрабатываемый и очень полезный инструмент с открытым исходным кодом, который пригодится специалистам, работающим с большими данными. В этой статье мы рассмотрим, почему стоит использовать именно Spark.</p>
1
<p><strong>Apache Spark</strong> - целостная вычислительная система, включающая в себя набор библиотек для параллельной обработки данных на кластерах компьютеров. Сегодня это активно разрабатываемый и очень полезный инструмент с открытым исходным кодом, который пригодится специалистам, работающим с большими данными. В этой статье мы рассмотрим, почему стоит использовать именно Spark.</p>
2
<p>Spark поддерживает популярные языки программирования (Python, Java, Scala, R) и состоит из ядра и нескольких расширений: -<strong>Spark SQL</strong>(позволяет выполнять над данными SQL-запросы); -<strong>Spark Streaming</strong>(надстройка для обработки потоковых данных); -<strong>Spark MLlib</strong>(набор ML-библиотек); -<strong>GraphX</strong>(для распределённой обработки графов).</p>
2
<p>Spark поддерживает популярные языки программирования (Python, Java, Scala, R) и состоит из ядра и нескольких расширений: -<strong>Spark SQL</strong>(позволяет выполнять над данными SQL-запросы); -<strong>Spark Streaming</strong>(надстройка для обработки потоковых данных); -<strong>Spark MLlib</strong>(набор ML-библиотек); -<strong>GraphX</strong>(для распределённой обработки графов).</p>
3
<p>Однако не только это делает его одним из лидеров в области эффективной работы с Big Data. Что же, давайте рассмотрим, почему Apache Spark входит сегодня в технологический стек многих крупных компаний:</p>
3
<p>Однако не только это делает его одним из лидеров в области эффективной работы с Big Data. Что же, давайте рассмотрим, почему Apache Spark входит сегодня в технологический стек многих крупных компаний:</p>
4
<h2>Причина № 1</h2>
4
<h2>Причина № 1</h2>
5
<p><strong>Spark - это всё-в-одном для работы с Big Data</strong>. Spark действительно создан специально для решения широкого круга задач по анализу данных. Тут и простая загрузка данных, и SQL-запросы, и машинное обучение, и потоковые вычисления - и всё это посредством одного и того же вычислительного инструмента с неизменным набором API. Такая программная многозадачность становится возможной благодаря тому, что Spark имеет целостную природу, что делает решение разноплановых задач более простым и эффективным.</p>
5
<p><strong>Spark - это всё-в-одном для работы с Big Data</strong>. Spark действительно создан специально для решения широкого круга задач по анализу данных. Тут и простая загрузка данных, и SQL-запросы, и машинное обучение, и потоковые вычисления - и всё это посредством одного и того же вычислительного инструмента с неизменным набором API. Такая программная многозадачность становится возможной благодаря тому, что Spark имеет целостную природу, что делает решение разноплановых задач более простым и эффективным.</p>
6
<p>Простой пример: когда специалист загружает данные посредством SQL-запроса, а потом оценивает ML-модель с помощью Spark ML, движок способен объединить данные этапы в один проход по данным.</p>
6
<p>Простой пример: когда специалист загружает данные посредством SQL-запроса, а потом оценивает ML-модель с помощью Spark ML, движок способен объединить данные этапы в один проход по данным.</p>
7
<h2>Причина № 2</h2>
7
<h2>Причина № 2</h2>
8
<p><strong>Для повышения эффективности вычислений Spark оптимизирует своё машинное ядро</strong>. Spark лишь управляет загрузкой данных из систем хранения, выполняя над ними вычисления, однако сам он конечным постоянным хранилищем<strong>не является</strong>.</p>
8
<p><strong>Для повышения эффективности вычислений Spark оптимизирует своё машинное ядро</strong>. Spark лишь управляет загрузкой данных из систем хранения, выполняя над ними вычисления, однако сам он конечным постоянным хранилищем<strong>не является</strong>.</p>
9
<p>Как известно, перемещать данные - дорогое удовольствие. Spark же сфокусирован<strong>только на вычислениях</strong>. Он обрабатывает данные посредством вычислительных операций, причём не имеет значения, где именно эти данные находятся. В результате, со Spark можно работать, если имеешь дело с большим разнообразием постоянных систем хранения, включая: - облачные системы (Azure Storage, Amazon S3); - распределённые файловые системы (Apache Hadoop); - пространства для хранения ключей (Apache Cassandra); - распределённые программные брокеры сообщений (Apache Kafka).</p>
9
<p>Как известно, перемещать данные - дорогое удовольствие. Spark же сфокусирован<strong>только на вычислениях</strong>. Он обрабатывает данные посредством вычислительных операций, причём не имеет значения, где именно эти данные находятся. В результате, со Spark можно работать, если имеешь дело с большим разнообразием постоянных систем хранения, включая: - облачные системы (Azure Storage, Amazon S3); - распределённые файловые системы (Apache Hadoop); - пространства для хранения ключей (Apache Cassandra); - распределённые программные брокеры сообщений (Apache Kafka).</p>
10
<p>А ещё Spark широко применяется в средах, где в архитектуре Hadoop нет смысла. К примеру, на публичном облаке (там, где можно купить хранение отдельно от обработки) либо в потоковых приложениях.</p>
10
<p>А ещё Spark широко применяется в средах, где в архитектуре Hadoop нет смысла. К примеру, на публичном облаке (там, где можно купить хранение отдельно от обработки) либо в потоковых приложениях.</p>
11
<h2>Причина № 3</h2>
11
<h2>Причина № 3</h2>
12
<p><strong>Библиотеки Spark предоставляют весьма широкую функциональность</strong> . На сегодняшний день именно стандартные Spark-библиотеки являются основной частью данного проекта. И если ядро Spark почти не менялось с момента выпуска, то<strong>количество библиотек постоянно росло</strong>в целях добавления ещё большей функциональности. В результате, Spark стал мультифункциональным инструментом анализа данных. Кроме тех библиотек, которые мы уже упомянули в начале статьи, есть и сотни открытых сторонних библиотек, начиная с работающих с коннекторами, заканчивая решениями для разнообразных систем хранения и алгоритмов Machine Learning.</p>
12
<p><strong>Библиотеки Spark предоставляют весьма широкую функциональность</strong> . На сегодняшний день именно стандартные Spark-библиотеки являются основной частью данного проекта. И если ядро Spark почти не менялось с момента выпуска, то<strong>количество библиотек постоянно росло</strong>в целях добавления ещё большей функциональности. В результате, Spark стал мультифункциональным инструментом анализа данных. Кроме тех библиотек, которые мы уже упомянули в начале статьи, есть и сотни открытых сторонних библиотек, начиная с работающих с коннекторами, заканчивая решениями для разнообразных систем хранения и алгоритмов Machine Learning.</p>
13
<p><em>Интересует Spark? Этот инструмент проходят на курсах "<a>Промышленный ML на больших данных</a>" и "<a>Экосистема Hadoop, Spark, Hiveв</a>" в OTUS.</em></p>
13
<p><em>Интересует Spark? Этот инструмент проходят на курсах "<a>Промышленный ML на больших данных</a>" и "<a>Экосистема Hadoop, Spark, Hiveв</a>" в OTUS.</em></p>
14
14