Samouczek HDFS: Wprowadzenie do HDFS i jego funkcji



Ten blog samouczka HDFS pomoże ci zrozumieć HDFS lub rozproszony system plików Hadoop i jego funkcje. W skrócie poznasz również jego podstawowe elementy.

Samouczek HDFS

Zanim przejdę dalej w tym samouczku dotyczącym HDFS, pozwól, że przeprowadzę Cię przez niektóre szalone statystyki związane z HDFS:

co to jest ide w java
  • W 2010, Facebook twierdził, że ma jeden z największych magazynów klastrów HDFS 21 petabajtów danych.
  • W 2012, Facebook zadeklarowali, że mają największy pojedynczy klaster HDFS z ponad 100 PB danych .
  • I Wieśniak ! ma więcej niż 100 000 CPU w ponad 40 000 serwerów z uruchomionym Hadoop, z uruchomionym największym klastrem Hadoop 4500 węzłów . W sumie Yahoo! sklepy 455 petabajtów danych w HDFS.
  • W rzeczywistości do 2013 roku większość znanych nazwisk z listy Fortune 50 zaczęła używać Hadoop.

Zbyt trudne do strawienia? Dobrze. Jak omówiono w , Hadoop ma dwie podstawowe jednostki - S zezłościć się i Przetwarzanie . Kiedy mówię o części Hadoop do przechowywania danych, mam na myśli HDFS co oznacza Rozproszony system plików Hadoop . Tak więc na tym blogu przedstawię ci HDFS .





Tutaj będę mówić o:

  • Co to jest HDFS?
  • Zalety HDFS
  • Funkcje HDFS

Zanim opowiem o HDFS, powiem ci, co to jest rozproszony system plików?



DFS lub rozproszony system plików:

Mówi o rozproszonym systemie plików zarządzający dane czyli pliki lub foldery na wielu komputerach lub serwerach. Innymi słowy, DFS to system plików, który umożliwia nam przechowywanie danych w wielu węzłach lub maszynach w klastrze i umożliwia wielu użytkownikom dostęp do danych. Zasadniczo służy to temu samemu celowi, co system plików, który jest dostępny na twoim komputerze, na przykład w przypadku systemu Windows masz NTFS (system plików nowej technologii) lub na komputerze Mac masz HFS (hierarchiczny system plików). Jedyna różnica polega na tym, że w przypadku rozproszonego systemu plików dane są przechowywane na wielu komputerach, a nie na jednym komputerze. Mimo że pliki są przechowywane w sieci, DFS organizuje i wyświetla dane w taki sposób, że użytkownik siedzący na komputerze będzie miał wrażenie, że wszystkie dane są przechowywane na tym komputerze.

Co to jest HDFS?

Rozproszony system plików Hadoop lub HDFS to rozproszony system plików oparty na języku Java, który umożliwia przechowywanie dużych danych w wielu węzłach w klastrze Hadoop. Tak więc, jeśli zainstalujesz Hadoop, otrzymasz HDFS jako podstawowy system pamięci masowej do przechowywania danych w środowisku rozproszonym.

Weźmy przykład, aby to zrozumieć. Wyobraź sobie, że masz dziesięć maszyn lub dziesięć komputerów z dyskiem twardym o pojemności 1 TB na każdym komputerze. Teraz HDFS mówi, że jeśli zainstalujesz Hadoop jako platformę na tych dziesięciu maszynach, otrzymasz HDFS jako usługę przechowywania. Rozproszony system plików Hadoop jest dystrybuowany w taki sposób, że każda maszyna udostępnia swoją indywidualną pamięć masową do przechowywania dowolnego rodzaju danych.



Samouczek HDFS: zalety HDFS

1. Rozproszone przechowywanie:

Magazyn rozproszony - samouczek HDFS - Edureka

Uzyskując dostęp do rozproszonego systemu plików Hadoop z dowolnej z dziesięciu maszyn w klastrze Hadoop, poczujesz się tak, jakbyś zalogował się na pojedynczej dużej maszynie o pojemności 10 TB (łącznie ponad dziesięć maszyn). Co to znaczy? Oznacza to, że możesz przechowywać pojedynczy duży plik o rozmiarze 10 TB, który będzie dystrybuowany na dziesięciu maszynach (po 1 TB każdy).A więc tak jest nie ogranicza się do fizycznych granic każdej maszyny.

2. Obliczenia rozproszone i równoległe:

Ponieważ dane są podzielone na maszyny, pozwala nam to wykorzystać Obliczenia rozproszone i równoległe . Rozumiemy tę koncepcję na powyższym przykładzie. Załóżmy, że przetworzenie pliku o rozmiarze 1 TB na jednym komputerze zajmuje 43 minuty. A teraz powiedz mi, ile czasu zajmie przetworzenie tego samego pliku o pojemności 1 TB, gdy masz 10 maszyn w klastrze Hadoop o podobnej konfiguracji - 43 minuty lub 4,3 minuty? 4,3 minuty, racja! Co tu się stało? Każdy z węzłów pracuje równolegle z częścią pliku 1 TB. Dlatego praca, która wcześniej trwała 43 minuty, kończy się teraz w zaledwie 4,3 minuty, ponieważ praca została podzielona na dziesięć maszyn.

3. Skalowalność pozioma:

Na koniec porozmawiajmy o skalowanie poziome lub skalowanie w Hadoop. Istnieją dwa rodzaje skalowania: pionowy i poziomy . W przypadku skalowania pionowego (skalowanie w górę) zwiększa się pojemność sprzętowa systemu. Innymi słowy, kupujesz więcej pamięci RAM lub procesora i dodajesz go do istniejącego systemu, aby był bardziej niezawodny i wydajny. Ale są wyzwania związane ze skalowaniem w pionie lub skalowaniem w górę:

  • Zawsze istnieje limit, do którego można zwiększyć pojemność sprzętu. Nie możesz więc dalej zwiększać pamięci RAM ani procesora komputera.
  • W przypadku skalowania pionowego najpierw zatrzymujesz maszynę. Następnie zwiększ ilość pamięci RAM lub procesor, aby uczynić go solidniejszym stosem sprzętowym. Po zwiększeniu pojemności sprzętowej ponownie uruchom komputer. Ten przestój podczas zatrzymywania systemu staje się wyzwaniem.

W przypadku skalowanie poziome (skalowanie na zewnątrz) , dodajesz więcej węzłów do istniejącego klastra zamiast zwiększać pojemność sprzętową poszczególnych komputerów. A co najważniejsze, możesz dodaj więcej maszyn w ruchu czyli bez zatrzymywania systemu . Dlatego podczas skalowania nie mamy żadnych przestojów ani zielonej strefy, nic takiego. Pod koniec dnia będziesz mieć więcej maszyn pracujących równolegle, aby spełnić Twoje wymagania.

Samouczek wideo HDFS:

Możesz obejrzeć poniższy film, w którym szczegółowo omówiono wszystkie koncepcje związane z HDFS:

Samouczek HDFS: Funkcje HDFS

Zrozumiemy te funkcje szczegółowo, gdy będziemy badać architekturę HDFS na naszym następnym blogu samouczkowym dotyczącym HDFS. Ale na razie przyjrzyjmy się funkcjom HDFS:

  • Koszt: Ogólnie HDFS jest wdrażany na standardowym sprzęcie, takim jak komputer stacjonarny / laptop, którego używasz na co dzień. Jest to więc bardzo ekonomiczne pod względem kosztów posiadania projektu. Ponieważ korzystamy z taniego sprzętu, nie musisz wydawać ogromnych pieniędzy na skalowanie klastra Hadoop. Innymi słowy, dodanie większej liczby węzłów do HDFS jest opłacalne.
  • Różnorodność i ilość danych: Kiedy mówimy o HDFS, mówimy o przechowywaniu ogromnych danych, tj. Terabajtów i petabajtów danych oraz różnych rodzajów danych. Możesz więc przechowywać dowolny typ danych w HDFS, czy to ustrukturyzowanych, nieustrukturyzowanych czy półstrukturalnych.
  • Niezawodność i odporność na awarie: Gdy przechowujesz dane w HDFS, wewnętrznie dzieli dane na bloki danych i przechowuje je w sposób rozproszony w całym klastrze Hadoop. Informacje dotyczące tego, który blok danych znajduje się w którym z węzłów danych, są zapisywane w metadanych. NameNode zarządza metadanymi i DataNodes są odpowiedzialni za przechowywanie danych.
    Węzeł nazwy również replikuje dane, tj. Przechowuje wiele kopii danych. Ta replikacja danych sprawia, że ​​HDFS jest bardzo niezawodny i odporny na błędy. Tak więc, nawet jeśli którykolwiek z węzłów ulegnie awarii, możemy odzyskać dane z replik znajdujących się w innych węzłach danych. Domyślnie współczynnik replikacji wynosi 3. Dlatego jeśli przechowujesz 1 GB pliku w HDFS, zajmie on ostatecznie 3 GB miejsca. Węzeł nazwy okresowo aktualizuje metadane i zapewnia spójność współczynnika replikacji.
  • Integralność danych: Integralność danych mówi o tym, czy dane przechowywane w moim HDFS są poprawne, czy nie. HDFS stale sprawdza integralność danych przechowywanych pod kątem ich sumy kontrolnej. Jeśli wykryje błąd, zgłasza go do węzła nazwy. Następnie węzeł nazwy tworzy dodatkowe nowe repliki, a tym samym usuwa uszkodzone kopie.
  • Wysoka przepustowość: Przepustowość to ilość pracy wykonanej w jednostce czasu. Mówi o tym, jak szybko można uzyskać dostęp do danych z systemu plików. Zasadniczo daje wgląd w wydajność systemu. Jak widzieliście w powyższym przykładzie, w którym używaliśmy łącznie dziesięciu maszyn do ulepszenia obliczeń. Tam mogliśmy skrócić czas przetwarzania 43 minuty do zwykłego 4,3 minuty ponieważ wszystkie maszyny pracowały równolegle. Dlatego też, przetwarzając dane równolegle, ogromnie zmniejszyliśmy czas przetwarzania, a tym samym osiągnęliśmy wysoką przepustowość.
  • Lokalizacja danych: Lokalność danych mówi o przenoszeniu jednostki przetwarzającej do danych, a nie danych do jednostki przetwarzającej. W naszym tradycyjnym systemie przenosiliśmy dane do warstwy aplikacji, a następnie je przetwarzaliśmy. Ale teraz, ze względu na architekturę i ogromną ilość danych, przeniesienie danych do warstwy aplikacji będziezmniejszyć wydajność sieci w zauważalnym stopniu.Tak więc w HDFS przenosimy część obliczeniową do węzłów danych, w których znajdują się dane. Dlatego nie przenosisz danych, ale wnosisz program lub procesczęści do danych.

Więc teraz masz krótkie pojęcie o HDFS i jego funkcjach. Ale wierzcie mi, to tylko wierzchołek góry lodowej. W moim następnym , Zagłębię się w Architektura HDFS i ujawnię sekrety sukcesu HDFS. Razem odpowiemy na wszystkie nurtujące Cię w głowie pytania takie jak:

  • Co dzieje się za kulisami, gdy odczytujesz lub zapisujesz dane w rozproszonym systemie plików Hadoop?
  • Jakie algorytmy, takie jak świadomość szafy, sprawiają, że HDFS jest tak odporny na błędy?
  • W jaki sposób rozproszony system plików Hadoop zarządza repliką i tworzy ją?
  • Co to są operacje blokowe?

Teraz, gdy zrozumiałeś HDFS i jego funkcje, sprawdź autorstwa Edureka, zaufanej firmy zajmującej się edukacją online, z siecią ponad 250 000 zadowolonych uczniów rozsianych po całym świecie. Szkolenie Edureka Big Data Hadoop Certification Training pomaga uczniom stać się ekspertami w dziedzinie HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume i Sqoop, wykorzystując przypadki użycia w czasie rzeczywistym w domenie handlu detalicznego, mediów społecznościowych, lotnictwa, turystyki, finansów.

Masz do nas pytanie? Wspomnij o tym w sekcji komentarzy, a my skontaktujemy się z Tobą.