Skip to content

CatherineFish/SparkExploring

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SparkExploring

Несколько примеров, демонстрирующих возможности Spark.

Рассмотрены некоторые возможности трёх модулей Spark: Spark MLib, Spark SQL, Spark Streaming.

Работа с каждым модулем вынесена в отдельный объект, а конкретные примеры - функции в объекте:

├── build.sbt
├── data
│   └── libsvm_data.txt
├── project
├── src
│   ├── main
│   │   └── scala
│   │       ├── testMLib.scala
│   │       ├── testSQL.scala
│   │       └── testStreaming.scala
│   └── test
└── target

Примеры запускаются из def main, их удобнее запускать по одному, чтобы понимать, что выводится.

Подключение Spark

В файл build.sbt добавлено:

libraryDependencies ++= Seq(
  "org.apache.spark" %% "spark-core" % "3.2.0",
  "org.apache.spark" %% "spark-sql" % "3.2.0",
  "org.apache.spark" %% "spark-mllib" % "3.2.0",
)

Spark MLib

  1. CorrelationExample - подсчёт корелляционной матрицы с использованием коэффициента корелляции Пирсона и Спирмена.
  2. ChiSquareTestExample - проверка гипотез: Хи-квадрат Пирсона.
  3. PipelineExample - создание ML Pipeline.
  4. RandomForestClassifierExample - логистическая регрессия: RandomForest.

Spark SQL

  1. AddUpdateSelectExample - добавление/обновление/удаление столбцов и выполнение select.
  2. FilterExample - выполнение filter.
  3. GroupByExample - выполнение groupby.
  4. JoinExample - выполнение join.

Spark Streaming

В примере происходит подсчёт количества слов в текстовых данных, полученных от сервера, прослушивающего сокет TCP. Чтобы запустить данный пример необходимо:

  1. Запустить в отдельном терминале
$ nc -lk 9999
  1. Запустить объект testStreaming с аргументами
localhost 9999

В IntelliJ IDEA необходимо добавить аргументы в конфигурацию запуска: Run > Edit Configurations > Program arguments

About

Несколько примеров, демонстрирующих возможности Spark

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages