List of usage examples for org.apache.hadoop.fs FileSystem exists
public boolean exists(Path f) throws IOException
From source file:com.bigdog.hadoop.mapreduce.combine.WordCountCombineApp.java
public void combine() throws Exception { Configuration conf = new Configuration(); final FileSystem fileSystem = FileSystem.get(new URI(INPUT_PATH), conf); final Path outPath = new Path(OUT_PATH); if (fileSystem.exists(outPath)) { fileSystem.delete(outPath, true); }/*from ww w . ja v a 2 s. co m*/ final Job job = new Job(conf, WordCountCombineApp.class.getSimpleName()); //1.1?? FileInputFormat.setInputPaths(job, INPUT_PATH); //???? //job.setInputFormatClass(TextInputFormat.class); //1.2 map job.setMapperClass(MyMapper.class); //map<k,v><k3,v3><k2,v2>?? //job.setMapOutputKeyClass(Text.class); //job.setMapOutputValueClass(LongWritable.class); //1.3 //job.setPartitionerClass(HashPartitioner.class); //reduce? //job.setNumReduceTasks(1); //1.4 TODO ?? //1.5 job.setCombinerClass(MyCombiner.class); //2.2 reduce job.setReducerClass(MyReducer.class); //reduce job.setOutputKeyClass(Text.class); job.setOutputValueClass(LongWritable.class); //2.3 FileOutputFormat.setOutputPath(job, outPath); //? //job.setOutputFormatClass(TextOutputFormat.class); //job??JobTracker? job.waitForCompletion(true); }
From source file:com.bigdog.hadoop.mapreduce.counter.WordCountCounterApp.java
public void CustomerCounter() throws Exception { Configuration conf = new Configuration(); final FileSystem fileSystem = FileSystem.get(new URI(INPUT_PATH), conf); final Path outPath = new Path(OUT_PATH); if (fileSystem.exists(outPath)) { fileSystem.delete(outPath, true); }//from w ww .j a v a2 s .co m final Job job = new Job(conf, WordCountCounterApp.class.getSimpleName()); //1.1?? FileInputFormat.setInputPaths(job, INPUT_PATH); //???? //job.setInputFormatClass(TextInputFormat.class); //1.2 map job.setMapperClass(MyMapper.class); //map<k,v><k3,v3><k2,v2>?? //job.setMapOutputKeyClass(Text.class); //job.setMapOutputValueClass(LongWritable.class); //1.3 //job.setPartitionerClass(HashPartitioner.class); //reduce? //job.setNumReduceTasks(1); //1.4 TODO ?? //1.5 TODO //2.2 reduce job.setReducerClass(MyReducer.class); //reduce job.setOutputKeyClass(Text.class); job.setOutputValueClass(LongWritable.class); //2.3 FileOutputFormat.setOutputPath(job, outPath); //? //job.setOutputFormatClass(TextOutputFormat.class); //job??JobTracker? job.waitForCompletion(true); }
From source file:com.bigdog.hadoop.mapreduce.group.GroupApp.java
public void group() throws Exception { final Configuration configuration = new Configuration(); final FileSystem fileSystem = FileSystem.get(new URI(INPUT_PATH), configuration); if (fileSystem.exists(new Path(OUT_PATH))) { fileSystem.delete(new Path(OUT_PATH), true); }//from ww w.j a va2 s . com final Job job = new Job(configuration, GroupApp.class.getSimpleName()); //1.1 FileInputFormat.setInputPaths(job, INPUT_PATH); //?? job.setInputFormatClass(TextInputFormat.class); //1.2Mapper job.setMapperClass(MyMapper.class); //<k2,v2> job.setMapOutputKeyClass(NewK2.class); job.setMapOutputValueClass(LongWritable.class); //1.3 job.setPartitionerClass(HashPartitioner.class); job.setNumReduceTasks(1); //1.4 TODO ?? job.setGroupingComparatorClass(MyGroupingComparator.class); //1.5 TODO ?? //2.2 reduce job.setReducerClass(MyReducer.class); //<k3,v3> job.setOutputKeyClass(LongWritable.class); job.setOutputValueClass(LongWritable.class); //2.3 FileOutputFormat.setOutputPath(job, new Path(OUT_PATH)); //? job.setOutputFormatClass(TextOutputFormat.class); //???JobTracker job.waitForCompletion(true); }
From source file:com.bizosys.hsearch.console.ui.SearchServlet.java
License:Apache License
public void actionCreate(HttpServletRequest req, String projectName, String webappsClassDirPath, String schemaFileLoc) throws FileNotFoundException, UnsupportedEncodingException, IOException { String schemaXmlContent = req.getParameter("schema"); schemaXmlContent = (null == schemaXmlContent) ? StringUtils.Empty : schemaXmlContent.trim(); if (schemaXmlContent.length() == 0) throw new RuntimeException("Schema content is missing."); File schemaFile = new File(schemaFileLoc); PrintWriter writer = null;/*from w w w . j a v a 2s . co m*/ FileWriter fw = null; try { writer = new PrintWriter(schemaFile, "UTF-8"); writer.write(schemaXmlContent); writer.flush(); SetupServlet.create(projectName); File prjectFile = new File(webappsClassDirPath + "/projects.txt"); fw = new FileWriter(prjectFile, true); fw.write(projectName); fw.write('\n'); } finally { if (null != writer) writer.close(); if (null != fw) { fw.flush(); fw.close(); } } if (schemaFile.exists()) { FileSystem fs = null; FSDataOutputStream hdfsFile = null; try { fs = FileSystem.get(conf); Path schemaHdfsFilePath = new Path(schemaFile.getName()); hdfsFile = fs.create(schemaHdfsFilePath, fs.exists(schemaHdfsFilePath)); hdfsFile.write(FileReaderUtil.getBytes(new File(schemaFile.getAbsolutePath()))); } catch (Exception ex) { throw new IOException( "Unable to create @ hadoop Please check permission on dfs " + schemaFile.getName(), ex); } finally { if (null != hdfsFile) hdfsFile.close(); if (null != fs) fs.close(); } } }
From source file:com.bizosys.hsearch.console.ui.SearchServlet.java
License:Apache License
private String getFileData(String path, int readLineCount) throws IOException { StringBuilder sb = new StringBuilder(); BufferedReader br = null;//from w ww . j av a2 s.com FileSystem fs = null; int lineNo = 1; try { Path hadoopPath = new Path(path); fs = FileSystem.get(conf); if (fs.exists(hadoopPath)) { br = new BufferedReader(new InputStreamReader(fs.open(hadoopPath))); String line = null; boolean first = true; while ((line = br.readLine()) != null) { if (lineNo > readLineCount) break; if (first) first = false; else sb.append('\n'); sb.append(line); lineNo++; } } } catch (FileNotFoundException fex) { System.err.println("Cannot read from path " + path); throw new IOException(fex); } catch (Exception pex) { System.err.println("Error : " + path); throw new IOException(pex); } finally { if (null != br) try { br.close(); } catch (Exception e) { } if (null != fs) try { fs.close(); } catch (Exception e) { } } return sb.toString(); }
From source file:com.bizosys.hsearch.console.ui.SearchServlet.java
License:Apache License
private String getFileData(String path) throws IOException { StringBuilder sb = new StringBuilder(); BufferedReader br = null;// www.ja v a2 s .c o m FileSystem fs = null; try { Path hadoopPath = new Path(path); fs = FileSystem.get(conf); if (fs.exists(hadoopPath)) { br = new BufferedReader(new InputStreamReader(fs.open(hadoopPath))); String line = null; boolean first = true; while ((line = br.readLine()) != null) { if (first) first = false; else sb.append('\n'); sb.append(line); } } } catch (FileNotFoundException fex) { System.err.println("Cannot read from path " + path); throw new IOException(fex); } catch (Exception pex) { System.err.println("Error : " + path); throw new IOException(pex); } finally { if (null != br) try { br.close(); } catch (Exception e) { } if (null != fs) try { fs.close(); } catch (Exception e) { } } return sb.toString(); }
From source file:com.bizosys.hsearch.kv.indexer.KVIndexer.java
License:Apache License
public static FieldMapping createFieldMapping(Configuration conf, String path, StringBuilder sb) throws IOException { try {/*from www .j a v a2s . c o m*/ FieldMapping fm = null; BufferedReader br = null; Path hadoopPath = new Path(path); FileSystem fs = FileSystem.get(conf); if (fs.exists(hadoopPath)) { br = new BufferedReader(new InputStreamReader(fs.open(hadoopPath))); String line = null; while ((line = br.readLine()) != null) { sb.append(line); } fm = new FieldMapping(); fm.parseXMLString(sb.toString()); } else { fm = FieldMapping.getInstance(path); } IdSearchLog.l.debug("Field mapping instance create for " + path); return fm; } catch (FileNotFoundException fex) { System.err.println("Cannot read from path " + path); throw new IOException(fex); } catch (ParseException pex) { System.err.println("Cannot Parse File " + path); throw new IOException(pex); } catch (Exception pex) { System.err.println("Error : " + path); throw new IOException(pex); } }
From source file:com.bizosys.hsearch.kv.indexing.KVReplicatorMapFile.java
License:Apache License
@Override public int run(String[] args) throws Exception { int seq = 0;/*www .j a v a 2 s. co m*/ String inputFile = (args.length > seq) ? args[seq] : ""; seq++; String outputFile = (args.length > seq) ? args[seq++] : "/tmp/hsearch-index"; String outputFileName = (args.length > seq) ? args[seq++] : "file1"; String xmlFilePath = (args.length > seq) ? args[seq++] : ""; String replaceFrom = (args.length > seq) ? args[seq++] : ""; String replaceTo = (args.length > seq) ? args[seq++] : ""; String startIndex = (args.length > seq) ? args[seq++] : ""; String endIndex = (args.length > seq) ? args[seq++] : ""; String numberOfReducerStr = (args.length > seq) ? args[seq] : "1"; int numberOfReducer = Integer.parseInt(numberOfReducerStr); if (null == inputFile || inputFile.trim().isEmpty()) { String err = KVReplicatorHFile.class + " > Please enter input file path."; System.err.println(err); throw new IOException(err); } Configuration conf = HBaseConfiguration.create(); FieldMapping fm = KVIndexer.createFieldMapping(conf, xmlFilePath, new StringBuilder()); outputFile = outputFile.charAt(outputFile.length() - 1) == '/' ? outputFile : outputFile + "/"; outputFile = outputFile + fm.tableName; conf.set(OUTPUT_FILE_PATH, outputFile); conf.set(OUTPUT_FILE_NAME, outputFileName); conf.set(REPLACE_FROM, replaceFrom); conf.set(REPLACE_TO, replaceTo); conf.set(START_INDEX, startIndex); conf.set(END_INDEX, endIndex); Job job = Job.getInstance(conf, "KVReplicatorMapFile - Replicating Map File"); job.setJarByClass(KVReplicatorMapFile.class); job.setMapperClass(KVReplicatorMapper.class); job.setReducerClass(KVReplicatorReducer.class); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(BytesWritable.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(BytesWritable.class); job.setNumReduceTasks(numberOfReducer); job.setInputFormatClass(SequenceFileInputFormat.class); SequenceFileInputFormat.addInputPath(job, new Path(inputFile.trim())); FileSystem fs = FileSystem.get(conf); Path dummyPath = new Path("/tmp", "dummy"); if (fs.exists(dummyPath)) { fs.delete(dummyPath, true); } FileOutputFormat.setOutputPath(job, dummyPath); boolean result = job.waitForCompletion(true); return (result ? 0 : 1); }
From source file:com.bizosys.unstructured.StopwordAndSynonymAnalyzer.java
License:Apache License
public void load() throws IOException { InputStream stopwordStream = null; InputStream synonumStream = null; Configuration hsearchConf = HSearchConfig.getInstance().getConfiguration(); String filenameSynonum = hsearchConf.get("synonyms.file.location", "synonyms.txt"); String filenameStopword = hsearchConf.get("stopword.file.location", "stopwords.txt"); isLowerCaseEnabled = hsearchConf.getBoolean("lucene.analysis.lowercasefilter", true); isAccentFilterEnabled = hsearchConf.getBoolean("lucene.analysis.accentfilter", true); isSnoballStemEnabled = hsearchConf.getBoolean("lucene.analysis.snowballfilter", true); isStopFilterEnabled = hsearchConf.getBoolean("lucene.analysis.stopfilter", true); if (null != stopwords) return;//from w w w. j a v a2 s. c o m org.apache.hadoop.conf.Configuration conf = new org.apache.hadoop.conf.Configuration(); FileSystem fs = FileSystem.get(conf); if (null != fs) { /** * STOPWORD */ Path stopPath = new Path(filenameStopword); if (fs.exists(stopPath)) { if (DEBUG_ENABLED) IdSearchLog.l.debug("Loading Stopword file from HDFS :" + stopPath.toString()); stopwordStream = fs.open(stopPath); } else { IdSearchLog.l.fatal("Stopword file not available in HDFS :" + stopPath.toString()); } /** * SYNONUM */ Path synPath = new Path(filenameSynonum); if (fs.exists(synPath)) { synonumStream = fs.open(synPath); if (DEBUG_ENABLED) IdSearchLog.l.debug("Loading synonym file from HDFS :" + filenameSynonum.toString()); } else { IdSearchLog.l.fatal("Synonym file not available in HDFS :" + filenameSynonum.toString()); IdSearchLog.l.fatal("Working Directory :" + fs.getWorkingDirectory().getName()); } } ClassLoader classLoader = null; if (null == stopwordStream || null == synonumStream) { classLoader = Thread.currentThread().getContextClassLoader(); } if (null == stopwordStream) { URL stopUrl = classLoader.getResource(filenameStopword); if (null != stopUrl) { String stopFile = stopUrl.getPath(); if (null != stopFile) { File stopwordFile = new File(stopFile); if (stopwordFile.exists() && stopwordFile.canRead()) { stopwordStream = new FileInputStream(stopwordFile); if (DEBUG_ENABLED) IdSearchLog.l .debug("Loading Stopword file from Local :" + stopwordFile.getAbsolutePath()); } else { IdSearchLog.l.fatal("Stopword file not available at :" + stopwordFile.getAbsolutePath()); IdSearchLog.l.fatal("Working Directory :" + fs.getHomeDirectory().getName()); } } else { if (DEBUG_ENABLED) IdSearchLog.l.debug("Ignoring Stopwords > " + filenameStopword); } } } if (null == synonumStream) { URL synUrl = classLoader.getResource(filenameSynonum); if (null != synUrl) { String synFileName = synUrl.getPath(); if (null != synFileName) { File synFile = new File(synFileName); if (synFile.exists() && synFile.canRead()) { synonumStream = new FileInputStream(synFile); if (DEBUG_ENABLED) IdSearchLog.l.debug("Loading Synonum file from Local :" + synFile.getAbsolutePath()); } else { if (DEBUG_ENABLED) IdSearchLog.l.debug("Synonum file not available at :" + synFile.getAbsolutePath()); } } else { if (DEBUG_ENABLED) IdSearchLog.l.debug("Ignoring Synonyms > " + filenameSynonum); } } } load(stopwordStream, synonumStream); }
From source file:com.blackberry.logdriver.LockedFs.java
License:Apache License
@SuppressWarnings("deprecation") public void move(Configuration conf, String[] from, String to) throws IOException { FileSystem fs = FileSystem.get(conf); List<FileStatus> fromList = new ArrayList<FileStatus>(); for (String s : from) { FileStatus[] statuses = fs.globStatus(new Path(s)); if (statuses == null) { continue; }/*from w ww .j a v a2 s . com*/ for (FileStatus status : statuses) { fromList.add(status); } } Path toPath = new Path(to); Boolean toExists = fs.exists(toPath); FileStatus toFileStatus = null; if (toExists) { toFileStatus = fs.getFileStatus(toPath); } // If there is no from, that's a problem. if (fromList.isEmpty()) { throw new IOException("No input files found"); } // If the to exists, and is a file, that's a problem too. if (toExists && !toFileStatus.isDir()) { throw new IOException("Destination file exists:" + to); } // If the destination exists, and is a directory, then ensure that none of // the from list names will clash with existing contents of the directory. if (toExists && toFileStatus.isDir()) { for (FileStatus fromStatus : fromList) { String name = fromStatus.getPath().getName(); if (fs.exists(new Path(toPath, name))) { throw new IOException("Destination file exists:" + to + "/" + name); } } } // If the destination doesn't exist, but it ends with a slash, then create // it as a directory. if (!toExists && to.endsWith("/")) { fs.mkdirs(toPath); toFileStatus = fs.getFileStatus(toPath); toExists = true; } // If the destination doesn't exist, and there is more than one 'from', then // create a directory. if (!toExists && fromList.size() > 1) { fs.mkdirs(toPath); toFileStatus = fs.getFileStatus(toPath); } // If there was only one from, then just rename it to to if (fromList.size() == 1) { fs.mkdirs(toPath.getParent()); fs.rename(fromList.get(0).getPath(), toPath); } // If there was more than one from, then for each file in the from list, // move it to the to directory. if (fromList.size() > 1) { for (FileStatus fromStatus : fromList) { String name = fromStatus.getPath().getName(); fs.rename(fromStatus.getPath(), new Path(toPath, name)); } } }