9
में फ़ाइल पथ मैं हैडोप फ़ाइल सिस्टम से फ़ाइल को पढ़ना चाहता हूं।एचडीएफएस
फ़ाइल के सही पथ को प्राप्त करने के लिए, मुझे hdfs
का होस्ट नाम और पोर्ट पता चाहिए।
तो अंत में फ़ाइल की मेरी पथ
Path path = new Path("hdfs://123.23.12.4344:9000/user/filename.txt")
अब मैं चाहता हूँ कुछ इस तरह दिखाई होस्टनाम = "123.23.12.4344" & बंदरगाह को निकालने के लिए पता करने के लिए होगा: 9000?
असल में, मैं अमेज़ॅन ईएमआर पर फाइलसिस्टम का उपयोग करना चाहता हूं, लेकिन जब मैं
FileSystem fs = FileSystem.get(getConf());का उपयोग करता हूं तो मुझे
You possibly called FileSystem.get(conf) when you should have called FileSystem.get(uri, conf) to obtain a file system supporting your pathमिलता है इसलिए मैंने यूआरआई का उपयोग करने का निर्णय लिया। (मुझे यूआरआई का उपयोग करना है) लेकिन मुझे यकीन नहीं है कि यूआरआई कैसे पहुंचे।
इस के लिए धन्यवाद! इससे मदद मिली, क्या आप समझा सकते हैं कि यह क्यों है? – ruralcoder
हैडोप में एक फाइलसिस्टम फैक्ट्री है। यह यूआरआई योजना के आधार पर सही फाइल सिस्टम बनाता है, और शायद यूआरआई का प्राधिकरण हिस्सा। आप देख सकते हैं कि क्या आप फ़ाइल पर फ़ाइल खोलना चाहते हैं: //, s3: // या hdfs: // आपको प्रत्येक के लिए एक अलग फ़ाइल सिस्टम की आवश्यकता होगी। यही कारण है कि आप यूआरआई – Wheezil
fs.default.name शामिल करने के लिए हटा दिया गया है, इस सवाल के हर पाठक fs.defaultFS बजाय का उपयोग करना चाहिए की जरूरत है। – chomp