Hadoop - что это за зверь? 😤
Друзья, всем привет, в этом посте хотелось бы разобрать что такое Hadoop и зачем он вообще нужен для аналитики / машинного обучения.
Вообще, хотелось бы начать с того, что это вообще такое. Hadoop - экосистема из нескольких утилит и фреймворков, позволяющая работать с Big Data.
Три концепции Big Data:
💪 Volume - Объем.
🏃♀️ Velocity - Скорость поступления данных.
🏖 Variety - Разнородность данных.
Из чего состоит Hadoop и что лежит в основе?
🗂 HDFS - распределенное хранилище для хранения файлов больших размеров с возможностью потокового доступа к информации. Представьте, что вы перекачиваете данные из одной БД в другую, результаты вычислений хранятся в формате parquet, который, благодаря обработке занимает меньше памяти.
👹 MapReduce - Используется для распределенных задач с использованием нод, которые образуют кластер.
📖 Yarn - система планирования заданий и управления кластером (Yet Another Resource Negotiator), которую также называют MapReduce 2.0 (MRv2).
✨ Spark - фреймворк, который обрабатывает данные в оперативной памяти, используя кэширование (в 100 раз быстрее Hadoop, x10 при вычислении на диске).
🧺 Hive - интерфейс доступа к данным. Он позволяет выполнять запросы, используя SQL синтаксис и обращаться с данными, как с таблицами БД).
💻 А теперь представьте, что вы решаете ML-задачу, где ваша модель обучается на огромном количестве данных (взять любую крупную компанию, которая внедряет ML задачи повсеместно). Это и рекомендательные системы, и скоринг пользователей, и внедрение различных A/B тестов с дальнейшей раскаткой на всех пользователей. Кажется, что ресурсов, предоставляемых различными сервисами по типу AIRFLOW может быть недостаточно при выполнении базовых запросов в SQL и дальнейшей обработкой, например, в pandas 🐼
И представьте, можно выполнять простые SQL запросы с помощью spark.sql()
🤨 Возьмем pandas и Spark.
Spark может решать различные типы задач по обработке данных. Он поддерживает пакетную обработку, обработку в реальном времени и интерактивную обработку больших наборов данных.
Pandas в основном используется для обработки структурированных данных, включая табличные, временные ряды и столбчатые данные.
Более подробно можно почитать тут
🤔 Полезные материалы по Spark можно почитать в следующих статьях
Под капотом Apache Spark лежит несколько концепций, с которыми я предлагаю ознакомиться по ссылочке на Хабре
ML-pipeline и практическое применение Spark с разбором кода на Хабре
Документация по Spark здесь
Классная статья с основными концепциями Hadoop (фото к посту взято оттуда). Хабр линк here
🐘 Ставьте реакции, делитесь тем, приходилось ли вам использовать Hadoop.
Друзья, всем привет, в этом посте хотелось бы разобрать что такое Hadoop и зачем он вообще нужен для аналитики / машинного обучения.
Вообще, хотелось бы начать с того, что это вообще такое. Hadoop - экосистема из нескольких утилит и фреймворков, позволяющая работать с Big Data.
Три концепции Big Data:
Из чего состоит Hadoop и что лежит в основе?
Spark может решать различные типы задач по обработке данных. Он поддерживает пакетную обработку, обработку в реальном времени и интерактивную обработку больших наборов данных.
Pandas в основном используется для обработки структурированных данных, включая табличные, временные ряды и столбчатые данные.
Более подробно можно почитать тут
Под капотом Apache Spark лежит несколько концепций, с которыми я предлагаю ознакомиться по ссылочке на Хабре
ML-pipeline и практическое применение Spark с разбором кода на Хабре
Документация по Spark здесь
Классная статья с основными концепциями Hadoop (фото к посту взято оттуда). Хабр линк here