Статьи

IntelliJ Scala и Apache Spark — ну, теперь вы знаете

Обзор установки IntelliJ Scala и Spark

В этой статье мы рассмотрим один из способов настройки IntelliJ для разработки в Scala и Spark. Комбинация IntelliJ Scala — лучшая бесплатная установка для разработки Scala и Spark. И я ничего не имею против ScalaIDE (Eclipse для Scala) или использования таких редакторов, как Sublime. Я перешел с Eclipse несколько лет назад и не оглядывался назад. Я также искренне пытался следовать предложению Pragmatic Programmer об использовании одного редактора (IDE), но я продолжаю возвращаться к IntelliJ при разработке на основе JVM.

Но вы, вероятно, не особо заботитесь обо всей моей истории. Давайте вернемся к вам. Вы здесь, чтобы настроить IntelliJ со Scala и, надеюсь, использовать его со Spark, верно?

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

Предположения

Я собираюсь сделать предположения о вас в этом посте.

  1. Вы не новичок в программировании и компьютерах. Вы знаете, как загрузить и установить программное обеспечение.
  2. Возможно, вам придется обновить эти инструкции для вашей среды. YMMV. Я не собираюсь раскрывать все нюансы между Linux, OS X и Windows. И нет, я не собираюсь рассказывать о SunOS против Solaris для вас, старожилов, как я.
  3. Вы будете говорить, если у вас есть вопросы или предложения о том, как улучшить. Там должно быть раздел комментариев в нижней части этого поста.
  4. Вы довольно хороший человек, который ценит различные форматы шуток время от времени.

Если у вас есть какие-либо проблемы или проблемы с этими предположениями, пожалуйста, оставьте сейчас. Это будет лучше для нас обоих.

Предварительные условия (AKA: требования к вашей среде)

  • Java 8 установлена
  • IntelliJ Community Edition Загрузил https://www.jetbrains.com/idea/download/ и извлек (разархивировал, не зацепил, взорвал, как бы вы это ни называли.)

Шаги конфигурации (AKA: ndale arriba arriba)

  1. Запустите IntelliJ впервые
  2. Установите плагин Scala
  3. Создать новый проект для разработки Scala Spark
  4. Скала Smoketest. Создайте и запустите программу Scala HelloMundo
  5. Scala Spark Smoketest. Создать и запустить программу Scala Spark
  6. Ешь, пей и веселись

Хорошо пойдем.

1. Запустите IntelliJ впервые

Вы впервые используете IntelliJ? Если так, начните здесь. В противном случае перейдите к # 2.

Когда вы запускаете IntelliJ в первый раз, он проведет вас через серию экранов, похожих на следующие.

11

12

14

В какой-то момент вас спросят, хотите ли вы установить плагин Scala с экрана «Популярные» плагинов, например:

13

Сделай это. Нажмите Установить, чтобы установить плагин Scala.

2. Установите плагин Scala

Если это не первый раз, когда вы запустили IntelliJ и у вас не установлен плагин Scala, оставайтесь здесь. Чтобы установить плагин Scala, вы увидите скриншот, как это сделать с Mac. (Примечание: он у меня уже установлен, поэтому вам нужно поставить галочку)

3. Создать новый проект для разработки Scala Spark

Хорошо, мы хотим создать очень простой проект, чтобы убедиться, что мы на правильном пути. Вот скринкаст о том, что я на правильном курсе для проектов Scala Intellij

4. Создайте и запустите программу Scala HelloMundo

Ну, здесь нечего видеть. Сделайте перерыв, если хотите. Мы на полпути домой. Смотрите скринкаст в предыдущем шаге. Вот и все, потому что мы уже запустили код HelloMundo в этом скринкасте.

5. Создайте и запустите программу Scala Spark

Давайте создадим еще один объект Scala и добавим к нему несколько вызовов Spark API. Опять же, давайте сделаем это как можно проще (принцип AKA: KISS), чтобы убедиться, что мы на правильном пути. На этом шаге мы создаем новый объект Scala и импортируем файлы Spark в виде библиотечных зависимостей в IntelliJ. Все не работает идеально, поэтому посмотрите, как решить эту проблему в видео. О-о-о, мы говорим здесь о большой драме, люди. Оставайтесь на линии.

Вот скринкаст

Удивил ли я Scala 2.11 против Scala 2.10 snafu? Я не хочу связываться с тобой. Просто стараюсь, чтобы это было интересно. Посмотрите другие учебники Spark на этом сайте или курс Spark with Scala, где я более подробно расскажу об этом довольно распространенном сценарии. Это сообщение о Intellij Scala и Spark.

Обратите внимание, как я показываю, что у меня работает автономный кластер Spark. Чтобы этот пример Spark Scala работал правильно, он должен быть запущен. См. Автономный кластер Spark, если вам нужна помощь с этой настройкой.

Код для программы Scala Spark

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
import org.apache.spark.SparkContext
import org.apache.spark.SparkConf
  
/**
  * Created by toddmcgrath on 6/15/16.
  */
object SimpleScalaSpark {
  
  def main(args: Array[String]) {
    val logFile = "/Users/toddmcgrath/Development/spark-1.6.1-bin-hadoop2.4/README.md" // Should be some file on your system
    val conf = new SparkConf().setAppName("Simple Application").setMaster("local[*]")
    val sc = new SparkContext(conf)
    val logData = sc.textFile(logFile, 2).cache()
    val numAs = logData.filter(line => line.contains("a")).count()
    val numBs = logData.filter(line => line.contains("b")).count()
    println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
  }
  
}

6. Заключение (AKA: есть, пить и веселиться)

Вы сейчас настроены. Следующим шагом для вас может быть добавление SBT в микс. Но сейчас давайте просто наслаждаться этим моментом. Вы только что завершили Spark со Scala в IntelliJ.

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

Ссылка: IntelliJ Scala и Apache Spark — ну, теперь вы знаете от нашего партнера по JCG Тодда МакГрата в блоге Supergloo .