Nadal jestem uczniem Hadoopa dla początkujących i tym razem próbowałem przetworzyć plik o pojemności 106 GB. Kiedyś -copyFromLocal
kopiowałem ten duży plik do mojego systemu plików Hadoop DFS, ale ponieważ plik jest duży, muszę długo czekać bez pojęcia o bieżącym stanie kopiowania.
Czy za pomocą tego polecenia można wyświetlić bieżący stan kopiowania plików?
Z góry dziękuję wam za pomoc!
Możliwe jest również śledzenie postępu odczytu pliku lokalnego za pomocą
pv
polecenia i potokowanie zawartości pliku dohdfs dfs
standardowego wejścia:pv mylargefile.txt | hdfs dfs -put - /path/to/file/on/hdfs/mylargefile.txt
źródło
pv
jest tak niedocenianym narzędziem IMO. Doskonale spełnia swoją rolę.Nie wygląda na to, że istnieje żadna pełna opcja dla każdego polecenia kopiowania (copyFromLocal, copyToLocal, get, put). Najlepiej jest spojrzeć na rozmiar pliku w miejscu docelowym na HDFS, aby ocenić jego postęp.
źródło
Możesz użyć „nohup &”, aby wykonać kopiowanie jako proces w tle. nohup sprawi, że proces zostanie wykonany nawet po wylogowaniu z serwera. Gdy zajdzie taka potrzeba, możesz sprawdzić proces za pomocą „hadoop fs -ls.
źródło