Spisu treści:
Wszyscy mówią o Hadoop, nowej, gorącej technologii, która jest bardzo ceniona przez programistów i może po prostu zmienić świat (ponownie). Ale w ogóle co to jest? Czy to jest język programowania? Baza danych? System przetwarzania? Przytulna indyjska herbata?
Ogólna odpowiedź: Hadoop to wszystko (z wyjątkiem przytulnej herbaty) i nie tylko. Jest to biblioteka oprogramowania, która zapewnia platformę programistyczną do taniego, użytecznego przetwarzania innego nowoczesnego modnego hasła: big data.
Skąd się wziął Hadoop?
Apache Hadoop jest częścią projektu Foundation od Apache Software Foundation, organizacji non-profit, której misją jest „dostarczanie oprogramowania dla dobra publicznego”. W związku z tym biblioteka Hadoop jest bezpłatnym oprogramowaniem typu open source dostępnym dla wszystkich programistów.
Technologia leżąca u podstaw Hadoop została wynaleziona przez Google. Na początku niezbyt gigantyczna wyszukiwarka potrzebowała sposobu na zindeksowanie ogromnych ilości danych, które gromadzili z Internetu, i przekształcenia ich w znaczące, odpowiednie wyniki dla użytkowników. Ponieważ na rynku nie ma nic, co mogłoby spełnić ich wymagania, Google zbudowało własną platformę.
Te innowacje zostały wydane w ramach projektu open source o nazwie Nutch, który Hadoop wykorzystał później jako podstawę. Zasadniczo Hadoop stosuje moc Google do dużych zbiorów danych w sposób przystępny dla firm każdej wielkości.
Jak działa Hadoop?
Jak wspomniano wcześniej, Hadoop to nie jedna rzecz - to wiele rzeczy. Biblioteka oprogramowania, którą jest Hadoop, składa się z czterech podstawowych części (modułów) i szeregu dodatkowych rozwiązań (takich jak bazy danych i języki programowania), które zwiększają jego wykorzystanie w świecie rzeczywistym. Cztery moduły to:- Hadoop Common: Jest to zbiór wspólnych narzędzi (wspólnej biblioteki), który obsługuje moduły Hadoop.
- Hadoop Distributed File System (HDFS): Solidny rozproszony system plików bez ograniczeń w zakresie przechowywanych danych (co oznacza, że dane mogą być ustrukturyzowane lub nieustrukturyzowane i pozbawione schematów, w których wiele DFS przechowuje tylko dane ustrukturyzowane), który zapewnia szybki przepływ z redundancją ( HDFS pozwala na przechowywanie danych na wielu komputerach - więc jeśli jeden komputer ulegnie awarii, dostępność jest utrzymywana przez inne komputery).
- Hadoop YARN: Ta struktura jest odpowiedzialna za planowanie zadań i zarządzanie zasobami klastra; zapewnia to, że dane są wystarczająco rozłożone na wiele komputerów, aby utrzymać redundancję. YARN to moduł, dzięki któremu Hadoop jest niedrogim i opłacalnym sposobem przetwarzania dużych zbiorów danych.
- Hadoop MapReduce: ten oparty na technologii YARN system oparty na technologii Google wykonuje równoległe przetwarzanie dużych zbiorów danych (ustrukturyzowanych i nieustrukturyzowanych). MapReduce można również znaleźć w większości współczesnych platform przetwarzania dużych zbiorów danych, w tym baz danych MPP i NoSQL.
Sprzęt, który jest w stanie poradzić sobie z ilością mocy obliczeniowej wymaganej do pracy z dużymi danymi, jest, delikatnie mówiąc, drogi. To jest prawdziwa innowacja Hadoop: zdolność do rozkładania ogromnej ilości mocy obliczeniowej na wielu, mniejszych komputerach, każda z własnym zlokalizowanym obliczeniem i pamięcią, wraz z wbudowaną redundancją na poziomie aplikacji, aby zapobiec awariom.
Co robi Hadoop?
Mówiąc prosto, Hadoop sprawia, że duże zbiory danych są dostępne i użyteczne dla każdego.
Przed Hadoop firmy korzystające z dużych zbiorów danych korzystały głównie z relacyjnych baz danych i hurtowni danych dla przedsiębiorstw (które wykorzystują ogromne ilości drogiego sprzętu). Chociaż narzędzia te doskonale nadają się do przetwarzania danych strukturalnych - czyli danych już posortowanych i zorganizowanych w zarządzalny sposób - możliwości przetwarzania danych nieuporządkowanych były bardzo ograniczone, tak bardzo, że praktycznie nie istniały. Aby były użyteczne, dane musiały być najpierw ustrukturyzowane, aby dobrze pasowały do tabel.
Struktura Hadoop zmienia to wymaganie i robi to tanio. Dzięki Hadoop ogromne ilości danych od 10 do 100 gigabajtów i więcej, zarówno ustrukturyzowanych, jak i nieustrukturyzowanych, można przetwarzać przy użyciu zwykłych serwerów (towarowych).
Hadoop oferuje potencjalne aplikacje Big Data dla firm każdej wielkości, w każdej branży. Struktura open source pozwala firmom finansowym na tworzenie wyrafinowanych modeli oceny portfela i analizy ryzyka, a sprzedawców internetowych na precyzyjne dostosowywanie wyników wyszukiwania i kierowanie klientów w stronę produktów, które chętniej kupią.
Dzięki Hadoop możliwości są naprawdę nieograniczone.