Hortonworks Data Platform
Hortonworks Data Platform (HDP) — это программная платформа с открытым исходным кодом, предназначенная для хранения, обработки и анализа больших объёмов данных (Big Data). HDP представляет собой дистрибутив экосистемы Apache Hadoop, объединяющий в себе набор компонентов для распределённых вычислений, управления данными и их аналитики. Платформа разрабатывалась компанией Hortonworks, Inc. (США) и была одной из первых коммерческих реализаций Hadoop, ориентированной на корпоративных пользователей. В 2018 году Hortonworks объединилась с компанией Cloudera, после чего развитие HDP было прекращено в пользу единой платформы Cloudera Data Platform (CDP).
История
Предпосылки создания
К концу 2000-х годов технология Apache Hadoop, созданная на основе работ Google (MapReduce и Google File System), стала стандартом для обработки больших данных. Однако большинство организаций сталкивались с трудностями при развёртывании и настройке Hadoop в производственной среде из-за сложности интеграции множества компонентов (HDFS, MapReduce, YARN, Hive, Pig и др.). Коммерческие дистрибутивы, такие как Cloudera CDH, предлагали упрощённые сборки, но рынок требовал альтернатив, ориентированных на открытость и совместимость.
Основание Hortonworks
Компания Hortonworks была основана в 2011 году как дочерняя структура Yahoo! (основного разработчика Hadoop на тот момент). Её создатели — Эрик Балдесвилер, Оуэн О’Мэлли и другие ключевые инженеры Yahoo! — поставили целью сделать Hadoop доступным для корпоративного сектора, сохранив при этом полную совместимость с upstream-версиями Apache. Первый релиз HDP (версия 1.0) вышел в 2012 году и включал базовые компоненты: HDFS, MapReduce, Hive, HBase, ZooKeeper, Pig и Sqoop.
Развитие и конкуренция
В 2013–2016 годах HDP активно развивалась, добавляя поддержку новых технологий: Apache Spark, Apache Kafka, Apache Storm, Apache Atlas, Apache Ranger. Платформа позиционировалась как «100% открытая» (в отличие от Cloudera, которая включала проприетарные компоненты). В 2015 году Hortonworks вышла на IPO, а к 2017 году её выручка превысила 250 миллионов долларов. Основными конкурентами были Cloudera CDH, MapR и облачные сервисы (Amazon EMR, Google Cloud Dataproc).
Слияние с Cloudera
В октябре 2018 года Hortonworks и Cloudera объявили о слиянии, которое завершилось в январе 2019 года. Объединённая компания сохранила название Cloudera, а её портфель продуктов был консолидирован в единую платформу Cloudera Data Platform (CDP). Последняя версия HDP (3.1.5) вышла в 2019 году, после чего поддержка дистрибутива была прекращена. Пользователям рекомендовали мигрировать на CDP или использовать альтернативные дистрибутивы (например, Apache Bigtop).
Архитектура и компоненты
HDP построена на модульной архитектуре, где каждый компонент является отдельным проектом Apache. Основные слои платформы включают:
Хранение данных
- HDFS (Hadoop Distributed File System) — распределённая файловая система, обеспечивающая хранение данных на кластере из множества узлов. Данные реплицируются (по умолчанию — 3 копии) для обеспечения отказоустойчивости.
- Apache HBase — нереляционная (NoSQL) база данных, работающая поверх HDFS. Предназначена для произвольного доступа к большим объёмам данных (миллиарды строк) с низкой задержкой.
Управление ресурсами и вычисления
- Apache YARN (Yet Another Resource Negotiator) — фреймворк для управления ресурсами кластера (CPU, память) и планирования заданий. YARN позволяет запускать различные вычислительные движки (MapReduce, Spark, Tez) на одном кластере.
- Apache MapReduce — классическая модель параллельных вычислений, основанная на разбиении задачи на фазы Map (отображение) и Reduce (свёртка). В HDP поддерживался, но постепенно вытеснялся Spark.
- Apache Spark — универсальный движок для обработки данных в памяти, поддерживающий пакетную обработку, потоковую передачу, машинное обучение и графовые вычисления. В HDP Spark интегрировался как альтернатива MapReduce.
Аналитика и SQL
- Apache Hive — система для выполнения SQL-подобных запросов (HiveQL) к данным, хранящимся в HDFS. Hive транслирует запросы в задачи MapReduce или Tez.
- Apache Pig — платформа для анализа данных с использованием языка сценариев Pig Latin. Позволяет описывать конвейеры обработки данных без написания Java-кода.
- Apache Tez — оптимизированный движок для выполнения DAG-графов (направленных ациклических графов) задач, используемый в Hive и Pig для повышения производительности.
- Apache Phoenix — слой SQL поверх HBase, обеспечивающий поддержку стандартных SQL-запросов и транзакций ACID.
Потоковая обработка
- Apache Storm — система для обработки потоков данных в реальном времени (real-time). Используется для анализа данных с низкой задержкой (например, мониторинг логов, финансовые транзакции).
- Apache Kafka — распределённая платформа для обмена сообщениями (event streaming). В HDP Kafka использовалась как брокер сообщений для интеграции потоковых данных.
Управление данными и безопасность
- Apache Atlas — фреймворк для управления метаданными, каталогизации данных и обеспечения их происхождения (data lineage). Позволяет отслеживать, как данные преобразуются в конвейерах.
- Apache Ranger — система централизованного управления доступом (RBAC, ACL). Позволяет задавать политики безопасности для HDFS, Hive, HBase, Kafka и других компонентов.
- Apache Knox — шлюз безопасности (gateway), обеспечивающий единую точку входа для REST-API и защиту кластера от внешних атак.
Инструменты управления
- Ambari — веб-интерфейс для установки, настройки, мониторинга и управления кластером HDP. Ambari предоставляет дашборды, оповещения, логи и возможность горячего обновления компонентов.
- Apache Oozie — система для планирования и оркестровки рабочих процессов (workflows) в Hadoop.
- Apache Zeppelin — веб-блокнот (notebook) для интерактивной аналитики, поддерживающий Spark, Hive, SQL и визуализацию данных.
Применение
HDP использовалась в различных отраслях для решения задач, связанных с большими данными:
- Финансы — анализ транзакций в реальном времени для выявления мошенничества (fraud detection), риск-менеджмент, построение моделей кредитного скоринга.
- Телекоммуникации — обработка логов CDR (Call Detail Records), анализ поведения абонентов, оптимизация сетей, прогнозирование оттока клиентов.
- Розничная торговля — анализ покупательских корзин, рекомендательные системы, управление цепочками поставок, прогнозирование спроса.
- Здравоохранение — обработка медицинских записей (EHR), геномный анализ, эпидемиологические исследования.
- Государственный сектор — анализ данных переписей, мониторинг социальных сетей, обработка данных сенсоров «умных городов».
- Промышленность — анализ данных с датчиков IoT, предиктивное обслуживание оборудования, оптимизация производственных процессов.
Преимущества и недостатки
Преимущества
- Открытый исходный код — все компоненты HDP были доступны под лицензией Apache 2.0, что позволяло организациям избежать вендор-лока.
- Совместимость с upstream — HDP полностью соответствовала версиям Apache Hadoop, что упрощало обновления и миграцию.
- Модульность — пользователи могли выбирать только необходимые компоненты, не устанавливая лишнего.
- Интеграция с облаком — HDP поддерживала развёртывание в облачных средах (AWS, Azure, GCP) и гибридные конфигурации.
- Ambari — удобный инструмент для управления кластером, который снижал порог входа для администраторов.
Недостатки
- Сложность настройки — несмотря на Ambari, развёртывание HDP требовало глубоких знаний экосистемы Hadoop.
- Производительность — в некоторых сценариях (например, при работе с Hive на MapReduce) HDP уступала специализированным решениям (например, Impala от Cloudera).
- Отсутствие поддержки после слияния — с 2019 года HDP не получает обновлений, что делает её уязвимой для новых угроз безопасности.
- Конкуренция с облачными сервисами — облачные провайдеры (Amazon EMR, Google Dataproc) предлагали более простые и дешёвые альтернативы.
Критика
Основные претензии к HDP со стороны сообщества и экспертов касались:
- Фрагментации экосистемы — из-за большого количества компонентов пользователи часто сталкивались с несовместимостью версий (например, Spark и Hive не всегда работали корректно).
- Отсутствия встроенной поддержки машинного обучения — в отличие от Cloudera, HDP не включала проприетарные инструменты для ML (например, Cloudera Data Science Workbench).
- Зависимости от Ambari — хотя Ambari упрощал управление, его производительность при работе с кластерами из сотен узлов оставляла желать лучшего.
Наследие
Несмотря на прекращение поддержки, HDP оказала значительное влияние на индустрию больших данных. Многие её компоненты (Ambari, Atlas, Ranger) стали основой для Cloudera Data Platform. Кроме того, HDP популяризировала подход «open source first» в корпоративном секторе, доказав, что открытые технологии могут быть надёжными и масштабируемыми. В настоящее время организации, использующие HDP, постепенно мигрируют на CDP или альтернативные дистрибутивы (например, Apache Bigtop, Amazon EMR, Google Cloud Dataproc).
Источники
- Hortonworks Data Platform Documentation (версия 3.1.5, 2019)
- Apache Hadoop Project Website
- Cloudera Data Platform Overview
- «Hadoop: The Definitive Guide» by Tom White (4th edition, 2015)
- «Hortonworks Data Platform: A Comprehensive Guide» (O’Reilly Media, 2017)
- Статья: «The Rise and Fall of Hortonworks» (The New Stack, 2019)
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →