Поделиться через


Apache Spark в Azure Databricks

В этой статье описывается, как Apache Spark связан с Azure Databricks и платформой аналитики данных Databricks.

Apache Spark находится в центре платформы Azure Databricks и является технологией вычислительных кластеров и хранилищ SQL. Azure Databricks — это оптимизированная платформа для Apache Spark, обеспечивающая эффективную и простую платформу для выполнения рабочих нагрузок Apache Spark.

преобразования и действия Spark

В Apache Spark все операции определяются как преобразования или действия.

  • Преобразования: добавьте в план некоторую логику обработки. Примеры включают чтение данных, соединение данных, агрегацию и приведение типов.
  • Действия: активация логики обработки для оценки и вывода результата. Примеры включают запись, отображение или просмотр результатов, кэширование вручную или получение количества строк.

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

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

Что такое связь Apache Spark с Azure Databricks?

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

Databricks продолжает разрабатывать и выпускать функции в Apache Spark. Среда выполнения Databricks включает дополнительные оптимизации и собственные функции, которые создают и расширяют Apache Spark, включая Photon, оптимизированную версию Apache Spark, перезаписываемую в C++.

Как Apache Spark работает в Azure Databricks?

При развертывании вычислительного кластера или хранилища SQL в Azure Databricks Apache Spark настраивается и развертывается на виртуальных машинах. Вам не нужно настраивать или инициализировать контекст Spark или сеанс Spark, так как их управление берёт на себя Azure Databricks.

Можно ли использовать Azure Databricks без использования Apache Spark?

Azure Databricks поддерживает различные рабочие нагрузки и включает открытый код библиотеки в среде выполнения Databricks. Databricks SQL использует Apache Spark под капотом, но конечные пользователи используют стандартный синтаксис SQL для создания и запроса объектов базы данных.

Среда выполнения Databricks для машинного обучения оптимизирована для рабочих нагрузок ML, и многие специалисты по обработке и анализу данных используют основные библиотеки с открытым исходным кодом, такие как TensorFlow и Scikit-Learn, при работе с Azure Databricks. Вы можете использовать задания для планирования произвольных нагрузок на вычислительные ресурсы, которые развертываются и управляются Azure Databricks.

Зачем использовать Apache Spark в Azure Databricks?

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

Как узнать больше об использовании Apache Spark в Azure Databricks?

Чтобы приступить к работе с Apache Spark в Azure Databricks, начните прямо сейчас! Руководство по Apache Spark DataFrames описывает загрузку и преобразование данных в Python, R или Scala. См. руководство: Загрузка и преобразование данных с помощью DataFrames Apache Spark.

Дополнительные сведения о поддержке языка Python, R и Scala в Spark приведены в разделе PySpark в Azure Databricks, обзоре SparkR и разделах Azure Databricks для разработчиков Scala, а также в справочнике по API Apache Spark.