Облачное Delta Lake на Apache Spark от Databricks vs классическое озеро данных на Hadoop: 5 главных отличий

Delta Lake Databricks, курсы по Spark, архитектура, обработка данных, большие данные, Big Data, курсы Hadoop, Data Lake

Продолжая разговор про Delta Lake, сегодня мы рассмотрим, чем это быстрое облачное хранилище для больших данных в реализации компании Databricks отличается от классического озера данных (Data Lake) на Apache Hadoop HDFS. Читайте далее, как коммерческое Cloud-решение на Apache Spark облегчает профессиональную деятельность аналитиков, разработчиков и администраторов Big Data.

Больше, чем просто облачный Hadoop или Spark: преимущества Delta Lake от Databricks

Напомним, наиболее известной коммерческой реализацией open-source технологии Data Lake считается продукт международной компании Databricks [1]. Помимо архитектурных плюсов Apache Spark по сравнению с Hadoop, Databricks привнесла в концепцию облачного масштабируемого и надежного хранилища данных следующие преимущества [2]:

  • Простота администрирования. В кластерах Apache Hadoop системный менеджер ресурсов YARN управляет емкостью и согласованием заданий. При этом балансировка кластерной нагрузки предполагает довольно высокий уровень владения тонкостями конфигурирования распределенной системы для настройки баланса между потребностями нескольких пользователей с учетом емкости и производительности каждого из узлов. Кластер в Databricks создается и настраивается в облачном варианте по запросу (On-Demand), используя встроенную эластичность и масштабирование Cloud-подхода. Такая SaaS/PaaS-модель освобождает пользователей от операционной рутины по управлению мощностью в длительно работающих кластерах — пользователи легко развертывают новые эластичные кластеры, которые автоматически расширяются или сжимаются в зависимости от требований рабочей нагрузки и могут автоматически отключаться в периоды ожидания. Это позволяет пользователям облачного озера данных Databricks уделить больше внимания аналитике больших данных с Apache Spark, не размениваясь на сопровождающие процессы.
  • Хранение данных. В Apache Hadoop в качестве хранилища больших данных используется распределенная файловая система HDFS, привязанная к вычислениям. Databricks предлагает собственное облачное хранилище, такое как S3 на AWS или ADLS в Azure, что приводит к независимости вычислений от архитектуры хранилища. Это позволяет пользователям масштабировать распределенные вычисления независимо от хранилища и избавляет от необходимости планировать емкость хранилища или сталкиваться с ограничениями масштабируемости имен HDFS-узлов.
  • Сервисный подход. Delta Lake от Databrick позволяет пользователям создавать надежные и производительные озера данных в Cloud-хранилище, отражая все современные тенденции в мире ИТ: высокая скорость распределенных вычислений, эластичная масштабируемость кластеров и повышенная производительность приложений за счет облачных технологий.
  • Интеграция с другими Big Data фреймворками и облачными сервисами. Экосистема Apache Hadoop включает полезные для анализа больших данных движки: Hive, open-source Spark и HBase. Delta Lake от Databrick продолжает эту концепцию единого информационного пространства, легко интегрируясь с облачными сервисами, а такжеNoSQL-СУБД.
  • Производительность и параллелизм. Параллелизм заданий в общем кластере работает по-разному в Delta Lake Databricks и озере данных на Apache Как мы уже отметили, Hadoop использует менеджер кластерных ресурсов YARN. Он включает планировщик заданий и пулы ресурсов для управления заданиями, запуская новый драйвер Spark для каждого задания, чтобы обеспечить восстановление заданий и параллелизм в одном кластере. Однако, ресурсы YARN ограничены общей емкостью кластера. Это может привести к увеличению времени выполнения заданий, конкуренции за ресурсы, невыполнению соглашений об уровне обслуживания и повышению сложности рутинных операций по разделению ограниченной мощности между несколькими конкурирующими рабочими нагрузками. Реализация Apache Spark в Databricks, по сравнению с open-source версией, ориентирована на потребности корпоративного использования, она более производительна, масштабируема и готова к работе для предприятий. В частности, поддержка транзакционных конвейеров, автономного кэширования и методов кластеризации данных позволяет создать облачное озеро данных, удовлетворяя любые потребности запросы современного data-driven предприятия.

Разумеется, решение Databricks, — далеко не единственное коммерческое воплощение открытой технологии Delta Lake уровня enterprise. На отечественном рынке это направление продвигает компания «Неофлекс», предлагая на его базе комплексные решения по внедрению MLOps [3], о чем мы писали здесь.

MLOps, Delta Lake, Неофлекс, машинное обучение, Machine Learning, Apache Spark
Пример комплексного MLOps-решения на базе Delta Lake от «Неофлекс»

 

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

Как эффективно использовать Apache Spark и Hadoop для аналитики больших данных в проектах цифровизации своего бизнеса, а также государственных и муниципальных предприятий, вы узнаете на специализированных курсах в нашем лицензированном учебном центре обучения и повышения квалификации для разработчиков, менеджеров, архитекторов, инженеров, администраторов, Data Scientist’ов и аналитиков Big Data в Москве:

 

Источники

  1. https://databricks.com/product/delta-lake-on-databricks
  2. https://blogs.informatica.com/2019/10/04/how-to-go-hadoop-less-with-informatica-data-engineering-and-databricks/
  3. https://www.neoflex.ru/expertises/mlops