Mam kilka plików zip CSV, z których chcę utworzyć tabelę Hive. Próbuję dowiedzieć się, jaki jest najlepszy sposób na zrobienie tego.
- Rozpakuj pliki, prześlij je do HDFS.
- Czy istnieje sposób na skopiowanie plików do HDFS, rozpakuj plik
- Czy jest jakiś inny lepszy / zalecany sposób?
Odpowiedzi:
2 dla odpowiedzi № 1Powszechną praktyką jest przekształcanie plików CSV na oddzielone tabulatorami lub Ctrl A lub Ctrl B, a następnie przesłanie ich do Hadoop / Hive.
Aby przesłać pliki do HDFS możesz użyć następującego polecenia -
hadoop fs -put file_to_uplload ścieżka hdfs_path
Zakładam, że chciałbyś to zautomatyzować. W takim przypadku pomocne będą następujące instrukcje.
Utwórz tabelę ula z mapowaniem kolumn do plików CSV (w tym kroku możesz usunąć niepotrzebne pola). Wybierz separator w hive utwórz instrukcję tabeli.
Konwertuj pliki CSV do formatu rozdzielanego (Ctrl A lub Ctrl B)
- Prześlij pliki do lokalizacji tabeli ula.
Możesz zautomatyzować kroki, używając skryptów / frameworku przetwarzania wsadowego Pythona.
Do dalszego czytania: http://wiki.apache.org/hadoop/Hive/GettingStarted