Институт системного программирования им. В.П. Иванникова РАН


Apache Spark - платформа для обработки больших данных

Большинство организаций, сталкивающихся с необходимостью обработки больших объемов данных, используют для этих целей свободные проекты экосистемы Apache Hadoop. Основой для создания Apache Hadoop послужила разработанная компанией Google парадигма параллельного программирования MapReduce. Основные достоинства MapReduce - масштабируемость, простота использования, устойчивость к сбоям. Однако реализация MapReduce в Hadoop обладает рядом недостатков, основным из которых является низкая производительность при решении итеративных алгоритмов (например, машинного обучения). Для решения этой проблемы в университете Беркли была разработана модель для организации распределенных вычислений, основанная на понятии устойчивой к сбоям распределенной коллекции данных (RDD).

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

Мы активно участвуем в разработке этих систем, а также используем их в собственных проектах, связанных с обработкой больших объемов данных ( Веб, социальные сети, генетические данные и др.)

Разработанные решения для Apache Spark:

  • spark-openstack - Скрипты для установки кластера Spark (любой версии) в любом окружении Openstack с опциональными полезными инструментами
  • pu4spark - Библиотека для обучения на основе положительных и неразмеченных примеров для Apache Spark MLlib (пакет ml). Страница библиотеки на сайте SparkPackages: https://spark-packages.org/package/ispras/pu4spark

Проекты

Исследование и разработка методов распределенной обработки больших баз графовых данных

Разработчик/участник

Информационные системы

Перейти к списку всех технологий