Trong Hadoop, cách hiển thị quy trình hiện tại của -copyFromLocal


10

Tôi vẫn là người mới học Hadoop và lần này tôi đang cố xử lý tệp 106GB. Tôi đã từng -copyFromLocalsao chép tập tin lớn đó vào HFSop DFS của mình, nhưng vì tập tin lớn nên tôi phải chờ rất lâu mà không có manh mối về tình trạng sao chép hiện tại.

Có cách nào để hiển thị trạng thái sao chép tập tin hiện tại với lệnh này không?

Cảm ơn các bạn trước sự giúp đỡ của bạn!

Câu trả lời:


14

CopyFromLocalkhông có khả năng hiển thị tiến trình sao chép tập tin. Ngoài ra, bạn có thể mở một shell khác và chạy $ watch hadoop fs -ls <filenameyouarecopying>. Điều này sẽ hiển thị tệp và kích thước của nó cứ sau 2,0 giây.


1
Nếu nó không được ghi lại thì nó không tồn tại. :-)
SunnyShah 4/03/2015

1

Dường như không có tùy chọn dài dòng cho bất kỳ lệnh sao chép nào (copyFromLocal, copyToLocal, get, put). Đặt cược tốt nhất của bạn có lẽ là xem xét kích thước của tệp tại đích đến trên HDFS để đánh giá tiến trình của nó.


1

Bạn có thể sử dụng "nohup &" để thực hiện sao chép dưới dạng quá trình nền. nohup sẽ làm cho quá trình thực thi ngay cả sau khi bạn đăng xuất khỏi máy chủ. Khi bạn cần, bạn có thể kiểm tra quy trình bằng cách sử dụng "hadoop fs -ls.


1

Cũng có thể theo dõi tiến trình đọc tệp cục bộ bằng cách sử dụng pvlệnh và chuyển nội dung tệp sang hdfs dfsstdin:

pv mylargefile.txt | hdfs dfs -put - /path/to/file/on/hdfs/mylargefile.txt


pvIMO là một công cụ được định giá thấp. Liệu công việc ở đây hoàn hảo.
Michael Mior
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.