亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用Java在hdfs中寫入文件

使用Java在hdfs中寫入文件

慕的地6264312 2019-10-19 15:10:55
我想在HDFS中創建文件并在其中寫入數據。我使用以下代碼:Configuration config = new Configuration();     FileSystem fs = FileSystem.get(config); Path filenamePath = new Path("input.txt");  try {    if (fs.exists(filenamePath)) {        fs.delete(filenamePath, true);    }    FSDataOutputStream fin = fs.create(filenamePath);    fin.writeUTF("hello");    fin.close();}它創建文件,但不寫任何東西。我搜索了很多,但沒有找到任何東西。我怎么了 我是否需要任何許可才能在HDFS中寫入?謝謝。
查看完整描述

3 回答

?
30秒到達戰場

TA貢獻1828條經驗 獲得超6個贊

HADOOP_CONF_DIR在您的Hadoop配置文件夾中定義環境變量,或者在代碼中添加以下兩行:


config.addResource(new Path("/HADOOP_HOME/conf/core-site.xml"));

config.addResource(new Path("/HADOOP_HOME/conf/hdfs-site.xml"));

如果不添加它,則客戶端將嘗試寫入本地FS,從而導致權限被拒絕的異常。


查看完整回答
反對 回復 2019-10-19
?
慕森卡

TA貢獻1806條經驗 獲得超8個贊

請嘗試以下方法。


FileSystem fs = path.getFileSystem(conf);

SequenceFile.Writer inputWriter = new SequenceFile.Writer(fs, conf, path, LongWritable.class, MyWritable.class);

inputWriter.append(new LongWritable(uniqueId++), new MyWritable(data));

inputWriter.close();


查看完整回答
反對 回復 2019-10-19
  • 3 回答
  • 0 關注
  • 2838 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號