Ответ
Databricks — это управляемая облачная платформа, построенная вокруг Apache Spark, которая объединяет возможности для обработки данных, машинного обучения и аналитики в едином окружении (Lakehouse).
Ключевые компоненты:
-
Databricks Runtime:
- Оптимизированная версия Apache Spark с улучшениями производительности и безопасности.
- Включает встроенные библиотеки для ML (MLlib), потоковой обработки (Structured Streaming), работы с графами (GraphFrames).
-
Unity Catalog:
- Единая система управления метаданными и управления доступом (governance) для всех данных и объектов (таблицы, тома, модели) в Lakehouse.
- Позволяет централизованно назначать права (
GRANT,DENY) на уровне строк и столбцов.
-
Delta Lake:
- Открытый формат хранения поверх облачных объектных хранилищ (S3, ADLS, GCS), который привносит в Data Lakes надежность ACID-транзакций, управление схемой (
MERGE,UPDATE) и версионность (time travel). - Пример: Откат к предыдущей версии таблицы из-за ошибочного обновления.
RESTORE TABLE my_delta_table TO VERSION AS OF 10;
- Открытый формат хранения поверх облачных объектных хранилищ (S3, ADLS, GCS), который привносит в Data Lakes надежность ACID-транзакций, управление схемой (
-
Рабочее пространство (Workspace):
- Веб-интерфейс для совместной работы. Включает:
- Notebooks: Интерактивные блокноты с поддержкой Scala, Python, SQL, R.
- Repos: Интеграция с Git для управления версиями кода.
- Задачи (Jobs): Планирование и оркестрация выполнения Notebook-ов или JAR-файлов.
-
Databricks SQL:
- Выделенный сервис для выполнения SQL-запросов непосредственно к данным в Delta Lake через оптимизированный движок Photon.
- Включает редактор запросов, панели мониторинга (Dashboards) и алерты.
-
MLflow:
- Интегрированный фреймворк для управления полным жизненным циклом машинного обучения: эксперименты, логирование моделей, развертывание.
На проекте мы использовали Databricks как основную платформу для ETL/ELT-пайплайнов, трансформируя сырые JSON-логи из Kafka в очищенные аналитические таблицы Delta Lake, которые затем использовались в BI-отчетах и ML-моделях.