Apache Spark – это распределенная система обработки данных с открытым исходным кодом, обычно используемая для работы с большими данными. Apache Spark использует кэширование в памяти и оптимизированное выполнение для высокого быстродействия, а также поддерживает общую пакетную обработку, аналитику потоков, машинное обучение, графовые базы данных и спонтанные запросы.

Сервис Amazon EMR обеспечивает нативную поддержку Apache Spark на платформе Hadoop YARN, что позволяет быстро и просто создавать управляемые кластеры Apache Spark через Консоль управления AWS, интерфейс командной строки AWS или API Amazon EMR. Можно также использовать дополнительные возможности Amazon EMR, в том числе быстрое соединение с Amazon S3 благодаря файловой системе EMR (EMRFS), интеграцию с рынком спотовых инстансов Amazon EC2 и команды добавления или удаления инстансов для легкого изменения размера кластера. Кроме того, можно использовать Apache Zeppelin, чтобы создавать интерактивные и совместные блокноты для просмотра данных с помощью Apache Spark.

Используя механизм выполнения типа «направленный ациклический граф» (DAG), Apache Spark может создавать эффективные планы запросов на преобразование данных. Apache Spark также сохраняет в памяти входные, выходные и промежуточные данные в виде отказоустойчивых распределенных наборов данных (RDD), чем обеспечивается быстрая обработка без затрат ввода/вывода, а также повышается производительность повторяющихся или интерактивных нагрузок.

Apache Spark по умолчанию поддерживает Java, Scala и Python, так что вы можете выбрать язык для написания приложений. Можно также отправлять в Apache Spark запросы SQL или HiveQL, используя модуль Spark SQL. Помимо запуска приложений, вы можете использовать API Apache Spark совместно с Python или Scala прямо в оболочке Apache Spark в своем кластере. Дополнительно вы можете использовать Zeppelin, чтобы создавать интерактивные и совместные блокноты для просмотра и визуализации данных.

Apache Spark включает несколько библиотек, помогающих создавать приложения для машинного обучения (MLlib), обработки потоков (Spark Streaming) и графов (GraphX). Эти библиотеки тесно интегрированы с семейством инструментов Apache Spark и могут использоваться во множестве примеров использования как готовые инструменты.

Запускайте задачи Apache Spark с помощью API Step в сервисе Amazon EMR, используйте Apache Spark вместе с файловой системой EMRFS для прямого доступа к данным в Amazon S3, снижайте затраты благодаря спотовым ресурсам EC2 и запускайте продолжительные или краткосрочные кластеры, соответствующие рабочей нагрузке. Сервис Amazon EMR устанавливает систему Apache Spark на платформе Hadoop YARN и управляет ею, к тому же вы можете добавлять в свой кластер другие приложения семейства Hadoop. Нажмите здесь, чтобы получить дополнительные сведения о возможностях сервиса Amazon EMR.


Yelp

Группа по целевой рекламе компании Yelp создает прогнозирующие модели, стараясь определить вероятность реакции пользователя на рекламное сообщение. Используя систему Apache Spark в Amazon EMR для обработки больших объемов данных и тренировки моделей машинного обучения, специалисты Yelp повысили прибыль и процент переходов по рекламным ссылкам.

The Washington Post

The Washington Post использует Apache Spark в Amazon EMR для построения на сайте газеты моделей работы рекомендательных систем, призванных повысить степень вовлеченности и удовлетворенности читателей.Они используют скоростное соединение между сервисами Amazon EMR и Amazon S3 для обновления моделей в режиме, близком к реальному времени.

Intent Media

Компания Intent Media владеет платформой для размещения рекламы на коммерческих туристических сайтах. Группа специалистов по данным с помощью Apache Spark и MLlib в Amazon EMR ежедневно собирает терабайты данных интернет-коммерции и использует эту информацию в работе своих сервисов принятия решений, чтобы повысить прибыль клиентов. Подробнее см. по ссылке.

Krux

С помощью системы Apache Spark компания Krux задействует множество процессов машинного обучения и общей обработки данных как часть своей платформы управления данными, призванной помочь в понимании потребностей клиентов. Для снижения затрат компания Krux использует краткосрочные кластеры Amazon EMR из спотовых ресурсов Amazon EC2, а также сервис Amazon S3 с файловой системой EMRFS в качестве уровня хранения данных для Apache Spark.

Подробнее >>

GumGum

Платформа GumGum, предлагающая размещение рекламы с использованием технологий «in-image» и «in-screen», использует Spark в Amazon EMR для прогнозного учета ресурсов, обработки журналов истории посещений и быстрого анализа неструктурированных данных в Amazon S3. Повышение производительности этих рабочих нагрузок благодаря Spark позволило компании GumGum сэкономить время и деньги.

Подробнее >>

Hearst Corporation

Hearst Corporation, крупная компания, владеющая различными СМИ и медиаресурсами, предоставляет клиентам для просмотра контент более чем на 200 веб-сайтах. Благодаря Apache Spark Streaming в Amazon EMR сотрудники редакции компании Hearst могут в режиме реального времени отслеживать, какие статьи вызывают положительный отклик и какие темы наиболее популярны.

CrowdStrike

Компания CrowdStrike занимается защитой адресов серверов от несанкционированного доступа. Ее специалисты используют сервис Amazon EMR с системой Spark, чтобы обрабатывать терабайты данных о событиях и преобразовывать их в более сложное поведенческое описание действий, производимых на хостах. На основании этих данных компания CrowdStrike может сформировать обобщенные данные о событиях и выявить вредоносную активность.

Подробнее >>


Сбор и обработка данных в режиме реального времени из Amazon Kinesis, Apache Kafka и других потоков с помощью расширения Spark Streaming в Amazon EMR. Отказоустойчивые методы анализа потоковых данных и запись результатов в Amazon S3 или файловую систему HDFS на кластере.

 

Apache Spark в Amazon EMR содержит библиотеку MLlib с множеством масштабируемых алгоритмов машинного обучения, а также позволяет использовать собственные библиотеки. Сохраняя наборы данных в памяти во время выполнения задачи, Spark повышает производительность повторяющихся запросов, которые часто встречаются в процессе машинного обучения.

Используйте Spark SQL для интерактивных запросов SQL или HiveQL с низкой задержкой. Apache Spark в Amazon EMR может использовать файловую систему EMRFS, обеспечивая возможность спонтанного доступа к пакетам данных в Amazon S3. Кроме того, можно использовать блокноты Zeppelin или инструменты BI через соединения ODBC или JDBC.