Как начать работу с Databricks

1656634819 kak nachat rabotu s databricks

от Shubhi Asthana

Когда я начал изучать Spark с помощью Pyspark, я наткнулся на платформу Databricks и исследовал ее. Эта платформа облегчила настройку среды для запуска фреймов данных Spark и практики кодирования. Эта публикация содержит некоторые шаги, которые помогут вам начать работу с Databricks.

Databricks – это платформа, работающая на основе Apache Spark. В нем удобно настроить систему ноутбука. Можно легко создать кластеры в облаке, а также встроенное рабочее пространство для исследования и визуализации.

Вы также можете запланировать любой существующий блокнот или локально разработанный Spark код для перехода от прототипа к производству без реинжиниринга.

1. Настройте аккаунт Databricks

Чтобы начать работу с учебником, перейдите по этой ссылке и выберите бесплатную версию сообщества, чтобы открыть аккаунт. Этот вариант имеет один кластер из до 6 ГБ свободного хранилища. Это позволяет создать базовый блокнот. Для подтверждения аккаунта вам понадобится действительный адрес электронной почты.

Вы увидите этот экран, когда вы войдете в свой аккаунт.

T5Id1J2mYNuzdylVfh7qdQEGTJ2z9rSPNgNJ

2. Создание нового кластера

Мы начинаем с создания нового кластера для запуска наших программ. Щелкните «Кластер» на главной странице и введите новое название для кластера.

Далее вам нужно выбрать версию «Databricks Runtime». Databricks Runtime – это набор основных компонентов, работающих в кластерах, управляемых Databricks. Он включает в себя Apache Spark, но также добавляет ряд компонентов и обновлений для улучшения удобства использования и производительности инструмента.

Вы можете выбрать любую версию Databricks Runtime – я выбрал 3.5 LTS (включает Apache Spark 2.2.1, Scala 2.11). У вас также есть выбор между Python 2 и 3.

TiwHYkwFNaPIngJIbuEKzYz0uXmCrrS9JjPK

Создание кластера займет несколько минут. Через некоторое время вы можете увидеть на информационной панели активный кластер.

zgpWHAUlMLLmbLVzqs4i771NHXnJiUCeRKBx

3. Создание нового блокнота

Давайте создадим новый блокнот, на котором вы можете запускать свою программу.

На главной странице нажмите кнопку «Новый блокнот» и введите название блокнота. Выберите язык по своему выбору – здесь я выбрал Python. Вы видите, что Databricks поддерживает несколько языков, включая Scala, R и SQL.

wScJ0OtrJQ7kOxB55xI61KKMMaiNFqN6HE-Z

После ввода деталей вы увидите, что макет блокнота очень похож на блокнот Юпитера. Чтобы протестировать блокнот, давайте импортируем pyspark.

rHGMB336-8ZgsSsU74gVkwXaWUUuOqOvQyLH

Команда выполняется за 0,15 секунд, а также дает название кластера, на котором она выполняется. Если в коде есть ошибки, они будут отображаться под полем cmd.

Нажмите значок клавиатуры в правом верхнем углу страницы, чтобы увидеть ярлыки операционной системы.

Важнейшие ярлыки здесь:

  • Shift+Enter для запуска клетки
  • Ctrl+Enter продолжает запускать ту же ячейку без перехода к следующей ячейке

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

4. Загрузка данных в Databricks

Выделите раздел «Таблицы» на левой панели и нажмите «Создать таблицу». Вы можете загрузить файл или подключиться к источнику данных Spark или другой базе данных.

Давайте загрузим сюда файл набора данных радужки, который обычно используется (если у вас нет набора данных, воспользуйтесь этой ссылкой)

После загрузки данных создайте таблицу с пользовательским интерфейсом, чтобы вы могли визуализировать таблицу и просмотреть ее на своем кластере. Как видите, вы можете следить за атрибутами таблицы. Spark попытается определить тип данных каждого столбца и позволит вам редактировать его.

nluVnzMiIciV8XZYf8Nn8UTCvViBPGdgL4iX

Теперь мне нужно разместить заголовки для столбцов, чтобы я мог идентифицировать каждый столбец по их заголовку _c0, _c1 и так дальше.

