Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этом учебнике описываются основные шаги по загрузке и анализу данных с помощью Apache Spark для Azure Synapse.
Необходимые условия
Убедитесь, что образцы данных помещены в учетную запись основного хранилища.
Создание бессерверного пула Apache Spark
- В Synapse Studio на панели слева выберите Управление>Пулы Apache Spark.
- Выберите Создать.
- В поле Имя пула Apache Spark введите Spark1.
- В поле Размер узла введите Небольшой.
- Установите минимальное и максимальное значение 3 в поле Число узлов.
- Выберите Просмотреть и создать>Создать. Ваш пул Apache Spark будет готов через несколько секунд.
Общие сведения о бессерверных пулах Apache Spark
Бессерверный пул Spark позволяет определить для пользователя способ работы со Spark. Когда вы подключаетесь к пулу, в случае необходимости создаётся сеанс Spark. Пул управляет тем, сколько ресурсов Spark будет использоваться в этом сеансе и как долго будет длиться сеанс перед автоматической приостановкой. Вы оплачиваете ресурсы Spark, используемые во время этого сеанса, а не сам пул. Таким образом пул Spark позволяет использовать Apache Spark без управления кластерами. Это похоже на то, как работает бессерверный пул SQL.
Анализ данных такси Нью-Йорка с использованием пула Spark
Примечание.
Убедитесь, что образцы данных помещены в учетную запись основного хранилища.
В Synapse Studio перейдите в центр Разработка.
Создайте новую записную книжку.
Создайте новую ячейку кода и вставьте в нее следующий код:
%%pyspark df = spark.read.load('abfss://[email protected]/NYCTripSmall.parquet', format='parquet') display(df.limit(10))
Измените URI загрузки, чтобы он ссылался на пример файла в вашей учетной записи хранения в соответствии со схемой универсального кода ресурса (URI) abfss.
В записной книжке в меню Присоединить к выберите созданный ранее бессерверный пул Spark Spark1.
В ячейке выберите элемент Выполнить. При необходимости Synapse запустит новый сеанс Spark для выполнения этой ячейки. Если требуется новый сеанс Spark, изначально потребуется около 2–5 минут. После создания сессии выполнение ячейки займет около 2 секунд.
Если вы просто хотите просмотреть схему кадра данных, выполните ячейку со следующим кодом:
%%pyspark df.printSchema()
Загрузка данных нью-йоркского такси в базу данных Spark "nyctaxi"
Данные можно получить через кадр данных с именем df. Загрузите их в базу данных Spark с именем nyctaxi.
Добавьте в записную книжку новую ячейку для кода и введите следующий код:
%%pyspark spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi") df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
Анализ данных нью-йоркского такси с помощью Spark и записных книжек
Создайте новую ячейку кода и введите следующий код.
%%pyspark df = spark.sql("SELECT * FROM nyctaxi.trip") display(df)
Запустите ячейку, чтобы показать данные о такси Нью-Йорка, которые мы загрузили в базу данных Spark nyctaxi.
Создайте новую ячейку кода и введите следующий код. Мы проанализируем эти данные и сохраните результаты в таблице под названием nyctaxi.passengercountstats.
%%pyspark df = spark.sql(""" SELECT passenger_count, SUM(trip_distance) as SumTripDistance, AVG(trip_distance) as AvgTripDistance FROM nyctaxi.trip WHERE trip_distance > 0 AND passenger_count > 0 GROUP BY passenger_count ORDER BY passenger_count """) display(df) df.write.saveAsTable("nyctaxi.passengercountstats")
В результатах ячейки выберите пункт Диаграмма, чтобы просмотреть визуализацию данных.