Istnieje wiele classes
realizacji InputFormat
CombineFileInputFormat, CombineSequenceFileInputFormat,
CombineTextInputFormat, CompositeInputFormat, DBInputFormat,
FileInputFormat, FixedLengthInputFormat, KeyValueTextInputFormat,
MultiFileInputFormat, NLineInputFormat, Parser.Node,
SequenceFileAsBinaryInputFormat, SequenceFileAsTextInputFormat,
SequenceFileInputFilter, SequenceFileInputFormat, TextInputFormat
Zapraszamy do obejrzenia tej article na kiedy używać jaki rodzaj Inputformat
.
Spośród nich najczęściej stosowane formats
są:
FileInputFormat
: klasa bazowa dla wszystkich InputFormats opartych na plikach
KeyValueTextInputFormat
: AN InputFormat dla plików tekstowych. Pliki są podzielone na linie. Zarówno podawanie linii, jak i powrót karetki są używane do sygnalizowania końca linii. Każda linia jest podzielona na część klucz i wartość przez bajt separatora. Jeśli taki bajt nie istnieje, kluczem będzie cała linia, a wartość będzie pusta.
TextInputFormat
: InputFormat dla plików tekstowych. Pliki są podzielone na linie. Krotność linii lub powrót karetki są używane do sygnalizowania końca linii. Klucze są pozycją w pliku, a wartością jest linia tekstu.
NLineInputFormat
: NLineInputFormat, który dzieli N linii jako jeden podział. W wielu "przyjemnie" równoległych aplikacjach każdy proces/odwzornik przetwarza te same pliki wejściowe, ale z obliczeniami są kontrolowane przez różne parametry.
SequenceFileInputFormat
: InputFormat dla plików sekwencji.
Jeśli chodzi o drugie zapytanie, najpierw pobierz pliki ze zdalnego servers
i użyj odpowiedniego InputFileFormat
w zależności od zawartości pliku. Hadoop
działa najlepiej dla lokalizacji danych.
Co z drugim pytaniem? Czy jest na to jakieś rozwiązanie? – Trams