«Это 9-й день моего участия в первом испытании обновлений 2022 года. Подробную информацию о мероприятии см.:Вызов первого обновления 2022 г."
Всем привет, я ~
5 часов, чтобы открыть дверь Spark, а во второй час я покажу вам, как построить среду разработки.
Есть два основных шага,
- Установка Спарка
- Построение среды Scala
Хватит болтать, вперед!
Установка Спарка
Spark написан на основе языка Scala и должен работать на JVM, а операционная среда — Java 7 или выше В этой статье используются Java 8 и Centos 7.
Также можно использовать Python, но в этом руководстве он подробно не рассматривается.
1. Загрузите искру
Я использую сервер Tencent Cloud.Также студенты, у которых его нет, могут использовать виртуальную машину.Я не буду вдаваться в подробности, как установить виртуальную машину на Win и Mac.На CSDN есть много туториалов. , которые относительно просты.
ЗапомниНастройка переменных среды JavaОй!
первое использованиеwget
Загрузите установочный пакет (вы также можете загрузить его после загрузки локально)
cd /data/opt/spark
wget --no-check-certificate https://downloads.apache.org/spark/spark-3.2.0/spark-3.2.0-bin-hadoop3.2.tgz
Разархивируйте после завершения загрузки
Вы можете изменить имя на более короткое, а номер версии лучше сохранить
tar -zxf spark-3.2.0-bin-hadoop3.2.gz
2. Введение в каталог Spark
Вы можете войти в него и посмотреть
- bin: в основном хранит некоторые исполняемые файлы.
- потоковая передача, python, R, jars: в основном хранят исходный код компонента.
- примеры: Сохраните несколько исполняемых случаев Spark Job на одном компьютере.
- conf: хранить файлы конфигурации.
- данные: хранить файлы данных.
- sbin: Хранит сценарии sh.
3. Запустите искру
Входитьsbin
каталог, выполнить./start-master.sh
документ.
По выходным данным найти лог.
Просмотр журналов
Получите доступ к веб-странице, если это сервер, не забудьте открыть соответствующий порт.
хорошо, запуск удался!
3.Spark Shell
Spark-Shell — это простой способ изучения API и интерактивного анализа данных. Он может загружать данные, распределенные в кластере, в узлы памяти, так что распределенная обработка может быть завершена за считанные секунды.
Быстрые запросы, расчеты и анализ в режиме реального времени обычно выполняются в Shell.
Поэтому, чтобы изучить разработку программ Spark, рекомендуется сначала изучить интерактивное обучение Spark-Shell, чтобы углубить свое понимание разработки программ Spark.
Spark предоставляет Python Shell и Scala Shell.В этом курсе используется Scala.
иди вbin
каталог, выполнитьspark-shell
cd bin
./spark-shell
хорошо, чтобы иметь хорошее представление о Spark-Shell, попробуйте пример:Читать файл и считать строки
Сначала создайте тестовый файл, основная операция Linux
hello scala!
hello spark!
hello world!
Назад в Шелл
Сначала прочитайте файл, а затем посчитайте строки
var lines=sc.textFile("../../file/test")
// 总行数
lines.count()
// 第一行
lines.first()
Результат выглядит следующим образом:
На этом установка Spark завершена, студенты могут столкнуться с проблемой, каждый раз писать код слишком хлопотно, разве это не похоже на код Java?
Конечно, можно, я научу вас настраивать плагин Scala для IDEA.
IDEA интегрирует плагин Scala
IDEA считает, что ею пользовались все, поэтому процесс установки и взлома повторять не буду.
1. Установите плагин
существуетsettings
Плагин Scala будет устанавливаться медленно в соответствии с примером на картинке. После успешной установки IDEA необходимо перезапустить.
2. Создайте проект Maven
Как показано на рисунке, создайте новый проект Maven, назовите его и назовитеspark-wordcount
импортировать зависимости
<dependencies>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.12</artifactId>
<version>3.2.0</version>
</dependency>
</dependencies>
После того, как мы напишем программу, мы должны поставить ее на сервер для запуска, как и Java, поэтому нам также нужно настроить параметры упаковки.
<build>
<plugins>
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.2</version>
<executions>
<execution>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<id>make-assembly</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Если после перезагрузки проблем нет, наш проект создан.
Создайте новый класс нижеWordCount
Обратите внимание на класс Scala, затем выберите «Объект».
Напишите еще один метод main в качестве точки входа в программу, который имеет много общего с Java.
распечатать тест
object WordCount {
def main(args: Array[String]): Unit = {
print("hello world!")
}
}
выходной результат
Ок, среда разработки настроена.
Наконец
На этом вводное содержание на сегодня закончилось. Оно более практичное. Студенты должны работать с ним самостоятельно. На следующем уроке я познакомлю вас с классическим случаем ввода больших данных — WordCount.