Я поставил их заголовки как Длина чашелистика, Ширина чашелистика, Длина лепестка, Ширина лепестка и Класс. Здесь Spark неправильно обнаружил тип данных первых четырех столбцов как String, поэтому я сменил его нужным типом данных — Float.

dkATzKU4XJHtvVHWqdKXRYiLImxALzBQYQJC

5. Как получить доступ к данным из Блокнота

Spark – это платформа, которую можно использовать для анализа больших данных с помощью SQL, машинного обучения, обработки графиков или потокового анализа в реальном времени. В этом руководстве мы будем работать со SparkSQL и Dataframes.

Начнём работу с данными в Блокноте. Данные, которые мы скачали, теперь содержатся в табличном формате. Нам требуется SQL-запрос, чтобы прочитать данные и поместить их в кадр данных.

Тип df = sqlContext.sql(“SELECT * FROM iris_data”) для чтения данных радужки глаза в кадр данных.

yBMfdLYAfxCopo30gJIXKlcUbqMwDbaEOnTi

Чтобы просмотреть первые пять строк в кадре данных, я могу просто выполнить команду:

display(df.limit(5))

r5DtlOuE64Pyt6w8ar--LIVyW2uTsPcAzTNU

Обратите внимание на гистограмму значок внизу. После нажатия вы сможете просмотреть данные, импортируемые в Databricks. Чтобы просмотреть гистограмму полных данных, запуститеdisplay(df) вместо display(df.limit(5)).

ERVu7Dpv3jYJUO4RbnWCbeK1hrDA9-lET7HV

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

oD6ZqA4Mfxa162PzDkM4l6-ziVMBvAT12k47

Вы также можете отображать фигуры matplotlib и ggplot в Databricks. Для демонстрации просмотрите Matplotlib и ggplot в Блокнотах Python.

Для просмотра всех столбцов данных просто введите df.columns

PBHqV97bqMjJNXnYsaPj4rgcwnAoDEtWTR4u

Чтобы подсчитать общее количество строк в Dataframe (и увидеть, сколько времени требуется для полного сканирования с удаленного диска/S3), запустите df.count().

Eu2ZtzIYJCXkakliIgs9QsBD4oeFT61BMdkP

6. Преобразование фрейма данных Spark в фрейм данных Pandas.

Теперь, если вам удобно использовать фреймы данных pandas и вы хотите превратить ваш фрейм данных Spark в pandas, вы можете сделать это, поставив команду

import pandas as pdpandas_df=df.to_pandas()

Теперь вы можете использовать операции pandas на pandas_df кадр данных.

PXuhlDuKFERt9tG3nHsgecOJE0UWm5c11GG-

7. Просмотр пользовательского интерфейса Spark

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

Чтобы перейти к пользовательскому интерфейсу Spark, вам нужно перейти к верхней части страницы, где есть такие параметры меню, как «Файл», «Просмотр», «Код», «Разрешения» и другие. Вы найдете название кластера вверху рядом с «Прикреплено» и кнопку раскрывающегося меню рядом с ним. Нажмите кнопку раскрывающегося меню и выберите «Просмотр интерфейса Spark». Откроется новая вкладка с большим количеством информации о вашем блокноте.

CR65Njc5eSEyIzGoE5uHCkz6onnOHyiSubNE

Просмотр пользовательского интерфейса предоставляет много информации о каждой задаче, выполненной в кластере, этапах, среде и выполненных запросах SQL. Этот пользовательский интерфейс может быть полезным пользователям для настройки своих программ. Кроме того, этот пользовательский интерфейс дает хорошую визуализацию статистики потоковой передачи Spark. Чтобы узнать больше о каждом аспекте интерфейса Spark, перейдите по этой ссылке.

Закончив работу с блокнотом, вы можете опубликовать его или экспортировать файл в разных форматах, чтобы кто-то другой мог использовать его по уникальной ссылке. Я включил свой блокнот в формате HTML.

Подведению

Это краткий обзор того, как можно быстро начать работу с Databricks и запускать свои программы. Преимущество использования Databricks в том, что он предлагает сквозной сервис для создания программ аналитики, хранилищ данных и машинного обучения. Всем кластером Spark можно управлять, контролировать и защищать с помощью модели самообслуживания Databricks.

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *