В предишния ни блог обсъдихме Въведение в Hadoop подробно. Сега в този блог ще отговорим какво представлява екосистемата на Hadoop и какви са ролите на компонентите на Hadoop.
В този урок за компоненти на Hadoop ще обсъдим различни компоненти на екосистемата от семейството Hadoop, като HDFS, MapReduce, YARN, Hive, HBase, Pig, Zookeeper и др.
Всички тези компоненти на екосистемата Hadoop се обсъждат заедно с техните характеристики и отговорности.
Урок за екосистема Hadoop
Apache Hadoop е най-мощният инструмент на Big Data. Екосистемата на Hadoop се върти около три основни компонента HDFS, MapReduce и YARN. Освен тези компоненти на Hadoop, има и някои други компоненти на екосистемата на Hadoop, които играят важна роля за повишаване на функционалността на Hadoop.
нека сега да разберем подробно различните компоненти на Hadoop.
a. HDFS
Разпределена файлова система Hadoop (HDFS) е основната система за съхранение на Hadoop. HDFS съхранява много големи файлове, работещи на клъстер от стандартен хардуер.
Той следва принципа на съхраняване на по-малък брой големи файлове, а не на огромния брой малки файлове. HDFS съхранява данни надеждно дори в случай на повреда на хардуера. Следователно той осигурява достъп до приложението с висока пропускателна способност чрез паралелен достъп.
Компоненти на HDFS:
- NameNode – Работи като главен в клъстер Hadoop. Namenode съхранява мета-данни, т.е. брой блокове, реплики и други подробности. Мета-данните присъстват в паметта в главния. NameNode присвоява задачи на подчинения възел. Трябва да се внедри на надежден хардуер, тъй като е в центъра на HDFS.
- DataNode – Работи като Slave в клъстера Hadoop. В Hadoop HDFS DataNode е отговорен за съхраняването на действителни данни в HDFS. DataNode също изпълнява операция за четене и запис според заявка за клиентите. DataNodes могат да се разгръщат и на стандартен хардуер.
б. MapReduce
Hadoop MapReduce е слоят за обработка на данни на Hadoop. Той обработва големи структурирани и неструктурирани данни, съхранявани в HDFS. MapReduce също обработва огромно количество данни паралелно.
Той прави това чрез разделяне на заданието (подадено задание) на набор от независими задачи (подзадача). В Hadoop MapReduce работи, като разделя обработката на фази:Map и Reduce.
- Карта – Това е първата фаза на обработка, където ние определяме целия сложен логически код.
- Намаляване – Това е втората фаза на обработка. Тук указваме лека обработка като агрегиране/сумиране.
в. ПРЕЖДА
Hadoop YARN осигурява управлението на ресурсите. Това е операционната система на Hadoop. Така че той отговаря за управлението и наблюдението на работните натоварвания, прилагането на контроли за сигурност. Това е централна платформа за предоставяне на инструменти за управление на данни в клъстери Hadoop.
YARN позволява множество машини за обработка на данни, като стрийминг в реално време, пакетна обработка и др.
Компоненти на ПРЕЖДА:
- Мениджър на ресурси – Това е компонент на ниво клъстер и работи на главната машина. Следователно той управлява ресурси и планира приложения, работещи в горната част на YARN. Той има два компонента:Scheduler &Application Manager.
- Диспечер на възли – Това е компонент на ниво възел. Работи на всяка подчинена машина. Той непрекъснато комуникира с Resource Manager, за да остане актуален
г. Кошер
Apache Hive е система за съхранение на данни с отворен код, използвана за запитване и анализиране на големи набори от данни, съхранявани във файлове на Hadoop. Той обработва структурирани и полуструктурирани данни в Hadoop.
Hive също така поддържа анализ на големи набори от данни, съхранявани в HDFS, а също и във файловата система на Amazon S3 се поддържа от Hive. Hive използва езика, наречен HiveQL (HQL), което е подобно на SQL. HiveQL автоматично превежда SQL-подобни заявки в задания на MapReduce.
д. Свиня
Това е езикова платформа на високо ниво, разработена за изпълнение на заявки към огромни набори от данни, които се съхраняват в Hadoop HDFS. PigLatin е език, използван в pig, който е много подобен на SQL.
Pig зарежда данните, прилага необходимите филтри и изхвърля данните в необходимия формат. Pig също така преобразува цялата операция в задачи Map и Reduce, които се обработват ефективно в Hadoop.
Характеристики на прасето:
- Разширяем – Потребителите на Pig могат да създават персонализирани функции, за да отговорят на техните специфични изисквания за обработка.
- Самооптимизиране – Тъй като Pig позволява на системата да се оптимизира автоматично. Така потребителят може да се съсредоточи върху семантиката.
- Обработва всички видове данни – Pig анализира както структурирано, така и неструктурирано.
f. HBase
Apache HBase е NoSQL база данни, която работи в горната част на Hadoop. Това е база данни, която съхранява структурирани данни в таблици, които могат да имат милиарди редове и милиони колони. HBase също така предоставя достъп в реално време за четене или запис на данни в HDFS.
Компоненти на HBase:
- HBase Master – Той не е част от действителното съхранение на данни. Но изпълнява администриране (интерфейс за създаване, актуализиране и изтриване на таблици.).
- Регионален сървър – Това е работният възел. Той обработва заявки за четене, запис, актуализиране и изтриване от клиенти. Процесът на регионалния сървър също се изпълнява на всеки възел в клъстера Hadoop.
ж. HC каталог
Това е слой за управление на таблица и съхранение в горната част на Apache Hadoop. HCatalog е основен компонент на Hive. Следователно, той позволява на потребителя да съхранява своите данни във всякакъв формат и структура. Той също така поддържа различни компоненти на Hadoop за лесно четене и запис на данни от клъстера.
Предимства на HCatalog:
- Осигурете видимост за инструменти за почистване и архивиране на данни.
- С абстракцията на таблицата HCatalog освобождава потребителя от излишните разходи за съхранение на данни.
- Разрешава известията за наличност на данни.
i. Авро
Това е проект с отворен код, който предоставя услуги за сериализиране на данни и обмен на данни за Hadoop. Използвайки сериализация, сервизните програми могат да сериализират данни във файлове или съобщения.
Той също така съхранява дефиницията на данни и данни заедно в едно съобщение или файл. Следователно това улеснява програмите да разбират динамично информацията, съхранявана във файл или съобщение Avro.
Avro предоставя:
- Файл с контейнер за съхраняване на постоянни данни.
- Отдалечено извикване на процедура.
- Богати структури от данни.
- Компактен, бърз, двоичен формат на данни.
j. Пестеливост
Apache Thrift е софтуерна рамка, която позволява мащабируемо развитие на различни езици. Thrift се използва и за RPC комуникация. Apache Hadoop извършва много RPC извиквания, така че има възможност за използване на Thrift за производителност.
k. Бормашина
Бормашината се използва за мащабна обработка на данни. Проектирането на тренировката е за мащабиране до няколко хиляди възли и запитване на петабайти данни. Освен това е двигател за разпределени заявки с ниска латентност за мащабни набори от данни.
Упражнението е и първата разпределена машина за SQL заявки, която има модел без схеми.
Характеристики на бормашина :
- Проверка на децентрализирани метаданни – Drill няма изискване за централизирани метаданни. Потребителите на разбивка не трябва да създават и управляват таблици в метаданни, за да правят заявки за данни.
- Гъвкавост – Drill предоставя йерархичен колонен модел на данни. Той може да представя сложни, силно динамични данни и също така да позволява ефективна обработка.
- Динамично откриване на схема – За да стартирате процеса на изпълнение на заявка, Drill не изисква никаква спецификация на типа за данни. Вместо това, drill започва да обработва данните в единици, наречени пакети за запис. Той също така открива схема в движение по време на обработката.
л. Mahout
Това е рамка с отворен код, използвана за създаване на мащабируем алгоритъм за машинно обучение. След като съхраняваме данни в HDFS, mahout предоставя инструментите за наука за данни за автоматично намиране на значими модели в тези набори от големи данни.
м. Sqoop
Използва се главно за импортиране и експортиране на данни. И така, той импортира данни от външни източници в свързани компоненти на Hadoop като HDFS, HBase или Hive. Той също така експортира данни от Hadoop към други външни източници. Sqoop работи с релационни бази данни като Teradata, Netezza, Oracle, MySQL.
n. Камин
Flume ефективно събира, обобщава и премества голямо количество данни от източника и ги изпраща обратно към HDFS. Той има много проста и гъвкава архитектура, базирана на поточни потоци от данни. Отводът е устойчив на грешки, също така надежден механизъм.
Flume също така позволява данни за потока от източника в средата на Hadoop. Той използва прост разширяем модел на данни, който позволява онлайн аналитично приложение. Следователно, използвайки Flume, можем да получим данните от множество сървъри незабавно в Hadoop.
o. Амбари
Това е платформа за управление с отворен код. Това е платформа за осигуряване, управление, наблюдение и защита на Apache Hadoop клъстер. Управлението на Hadoop става по-лесно, защото Ambari предоставя последователна и сигурна платформа за оперативен контрол.
Предимства на Ambari:
- Опростена инсталация, конфигуриране и управление – Може лесно и ефективно да създава и управлява клъстери в мащаб.
- Централизирана настройка за сигурност – Ambari конфигурира сигурността на клъстера в цялата платформа. Освен това намалява сложността на администрирането.
- Силно разширяем и персонализиран – Ambari е много разширяем за управление на персонализирани услуги.
- Пълна видимост на здравето на клъстера – Ambari гарантира, че клъстерът е здрав и достъпен с холистичен подход за наблюдение.
стр. Зоопарк
Zookeeper в Hadoop е централизирана услуга. Той поддържа информация за конфигурацията, именуване и осигурява разпределена синхронизация. Предлага и групови услуги. Zookeeper също така управлява и координира голям клъстер от машини.
Предимства на Zookeeper:
- Бързо – zookeeper е бърз с натоварвания, при които четенето на данни е по-често срещано, отколкото записването. Идеалното съотношение четене/запис е 10:1.
- Поръчано – zookeeper поддържа запис на всички транзакции, който може да се използва и за високо ниво.
q. Узи
Това е система за планиране на работни потоци за управление на задания на Apache Hadoop. Той комбинира множество задачи последователно в една логическа единица работа.
Следователно рамката Oozie е напълно интегрирана със стека на Apache Hadoop, YARN като архитектурен център. Той също така поддържа Hadoop задачи за Apache MapReduce, Pig, Hive и Sqoop.
Oozie е мащабируем и също така много гъвкав. Човек може лесно да стартира, спира, спира и възобновява работни места. Следователно Oozie прави много лесно повторното стартиране на неуспешни работни потоци. Възможно е също да пропуснете конкретен неуспешен възел.
Има два основни типа Oozie работни места:
- Oozie работен поток – Той е да съхранява и изпълнява работни потоци, съставени от задачи на Hadoop, напр. MapReduce, Pig, Hive.
- Oozie координатор – Той изпълнява задачи на работния поток въз основа на предварително дефинирани графици и наличност на данни.
Заключение
Следователно, Hadoop Ecosystem предоставя различни компоненти, които я правят толкова популярна. Благодарение на тези компоненти на Hadoop сега са налични няколко работни роли на Hadoop.
Надявам се този урок за екосистема на Hadoop да ви помогне много да разберете семейството на Hadoop и техните роли. Ако намерите някакво запитване, моля, споделете с нас в полето за коментари.