Категории

Apache Spark

Apache Spark (от spark – spark, flash) е безплатна рамка с отворен код за реализиране на разпределена обработка на неструктурирани и слабо структурирани данни, част от екосистемата на проектите Apache Hadoop.

За разлика от класическата обработка на ядрото Apache Hadoop, която реализира концепцията на две нива MapReduce с дисково съхранение, тя използва специални примитиви за повтаряща се обработка в оперативната памет, което позволява да се получи значително увеличение на скоростта за някои класове задачи, по-специално възможността за многократен достъп до потребителски данни, заредени в паметта, прави библиотеката привлекателна за алгоритми за машинно обучение.

Проектът предоставя програмни интерфейси за езиците Java, Scala, Python, R. Първоначално е написана на Scala, но по-късно значителна част от кода е добавена към Java, за да позволи програми да се пишат директно на Java. Състои се от ядро и няколко разширения, като Spark SQL (позволява да се извършват SQL-заявки върху данни), Spark Streaming (добавка за обработка на поточни данни), Spark MLlib (набор от библиотеки за машинно обучение), GraphX (предназначен за обработка на разпределени графи). Той може да работи както в клъстерна среда Apache Hadoop под контрола на YARN, така и без компоненти на ядрото Apache Hadoop, поддържа няколко разпределени системи за съхранение на данни – HDFS, OpenStack Swift, NoSQL-СУБД Apache Cassandra, Amazon S3.

Основният автор, румънско-канадският информатик Матей Захария (на английски: Matei Zaharia ), започва работа по проекта през 2009 г. като аспирант в Калифорнийския университет в Бъркли. През 2010 г. проектът е публикуван под лиценза BSD, през 2013 г. е прехвърлен към фондацията Apache и прехвърлен към лиценза Apache 2.0, а през 2014 г. е приет като проект от най-високо ниво Apache.

Категории: За разработчици, За уеб разработчици, Компоненти и библиотеки, Уеб фреймворкове

Реклама