CDOArchitektura ITPolecane tematy

Platforma Apache Hadoop: jakie miejsce może zająć w istniejącej infrastrukturze IT

Nowe i rewolucyjne koncepcje związane z technologiami IT w biznesie niemal zawsze powodują powstanie niezliczonej liczby dyskusji na temat zasadności ich zastosowania w środowisku IT. Konkluzją z tego typu dywagacji mogłoby być stwierdzenie, iż każda zaangażowana osoba układa w myślach zbiór pod tytułem „co jeszcze chciałbym wiedzieć, ale o co boję się zapytać”. Naturalnym jest, że część tego typu pytań wiąże się z obawami przed nowym i nieznanym obszarem, które pojawiają się bazując na doświadczeniach z dotychczas wykorzystywanymi technologiami.

Platforma Apache Hadoop: jakie miejsce może zająć w istniejącej infrastrukturze IT

Część z naszych poprzednich artykułów w ramach cyklu „Odczarowując Big Data” opisywała metodykę i konkretne rozwiązania, jakie mogą zostać użyte przy tworzeniu środowiska Big Data. Niniejszy artykuł ma na celu rozprawić się z mitami, jakie najczęściej pojawiają się przy pierwszym kontakcie z platformą Apache Hadoop – często stosowanej w tego typu projektach – i próbie określenia jakie miejsce taka platforma może zająć w istniejącej infrastrukturze IT.

Hadoop czyli rozwiązania Plug & Play

Apache Hadoop rozumiany jest nie tylko jako połączenie warstwy przechowywania danych (HDFS) i frameworka przetwarzania danych w trybie wsadowym (MapReduce). Jest to pełny ekosystem połączonych i uzupełniających się wzajemnie narzędzi i komponentów. Zainteresował on nie tylko entuzjastów technologii open-source, ale również wielkie koncerny IT.

Wspomniane w cyklu naszych artykułów organizacje pracujące nad unifikacją standardów platformy dały możliwość przygotowania platform i urządzeń typu appliances do przetwarzania danych największym graczom na rynku. Kluczowym jest tutaj określenie appliance, które w wielu przypadkach (urządzeń sieciowych, bezpieczeństwa sieci, czy też równoważenia obciążenia) są traktowane jako przykłady urządzeń typu Plug & Play. Po podłączeniu do infrastruktury wymagają więc relatywnie niewielkich zabiegów konfiguracyjnych, aby wykonywać charakterystyczne dla siebie funkcje.

Apache Hadoop rozumiany jest nie tylko jako połączenie warstwy przechowywania danych (HDFS) i frameworka przetwarzania danych w trybie wsadowym (MapReduce). Jest to pełny ekosystem połączonych i uzupełniających się wzajemnie narzędzi i komponentów. Zainteresował on nie tylko entuzjastów technologii open-source, ale również wielkie koncerny IT.

Przypadek platformy Hadoop należy rozważać – podobnie, jak kwestię wdrożenia narzędzia, a nie gotowego remedium na konkretny przypadek użycia. Użytkownik otrzymuje platformę, a konkretne algorytmy przetwarzania danych – dedykowane dla zdefiniowanego problemu – muszą zostać utworzone niezależnie i adekwatnie do potrzeb. Fakt to jest czy mit? Mit.

Zapewnienie bezpieczeństwa dostępu do danych na platformie Hadoop jest sporym wyzwaniem

Każdy komponent znajdujący zastosowanie w infrastrukturze IT przedsiębiorstwa wymaga zastosowania odpowiednich procedur i polityk związanych z bezpieczeństwem, w szczególności, jeśli będzie miejscem, gdzie dane będą przechowywane w sposób nieulotny. Kontrola dostępu na każdym możliwym poziomie: aplikacyjnym, komunikacyjnym czy sieciowym jest odzwierciedleniem wypracowanych przez organizacje standardów, a więc w każdym przypadku jest nieco inna, pomimo, iż zmierza do tego samego celu.  Mając na uwadze implementację nowego systemu bazodanowego, czy też serwera aplikacji webowych, architekt rozwiązania zdaje sobie sprawę z konieczności określenia ról użytkowników, integracji z repozytorium poświadczeń, czy też konieczność szyfrowania połączeń do interfejsu użytkownika. Ponadto, mechanizm komunikacji i integracji z systemami opiera się na podobnym standardzie, a więc zabezpieczenia na poziomie sieciowym skupiają się na ograniczonej liczbie portów i adresów, charakterystycznych dla użytej technologii.

