/ / hive i skrypty unixowe - unix, hadoop, hive

skrypty hive i unix - unix, hadoop, hive

mam plik csv i CTL z informacjami o pliku, takimi jak nazwy kolumn, rozmiar, rząd wierszy, lokalizacja

Muszę to załadować ul i utwórz plik ctl dla tabeli ula

i sprawdź, czy oba pliki ctl pasują czy nie

Myślę o napisaniu skrypt bash aby wyodrębnić informacje z tablicy ula z polecenia ula "opisz sformatowaną tablename" i tworzenie kolejnego pliku ctl i porównywanie obu plików CTl.

nie jestem pewien składni skryptów, ale myślę, że można to osiągnąć

czy istnieje inny sposób uzyskania informacji o tablicy ula lub inny sposób dla całego podejścia

Odpowiedzi:

0 dla odpowiedzi № 1

Aby uzyskać tylko nazwy kolumn

hive -e "describe <table_name>"|awk -F" " "{ print $1 }"

Jeśli chcesz przekierować do pliku

hive -e "describe <table_name>"|awk -F" " "{ print $1 }" >> describe.txt

0 dla odpowiedzi nr 2

1) podać pełną informację o CTLplik. 2) parsuj plik ctl csv i stwórz na nim tabelę A w oparciu o to 3) używając tego samego parsera utwórz tabelę B z drugą tabelą ctl 4) uruchom "opisz sformatowaną tabelę A i tabelę B usuwając wpisy takie jak: CreateTime: LastAccessTime Location i umieść je w pliku 5) znajdź różnicę każdego pliku

prawdopodobnie jeśli możesz podać więcej szczegółów na temat tego, jak pliki są przykładowe, możemy przygotować skrypty bash, aby je zautomatyzować.

podaj tutaj wynik nazwy tabeli pulpitu, aby uzyskać skrypt basha, aby uzyskać nazwy kolumn