HBase
 sql >> Baza danych >  >> NoSQL >> HBase

Różnica między InputSplit a blokami w Hadoop

W tym samouczku MapReduce omówimy porównanie między MapReduce InputSplit a Blocks w Hadoop . Najpierw zobaczymy, czym są bloki danych HDFS obok tego, czym jest Hadoop InputSplit.

Wtedy zobaczymy mądrą różnicę między InputSplit a Blocks. Na koniec omówimy również przykład bloków Hadoop InputSplit i Data w HDFS.

Wprowadzenie do InputSplit i bloków w Hadoop

Najpierw omówmy, co to są bloki danych HDFS i czym jest Hadoop InputSplit, jeden po drugim.

1. Co to jest blok w HDFS?

Hadoop HDFS dziel duże pliki na małe porcje, znane jako bloki. Zawiera minimalną ilość danych, które można odczytać lub zapisać. HDFS przechowuje każdy plik jako bloki.

Aplikacja Hadoop rozdziela blok danych na wiele węzłów. Klient HDFS nie ma żadnej kontroli nad blokiem, takim jak lokalizacja bloku, Namenode decyduje o wszystkich takich rzeczach.

2. Co to jest InputSplit w Hadoop?

Reprezentuje dane, które poszczególni mapujący procesy. Tak więc liczba zadań mapy jest równa liczbie InputSplits. Framework dzieli się na rekordy, które przetwarzają.

Początkowo pliki wejściowe przechowują dane dla zadania MapReduce. Plik wejściowy zwykle znajduje się w formacie HDFS InputFormat opisuje, jak dzielić i czytać pliki wejściowe. InputFormat jest odpowiedzialny za tworzenie InputSplit.

Porównanie między InputSplit a blokami w Hadoop

Omówmy teraz różnicę między InputSplit a blokami w Hadoop Framework.

1. Reprezentacja danych

  • Zablokuj –  Blok HDFS to fizyczna reprezentacja danych w Hadoop.
  • InputSplit –  MapReduce InputSplit to logiczna reprezentacja danych obecnych w bloku w Hadoop. Zasadniczo jest używany podczas przetwarzania danych w programie MapReduce lub innych technikach przetwarzania. Najważniejszą rzeczą, na której należy się skupić, jest to, że InputSplit nie zawiera rzeczywistych danych; to tylko odniesienie do danych.

2. Rozmiar

  • Zablokuj –  Domyślnie rozmiar bloku HDFS to 128 MB które możesz zmienić zgodnie z wymaganiami. Wszystkie bloki HDFS mają ten sam rozmiar, z wyjątkiem ostatniego bloku, który może mieć ten sam lub mniejszy rozmiar. Framework Hadoop dzieli pliki na bloki 128 MB, a następnie zapisuje je w systemie plików Hadoop.
  • InputSplit –  Rozmiar InputSplit domyślnie jest w przybliżeniu równy rozmiarowi bloku. Jest zdefiniowany przez użytkownika. W programie MapReduce użytkownik może kontrolować podział rozmiaru na podstawie rozmiaru danych.

3. Przykład Block i InputSplit w Hadoop

Załóżmy, że musimy przechowywać plik w HDFS. Hadoop HDFS przechowuje pliki jako bloki. Blok to najmniejsza jednostka danych, którą można przechowywać lub pobierać z dysku.

Domyślny rozmiar bloku to 128 MB. Hadoop HDFS dzieli pliki na bloki. Następnie przechowuje te bloki w różnych węzłach w klastrze.

Na przykład mamy plik o wielkości 132 MB. Więc HDFS podzieli ten plik na 2 bloki.

Teraz, jeśli chcemy wykonać operację MapReduce na blokach, nie zostanie ona przetworzona. Powodem jest to, że blok 2 jest niekompletny. InpuSplit rozwiązuje ten problem.

MapReduce InputSplit utworzy logiczną grupę bloków jako pojedynczy blok. Jako InputSplit zawiera lokalizację następnego bloku i przesunięcie bajtów danych potrzebnych do ukończenia bloku.

Wniosek

Dlatego InputSplit jest tylko logiczną porcją danych, tj. Zawiera tylko informacje o adresie lub lokalizacji bloku. Podczas gdy blok jest fizyczną reprezentacją danych.

Teraz jestem pewien, że po przeczytaniu tego bloga lepiej rozumiesz bloki danych InputSplit i HDFS. Jeśli znajdziesz jakąkolwiek inną różnicę między InputSplit a Blocks, daj nam znać w sekcji komentarzy.


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Blok danych HDFS — poznaj wewnętrzne elementy Big Data Hadoop

  2. Co to są węzły HBase?

  3. Czym jest praca tylko z mapą w Hadoop?

  4. Instrukcje:korzystanie z interfejsu Apache HBase REST, część 3

  5. Przykładowa tabela HBase