W przypadku platformy Apache Hadoop, mamy do czynienia z całym ekosystemem powiązanych ze sobą wzajemnie komponentów i frameworków, a każdy z nich posiada szereg interfejsów (interfejsy użytkownika, API, wymiana metadanych, etc.). Można zatem stwierdzić, że stopień skomplikowania polityki bezpieczeństwa będzie wzrastał proporcjonalnie do ilości zastosowanych w ramach ekosystemu komponentów.

Istotnym ułatwieniem tego nietrywialnego zadania są komponenty wchodzące w skład platformy, których zadaniem jest ujednolicać dostęp do usług i pełnić rolę pojedynczego punktu dostępowego (single-point-of-access) nawet dla więcej niż jednego środowiska. Naturalnie, posiadanie tego typu komponentu upraszcza wiele kwestii, ale jednocześnie tworzy kolejne elementy, które muszą zostać zaadresowane przez nowo tworzone polityki bezpieczeństwa. Fakt czy mit? Fakt.

Hadoop zastępuje Hurtownie Danych

Organizacje, które decydują się zrobić krok w kierunku rozpoznania możliwości, jakie daje platforma Apache Hadoop często bardzo intensywnie wykorzystują możliwości klasycznych hurtowni danych, które wiążą się ze znacznymi inwestycjami finansowymi. Zrozumiała jest zatem obawa, że wdrożenie nowej platformy spowoduje umniejszenie roli hurtowni i nakładów finansowych oraz pracochłonności jakie pochłonęło jej wdrożenie.

W przypadku platformy Apache Hadoop, mamy do czynienia z całym ekosystemem powiązanych ze sobą wzajemnie komponentów i frameworków, a każdy z nich posiada szereg interfejsów (interfejsy użytkownika, API, wymiana metadanych, etc.). Można zatem stwierdzić, że stopień skomplikowania polityki bezpieczeństwa będzie wzrastał proporcjonalnie do ilości zastosowanych w ramach ekosystemu komponentów.

W rzeczywistości, jedną z możliwości jaką daje wdrożenie ekosystemu Apache Hadoop jest odciążenie hurtowni, a tym samym uzupełnienie jej funkcjonalności. Mówimy w tym miejscu, o wyładowaniu danych z hurtowni, szybszym ich przetwarzaniu oraz udostępnianiu dla zespołów analitycznych, poprzez umożliwienie wykonywania zapytań ad-hoc, nie angażując zespołów IT do tworzenia skomplikowanych zapytań i przygotowywania data martów. Fakt czy mit? Mit.

Ładowanie danych do platformy Apache Hadoop jest procesem żmudnym i zakłócającym pracę istniejących systemów

Rozważając wdrożenie platformy Apache Hadoop jedno z pierwszych wyzwań, z jakimi mierzy się użytkownik to oczywiście kwestia zasilenia systemu danymi. Jeśli powodem, dla którego organizacja zdecydowała się na zastosowanie w swoich strukturach tej klasy systemu była koncepcja Data Lake, zakres systemów źródłowych nie ogranicza się do pojedynczych aplikacji. Naturalnymi dylematami, jakie się pojawiają są zagadnienia eksportu danych z istniejących systemów, kompatybilności z nowym środowiskiem, czy też kwestia spójności danych pomiędzy platformami.

