В настоящее время, как только бизнес или любая операция, связанная с компьютерами, вырастает до такой степени, что для обработки требуется более одного компьютера, мы немедленно начинаем использовать несколько компьютеров как часть единой сети, чтобы более эффективно справляться с рабочей нагрузкой. Это стало обычным явлением до такой степени, что в настоящее время почти все операции в таких областях, как наука о данных, выполняются этими сетевыми компьютерами. Хотя, без сомнения, выполнение ресурсоемких компьютерных задач таким образом более эффективно, но это также невероятно сложно, поскольку вам нужно индивидуально настраивать каждый компьютер, а затем управлять всей сетью по мере выполнения ваших задач. Именно здесь на помощь приходят такие программы, как Hadoop.
- Что такое Apache Hadoop?
- Варианты использования Hadoop
- Обзор архитектуры Hadoop
- Установите Hadoop в Ubuntu 20.04 — пошаговое руководство
- Предварительные условия
- Шаг 1. Создайте пользователя без полномочий root для Hadoop
- Шаг 2. Настройте ключи SSH
- Шаг 3. Загрузите и установите Hadoop в Ubuntu
- Шаг 4. Настройка среды Hadoop
- Шаг 5. Отредактируйте файлы конфигурации
- Шаг 6. Отформатируйте HDFS
- Шаг 7. Запустите службы Hadoop
- Шаг 8. Проверьте установку
- Шаг 9. Доступ к веб-интерфейсам
- Шаг 10. Запустите пример MapReduce
- Шаг 11. Установите переменные среды
- Заключение
- Часто задаваемые вопросы
Hadoop — это набор инструментов и программ, выпущенный Apache, который позволяет выполнять весь процесс объединения нескольких компьютеров в сеть с гораздо большей эффективностью и легкостью. Итак, в этой статье я рассмотрю Hadoop, рассмотрю варианты его использования, рассмотрю его плюсы и минусы и предоставлю обзор его расширенной архитектуры, прежде чем перейти к пошаговому руководству по установке Hadoop в Ubuntu 20.04, чтобы завершить это руководство по Hadoop 2024 года.
Что такое Apache Hadoop?
Hadoop, набор инструментов на базе Apache, меняет настройку и использование сети уже более 15 лет. Пользователи могут извлечь выгоду из эффективности ресурсов Hadoop, что позволяет им использовать текущую вычислительную мощность для решения сложных задач без необходимости дорогостоящих обновлений. Пакет состоит из четырех модулей: HDFS, YARN, MapReduce и Hadoop Common, каждый из которых предназначен для конкретных случаев использования.
Великолепие Hadoop заключается в присущей ему изобретательности, которая позволяет как отдельным лицам, так и организациям объединять существующие вычислительные возможности в сплоченную силу, способную преодолевать серьезные вычислительные проблемы. Без руководства Hadoop эти организации оказались бы вынуждены заняться дорогостоящим приобретением все более мощных вычислительных машин.
Варианты использования Hadoop
Теперь мы знаем, что такое Hadoop. Но как именно варианты его использования применяются в реальном мире? Понимание программы на бумаге – это хорошо, но оно никогда не заменит реализацию ее потенциала в рамках серьезной операции. Итак, здесь я приведу несколько примеров, прежде чем перейти к руководству по Hadoop.
Анализ рисков
Как уже упоминалось, Hadoop позволяет использовать возможности нескольких компьютерных систем как части единого сетевого блока, чтобы эффективно обрабатывать пакеты обширных данных и анализировать их быстрее, чем обычно. В любом бизнесе есть риски, которые требуют анализа и расчета. Hadoop здесь чрезвычайно удобен. Настолько, что многие авторитетные больницы используют его для анализа рисков различных методов лечения и прогнозирования потенциальных результатов и статистики своих операций для своих пациентов. Здесь вы узнаете больше о революционной роли Hadoop в здравоохранении.
Обнаружение нарушений безопасности
По мере того как общее количество сетевых и используемых устройств в сети или бизнесе увеличивается, появляется все больше и больше потенциальных нарушений безопасности, о которых следует помнить. Одна из важнейших утилит Hadoop — оценка всей операции путем анализа больших объемов данных и выявления потенциальных болевых точек этой системы.
Обзор картографии
Многие компании полагаются на отзывы о своих продуктах, чтобы улучшить их или разработать новые рыночные стратегии. В то время как человеку потребуется много времени, чтобы охватить достаточно большой файл обзора, Hadoop применит свою сетевую компьютерную магию, чтобы получить гораздо более быстрые результаты.
Анализ рынка
Говоря о рыночных стратегиях, вышеупомянутая обзорная карта меркнет по сравнению с количеством ресурсов, необходимых для анализа рынка и оценки потенциала выхода на него совершенно нового продукта. Это еще один вариант использования Hadoop, поскольку он позволяет даже малым перспективным предприятиям эффективно оценивать рынок с помощью нескольких компьютеров в эффективные сроки и способом.
Оценка файлов журналов
Еще один аспект бизнеса, который со временем усложняется и становится все более значимым, — это количество программного обеспечения, которое они начнут использовать повсеместно. Использование все большего количества программного обеспечения приводит к появлению большего количества потенциальных ошибок и болевых точек и требует специального сотрудника для управления файлами журналов и решения проблем. Это займет много времени, но, используя несколько простых протоколов, компания может использовать Hadoop для быстрого просмотра и оценки файлов журналов, чтобы найти эти ошибки и избавиться от них.
Существует множество других вариантов использования и приложений Hadoop, но, чтобы сохранить фокус на цели статьи, мы не будем обсуждать их дальше.
Обзор архитектуры Hadoop
Допустим, вы слышали о Hadoop, его общих вариантах использования и том, что он делает. И даже если вы этого не сделали, эта статья, вероятно, уже сделала это за вас. Но теперь вам необходимо получить более глубокое понимание того, из чего на самом деле состоит Hadoop и как каждая его часть работает с другими функциями. Как упоминалось ранее, существует четыре основных уровня Hadoop; В этой части руководства по Hadoop мы узнаем больше о HDFS (распределенной файловой системе Hadoop), YARN (еще один переговорщик ресурсов), MapReduce и Hadoop Common. Однако, поскольку в Hadoop Common не так уж и много функций, требующих объяснения, основные его особенности известны как смотритель зоопарка. Итак, в этом разделе я попытаюсь в общих чертах описать расширенную архитектуру и экосистему Hadoop, а также ее четыре раздела, прежде чем, наконец, перейти к установке Hadoop в Ubuntu 20.04.
HDFS
HDFS в экосистеме Hadoop представляет собой общую систему хранения, которую все подразделения и приложения Hadoop используют для оценки, передачи и сохранения данных. Основная идея архитектуры HDFS заключается в том, что в отличие от самой Hadoop, программы с открытым исходным кодом, HDFS в Hadoop на самом деле является файловой системой, ответственной за выполнение всех базовых операций одного кластера Hadoop. HDFS — это невероятно отказоустойчивая файловая система, которая делит пакеты данных на фрагменты по 128 МБ и оптимизирует их для операций на основе последовательности.
Основная роль HDFS в программном обеспечении Hadoop заключается в предоставлении всех данных как части общей стойки данных, которой затем можно управлять через различные именные узлы и вторичные стойки в подразделы для организации операции анализа данных. Затем вы можете использовать другие параметры, такие как Стойки журналов, QJM, HA, fsimage и редактировать файлы журналов, а также общий журнал условных обозначений, чтобы отслеживать и выполнять другие задачи.
ПРЯЖА
YARN — это еще одна исполнительная ветвь Hadoop, которая используется для назначения желаемого объема вычислительных ресурсов конкретным приложениям в экосистеме Hadoop. По сути, это позволяет вам использовать менеджер ресурсов для ваших клиентов, чтобы распределять эти ресурсы через набор разных узлов для разных задач и приложений. В YARN также есть легенда, аналогичная легенде в HDFS, которая позволяет вам отслеживать все выделенные вами ресурсы и операции. Сама YARN разделена на три подраздела: Менеджер ресурсов, Мастер приложений и Менеджер узлов.
Каждый из этих трех подразделов создает свой новый экземпляр для каждого кластера, приложения и узла соответственно. С помощью YARN вы не только можете распределять ресурсы для различных задач, но также можете планировать изменение этих ресурсов с течением времени, чтобы создавать расширенные алгоритмические рабочие процессы. YARN не ограничивается своим подразделом. Во многих случаях вы будете использовать YARN в сочетании с другими архитектурными уровнями, такими как HDFS и Zookeeper, для распределения ресурсов и оценки общей работы.
Hadoop Mapreduce
Hadoop MapReduce — еще один важный компонент экосистемы Hadoop. После установки Hadoop в Ubuntu вы можете использовать эту функцию для эффективного получения огромных пакетов данных, распределенных для анализа на нескольких разных компьютерах. По сути Hadoop MapReduce работает следующим образом: вы вводите в программу большую карту данных. Эта карта данных будет перетасована, разбита на части и распределена по вашим сетевым компьютерам. Впоследствии, используя определенные протоколы, известные как редукторы, данные сводятся к наиболее важным компонентам и сокращаются. Каждая из этих операций называется заданием.
Допустим, у вас есть предложение из трех слов, которое действует как карта данных, которую вы хотите проанализировать с помощью MapReduce. Допустим, предложение — «Медвежья охота на кролика». Hadoop MapReduce разбивает и сокращает это предложение на три разных пакета, каждый из которых содержит одно слово, затем использует эти слова и создает новые комбинации с аналогичными входными данными других ваших заданий, чтобы создать окончательный гомогенизированный пакет данных с удаленными ненужными данными, который можно легко проанализировать.
смотритель зоопарка
Zookeeper — еще один подраздел экосистемы Hadoop, который первоначально стал известен и широко использовался с выпуском Hadoop версии 2.0. Основная задача Zookeeper — координировать различные операции, которые вы выполняете в рамках одного экземпляра Hadoop. Таким образом, Zookeeper почти всегда используется в сочетании с менеджером ресурсов YARN и различными функциями HDFS в Hadoop. Основное использование Zookeeper в этих операциях — обнаружение и устранение потенциальных точек сбоя. Для этого он использует два разных инструмента: ZKFiloverControer и Zookeeper Quorum.
В этих процедурах узлы данных, управляемые другими компонентами архитектуры Hadoop, классифицируются как активные узлы имен, контролируемые пользователем. Впоследствии каждый из этих именных узлов подвергается тщательной проверке в двух вышеупомянутых подразделах Zookeeper. Это делается для выявления проблемных областей и выявления потенциальных сбоев.
Установите Hadoop в Ubuntu 20.04 — пошаговое руководство
И, наконец, после изучения архитектуры Hadoop, пришло время перейти к сути вопроса: как установить Hadoop в Ubuntu 20.04, в качестве заключительной части этого руководства по Hadoop. Давайте рассмотрим предварительные условия, прежде чем перейти к пошаговому руководству по установке Hadoop в Ubuntu 20.04. Имейте в виду, что это руководство также можно использовать и для Ubuntu 18.04.
Предварительные условия
Предварительные условия, необходимые для установки Hadoop в Ubuntu, довольно просты. Все, что вам нужно, — это компьютер под управлением Ubuntu с корневым доступом, доступный либо локально, либо удаленно через VPS-сервер. Что касается обязательных программ, убедитесь, что у вас уже установлены Java 11 и SSH. Если у вас их нет, выполните по одной следующие команды, чтобы установить их:
sudo apt update && sudo apt upgrade -y
sudo apt install openssh-server openssh-client -y
sudo apt install openjdk-11-jdk -y
Что касается лицензии, то она вам не понадобится, поскольку Hadoop бесплатен и имеет открытый исходный код. Это все, что вам нужно. Давайте перейдем к первому шагу.
Шаг 1. Создайте пользователя без полномочий root для Hadoop
Создайте пользователя без полномочий root для вашего Hadoop, используя следующую команду. Это часть предварительной настройки, которую нам необходимо выполнить перед фактической загрузкой и установкой Hadoop:
sudo adduser hdoop
su - hdoop
Шаг 2. Настройте ключи SSH
Теперь, чтобы установить Hadoop в Ubuntu, мы будем использовать только что созданного пользователя Hadoop и использовать его для установления с ним SSH-соединения. Используйте эту команду, чтобы сгенерировать пару ключей SSH и сохранить ее:
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
После того, как ключи будут сгенерированы, следующая строка позволит вам пометить их как авторизованные_ключи и сохраните их в своем каталоге SSH:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Теперь используйте эту команду, чтобы убедиться, что ваше SSH-соединение имеет все необходимые разрешения:
chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh
Подтвердите изменения, и вы сможете всегда легко подключаться к локальному хосту с созданным вами пользователем:
ssh localhost
Шаг 3. Загрузите и установите Hadoop в Ubuntu
Вы можете посетить Веб-сайт Apache Hadoop чтобы просмотреть список версий с журналом последних изменений. Выберите понравившуюся версию, и вам будет представлена ссылка, которую можно использовать с помощью следующей команды для загрузки и установки Hadoop в Ubuntu. Здесь я выбираю версию 3.3.6. При необходимости замените «3.3.6» последней стабильной версией:
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
После завершения загрузки используйте эту строку, чтобы завершить процесс извлечения и установки:
tar xzf hadoop-3.3.6.tar.gz
sudo mv hadoop-3.3.6 /usr/local/hadoop
sudo chown -R hdoop:hdoop /usr/local/hadoop
Шаг 4. Настройка среды Hadoop
Набор JAVA_HOME in /usr/local/hadoop/etc/hadoop/hadoop-env.sh:
echo 'export JAVA_HOME=$(readlink -f /usr/bin/java | sed "s:bin/java::")' | sudo tee -a /usr/local/hadoop/etc/hadoop/hadoop-env.sh
Шаг 5. Отредактируйте файлы конфигурации
Обновите XML-файлы конфигурации Hadoop, указав настройки вашего кластера.
nano /usr/local/hadoop/etc/hadoop/core-site.xml
Шаг 6. Отформатируйте HDFS
Инициализируйте пространство имен файловой системы Hadoop.
/usr/local/hadoop/bin/hdfs namenode -format
Шаг 7. Запустите службы Hadoop
Запустите службы HDFS и YARN.
/usr/local/hadoop/sbin/start-dfs.sh
/usr/local/hadoop/sbin/start-yarn.sh
Шаг 8. Проверьте установку
Проверьте запущенные процессы Java, чтобы убедиться, что Hadoop работает.
jps
Шаг 9. Доступ к веб-интерфейсам
Откройте веб-браузеры для интерфейсов Hadoop NameNode и ResourceManager.
ИмяУзел: http://localhost:9870
Менеджер ресурсов: http://localhost:8088
Шаг 10. Запустите пример MapReduce
Выполните образец задания MapReduce, чтобы проверить настройку.
/usr/local/hadoop/bin/hdfs dfs -mkdir /input
/usr/local/hadoop/bin/hdfs dfs -put localfile.txt /input
/usr/local/hadoop/bin/hadoop jar
/usr/local/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.6.jar grep /input /output 'dfs[a-z.]+'
/usr/local/hadoop/bin/hdfs dfs -cat /output/*
Шаг 11. Установите переменные среды
Добавьте Hadoop мусорное ведро и сбин каталоги в системную PATH.
echo 'export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin' >> ~/.bashrc
source ~/.bashrc
И все! Вам только что удалось успешно настроить и установить Apache Hadoop в Ubuntu 20.04!
Заключение
Подводя итог, установка Hadoop на Ubuntu 20.04 — это тщательный процесс, требующий пристального внимания и готовности изучить нюансы настройки. Следуя инструкциям, описанным в этом руководстве, пользователи Ubuntu могут отправиться в путь трансформации, используя существенные возможности Hadoop и полностью реализуя потенциал своих задач по анализу данных.
Я рекомендую развертывать Hadoop как одноузловое развертывание с использованием ограниченного распространения, если вы собираетесь только изучать его и экспериментировать с ним. Для этой цели вам идеально подойдет VPS. Cloudzy предлагает вам множество различных Linux VPS услуги включая Ironclad, надежный Ubuntu VPS его можно в кратчайшие сроки настроить, чтобы он стал для вас идеальной площадкой для обучения Hadoop. Начиная с $4,95 в месяц, вы можете получить собственный Ubuntu VPS с более чем 12 локациями и круглосуточной поддержкой!
Очевидный выбор
Большинство серверов под управлением Linux используют Ubuntu; почему не ты? Узнайте, почему все любят Ubuntu — приобретите оптимизированный Ubuntu VPS
Получите свой Ubuntu VPSЧасто задаваемые вопросы
Каковы различия между HDFS и MapReduce?
Хотя оба модуля находятся в экосистеме Hadoop, они служат разным целям. HDFS функционирует как распределенная файловая система, облегчая доступ к данным. С другой стороны, MapReduce превосходно справляется с разбиением и эффективным анализом больших фрагментов данных.
Считается ли Hadoop базой данных?
Hadoop не является базой данных, хотя это заблуждение распространено. Скорее, он работает как распределенная файловая система, которая позволяет хранить и обрабатывать объемные данные с использованием сети взаимосвязанных компьютеров. Ее не следует использовать в качестве прямой замены традиционной системы баз данных.
Каковы четыре основных компонента Hadoop?
Hadoop состоит из четырех основных компонентов: HDFS (распределенная файловая система Hadoop), YARN (еще один переговорщик ресурсов), MapReduce и Hadoop Common. Кроме того, некоторые ресурсы рассматривают ZooKeeper как компонент, хотя официально он таковым не признается.
Где обычно используется Hadoop?
Hadoop находит применение в различных областях, где необходимы управление, хранение, обработка и анализ крупномасштабных данных. Он обслуживает самые разные операции: от среднего бизнеса и больниц до растущих стартапов, предоставляя решения на основе данных.