9
Tôi muốn đọc tệp từ Hệ thống tệp Hadoop.đường dẫn tệp trong hdfs
Để đạt được đường dẫn chính xác của tệp, tôi cần tên máy chủ và địa chỉ cổng của hdfs
.
nên cuối cùng con đường của tôi về tập tin sẽ giống như thế
Path path = new Path("hdfs://123.23.12.4344:9000/user/filename.txt")
Bây giờ tôi muốn biết để trích xuất các HostName = "123.23.12.4344" & cổng: 9000?
Về cơ bản, tôi muốn truy cập Hệ thống tệp trên Amazon EMR nhưng, khi tôi sử dụng
FileSystem fs = FileSystem.get(getConf());Tôi nhận được
You possibly called FileSystem.get(conf) when you should have called FileSystem.get(uri, conf) to obtain a file system supporting your pathVì vậy, tôi quyết định sử dụng URI. (Tôi phải sử dụng URI) nhưng tôi không chắc chắn cách truy cập URI.
Cảm ơn cho điều này! Nó đã giúp, bạn có thể giải thích tại sao điều này? – ruralcoder
Hadoop có một nhà máy FileSystem. Nó tạo ra hệ thống tệp chính xác dựa trên lược đồ URI và có thể là phần thẩm quyền của URI. Bạn có thể xem liệu bạn có mở tệp trên tệp: //, s3: // hoặc hdfs: // bạn sẽ cần một hệ thống tệp khác cho mỗi tệp. Đó là lý do tại sao bạn cần bao gồm URI – Wheezil
fs.default.name không được chấp nhận, mọi người đọc câu hỏi này nên sử dụng fs.defaultFS để thay thế. – chomp