Platforma Apache Hadoop nie jest pojedynczym komponentem, ale ich zestawem, a zatem istnieje wiele możliwości importu danych. Jedną z możliwości jest odczyt informacji bezpośrednio z istniejących relacyjnych baz danych i ich załadowanie korzystając z równoległości wykonywania zadań, leżącej u podstaw ekosystemu. Co więcej zadania tego typu mogą zostać zaplanowane i wyzwalane regularnie zgodnie z określonym interwałem czasowym, co sprawia, że praca na platformie zawsze odbywać się będzie w oparciu o aktualne i spójne dane.

Przewagą systemu Hadoop jest możliwość łączenia danych z rozmaitych źródeł, a więc nie tylko z klasycznych, ustrukturyzowanych baz relacyjnych. Wykorzystanie technologii opartych o komunikaty, pozwala w łatwy sposób buforować informacje szybkozmienne, pochodzące ze strumieni danych, dla których zakłada się bardzo często szybkie przetwarzanie w pamięci operacyjnej. Występujące w ramach ekosystemu bazy typu NoSQL udostępniają też niezwykle wygodne interfejsy ładowania danych, o niejednolitej strukturze, co sprawia, że informacje o aktywności użytkownika na stronach internetowych organizacji, czy też pochodzące z sieci społecznościowych mogą znaleźć się w strukturach ekosystemu szybko i bez większych nakładów w zakresie pracochłonności. Fakt czy mit? Mit.

Data Lake oparty na Apache Hadoop wspiera podejście multitenancy

Projektując i implementując rozwiązanie, które ma w założeniu spełniać rolę Jeziora Danych dla całej organizacji, nie sposób nie wspomnieć o kwestii odbiorców zgromadzonych informacji. Ma to szczególne znaczenie w przypadku, kiedy przedsiębiorstwo skupia wiele podmiotów realizujących odmienne cele biznesowe, ale które muszą w wielu wypadkach opierać się na tych samych danych źródłowych. Do niedawna częstym zabiegiem było duplikowanie pewnych informacji w wielu systemach IT, podyktowane głównie kwestiami bezpieczeństwa i przyporządkowania ról użytkowników do określonych fragmentów infrastruktury.

Rozważając wdrożenie platformy Apache Hadoop jedno z pierwszych wyzwań, z jakimi mierzy się użytkownik to kwestia zasilenia systemu danymi. Jeśli powodem, dla którego organizacja zdecydowała się na zastosowanie w swoich strukturach Apache Hadoop była koncepcja Data Lake, zakres systemów źródłowych nie ogranicza się do pojedynczych aplikacji. Naturalnymi dylematami, jakie się pojawiają są zagadnienia eksportu danych z istniejących systemów, kompatybilności z nowym środowiskiem, czy też kwestia spójności danych pomiędzy platformami.

Jak zatem sprawdzać się będzie w tej roli jeden, wspólny zbiór danych? Odpowiedź na to pytanie musi być całkowicie zgodna z oczekiwaniami użytkowników wobec systemu Big Data i brzmieć: „doskonale”. Czy tak jest w rzeczywistości? Implementacja poszczególnych komponentów wchodzących w skład platformy daje możliwość wysokiego stopnia granulacji uprawnień do danych, jak i zasobów, dzięki którym mogą one być przetwarzane. Efektem jest zarówno brak możliwości nieuprawnionej ingerencji w składowane dane, jak również sposobność niezależnej i niezakłóconej pracy użytkowników, wykorzystujących potencjał całości rozwiązania dla potrzeb biznesowych jednostki swojej organizacji. Fakt czy mit? Fakt.

Liczba pytań, jakie pojawiają się w związku z technologiami, zaliczanymi do trendu Big Data jest ogromna i z każdą pojawiającą się nowinką systematycznie wzrasta. Jest to też związane z coraz większą liczbą oczekiwań, jakie użytkownicy biznesowi stawiają przed wdrażanymi w ich organizacjach rozwiązaniami tej klasy. Nie sposób odpowiedzieć na wszystkie, jednakże spora część wątpliwości zostaje rozwiana, w momencie bezpośredniego zetknięcia z technologią i po zaobserwowaniu jej możliwości i efektów działania w rzeczywistości.

Michał Bochenek, Hadoop Wizard w SILMINE

 

Tagi

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *