में एचडीएफएस के रूप में सेट नहीं कर सकता है। मैं छद्म-वितरित मोड में हैडोप 1.0.3 का उपयोग कर रहा हूं। और मेरा conf/core-site.xml निम्नानुसार सेट है:हडोप: मूल फ़ाइल सिस्टम को कोर-साइट.एक्सएमएल
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>mapred.child.tmp</name>
<value>/home/administrator/hadoop/temp</value>
</property>
</configuration>
इसलिए मेरा मानना था कि मेरा डिफ़ॉल्ट फाइल सिस्टम एचडीएफएस पर सेट है। हालांकि, जब मैं निम्नलिखित कोड चलाएँ:
Configuration conf = new Configuration();
FileSystem fs = FileSystem.get(conf);
मैंने सोचा था कि FS एक DistributedFileSystem
उदाहरण होना चाहिए। हालांकि, यह LocalFileSystem
उदाहरण हो गया है।
लेकिन, अगर मैं निम्नलिखित कोड चलाएँ:
Configuration conf = new Configuration();
conf.set("fs.default.name", "hdfs://localhost:9000");
FileSystem fs = FileSystem.get(conf);
तो मैं एक DistributedFileSystem
FS मिल सकती है।
क्या मेरा डिफ़ॉल्ट फ़ाइल सिस्टम कोर-साइट.एक्सएमएल में एचडीएफएस पर सेट नहीं है? यदि नहीं, तो मुझे इसे कैसे सेट करना चाहिए?
आप अपना काम कैसे चला रहे/लॉन्च कर रहे हैं? क्या आप अधिक कोड पोस्ट कर सकते हैं? –
@ChrisWhite क्या यह मेरा काम कैसे चलाता है इससे प्रभावित है? मेरे कोर-साइट.एक्सएमएल ठीक से लोड होने के बाद डिफ़ॉल्ट फ़ाइल सिस्टम को hdfs पर सेट नहीं किया जाना चाहिए? – Denzel
हां, लेकिन यदि आप अपने ऐप को 'जावा myjar.jar ...' के बजाय 'हूओप जार myjar.jar' के बजाय लॉन्च कर रहे हैं ... तो कोर-साइट.एक्सएमएल क्लासपाथ पर नहीं हो सकता है, और इसलिए ' लोड नहीं किया जाएगा। Conf ऑब्जेक्ट बनाने के बाद अपने कोड में 'fs.default.name' के मान को आज़माएं और आउटपुट करें। –