Hadoop 在Java应用程序中设置HDFS连接超时
我使用Hadoop的Hadoop 在Java应用程序中设置HDFS连接超时,hadoop,timeout,hdfs,timeoutexception,socket-timeout-exception,Hadoop,Timeout,Hdfs,Timeoutexception,Socket Timeout Exception,我使用Hadoop的文件系统类删除一些HDFS文件。现在的问题是,客户端的连接超时时间太长,我需要缩短等待超时的时间,以便用户在网络之外时得到更快的响应! 下面是我的代码片段: try { System.setProperty("HADOOP_USER_NAME", "test"); Configuration conf = new Configuration(); File csvFile = new File(pathCsvFile); FileSystem
文件系统类删除一些HDFS文件。现在的问题是,客户端的连接超时时间太长,我需要缩短等待超时的时间,以便用户在网络之外时得到更快的响应!
下面是我的代码片段:
try {
System.setProperty("HADOOP_USER_NAME", "test");
Configuration conf = new Configuration();
File csvFile = new File(pathCsvFile);
FileSystem hdfs = FileSystem.get(new URI(csvFile.getPath(), conf);
if(hdfs.exists(new Path(filterValuesPath))) {
hdfs.delete(new Path(filterValuesPath), true);
setInfo("File deleted!");
} else {
setInfo("No file to delete!");
}
} catch (Exception ex) { // the timeout is too high!!!
ex.printStackTrace();
setInfo("No connection or no files to delete!");
}
在哪里以及如何设置应用程序的超时?我不想在任何Hadoop配置文件中更改它,只想在本地为我的Java应用程序更改它。谢谢大家!