List of usage examples for org.apache.hadoop.fs Path Path
public Path(URI aUri)
From source file:TestIndexServer.java
License:Open Source License
public void testTaskQueueRunner() throws Exception { status = initializeindexconf();//from w w w . j a v a2s . com fs.delete(new Path(status.gettablelocation()), true); fs.delete(new Path(status.gettablelocation()), true); UtilIndexStorage.writeFDF(status.gettablelocation(), 5, 10000, (short) -1, false, false, true, true); IndexServer server = new IndexServer(null); server.testmode = true; server.start(); Thread.sleep(5000); server.close(); }
From source file:TestIndexServer.java
License:Open Source License
public void testServerUpdateIndex() throws Exception { status = initializeindexconf();//from w w w . ja v a 2s.c o m fs.delete(new Path(status.gettablelocation()), true); fs.delete(new Path(status.gettablelocation()), true); UtilIndexStorage.writeFDF(status.gettablelocation(), 5, 10000, (short) -1, false, false, true, true); IndexServer server = new IndexServer(null); server.testmode = true; server.start(); ArrayList<IndexItemStatus> itemstatuss = new ArrayList<IndexItemStatus>(); while (true) { itemstatuss.clear(); File file = new File("indexconf"); DataInputStream dis = new DataInputStream(new FileInputStream(file)); int num = dis.readInt(); for (int i = 0; i < num; i++) { IndexItemStatus status = new IndexItemStatus(); status.read(dis); itemstatuss.add(status); } dis.close(); if (itemstatuss.get(0).status == 2) { break; } if (itemstatuss.get(0).status < 0) { server.close(); assertTrue(false); } Thread.sleep(3000); } server.close(); }
From source file:TestIndexServer.java
License:Open Source License
public void testServerMergeIndex() throws Exception { Configuration conf = new Configuration(); conf.set("se.indexer.IPM_merge_interval", "5000"); IndexServer server = new IndexServer(conf); server.testmode = true;// www. ja v a2s . c om server.start(); ArrayList<IndexItemStatus> itemstatuss = new ArrayList<IndexItemStatus>(); for (int k = 0; k < 0; k++) { while (true) { itemstatuss.clear(); File file = new File("indexconf"); DataInputStream dis = new DataInputStream(new FileInputStream(file)); int num = dis.readInt(); for (int i = 0; i < num; i++) { IndexItemStatus status = new IndexItemStatus(); status.read(dis); itemstatuss.add(status); } dis.close(); if (itemstatuss.get(0).status == 2) { break; } if (itemstatuss.get(0).status < 0) { server.close(); assertTrue(false); } Thread.sleep(3000); } UtilIndexStorage.writeFDF(status.gettablelocation(), 3, 10000, (short) -1, false, false, true, false); while (true) { itemstatuss.clear(); File file = new File("indexconf"); DataInputStream dis = new DataInputStream(new FileInputStream(file)); int num = dis.readInt(); for (int i = 0; i < num; i++) { IndexItemStatus status = new IndexItemStatus(); status.read(dis); itemstatuss.add(status); } dis.close(); if (itemstatuss.get(0).status == 1) { break; } Thread.sleep(3000); } } Thread.sleep(15000); while (true) { itemstatuss.clear(); File file = new File("indexconf"); DataInputStream dis = new DataInputStream(new FileInputStream(file)); int num = dis.readInt(); for (int i = 0; i < num; i++) { IndexItemStatus status = new IndexItemStatus(); status.read(dis); itemstatuss.add(status); } dis.close(); if (itemstatuss.get(0).status == 2) { break; } Thread.sleep(3000); } FileStatus[] fss = fs.listStatus(new Path(itemstatuss.get(0).indexlocation + "/nopart")); assertEquals(fss.length, 1); server.close(); }
From source file:ColumnStroageStabilityTest.java
License:Open Source License
static void doReadRand(int count) { try {/*from w ww . ja v a 2 s .c o m*/ Path path = new Path(fullPrefix); ArrayList<Short> vector = new ArrayList<Short>(10); vector.add((short) 3); vector.add((short) 6); vector.add((short) 4); vector.add((short) 2); vector.add((short) 0); vector.add((short) 5); vector.add((short) 1); Configuration conf = new Configuration(); ColumnStorageClient client = new ColumnStorageClient(path, vector, conf); long begin = System.currentTimeMillis(); for (int i = 0; i < count; i++) { int rand = (int) (Math.random() * count); Record record = client.getRecordByLine(rand); /* if (record == null) { String string = "record no:" + i + " return null"; out.write(string.getBytes()); } if (!judgeRecord(record)) { String string = "record no:" + i + " value error"; out.write(string.getBytes()); } */ if (i % (100 * 10000) == 0) { String string = "read seq " + i + " record, delay:" + ((System.currentTimeMillis() - begin) / 1000) + " s \n"; System.out.println(string); } } long end = System.currentTimeMillis(); String string = "Read Seq over, count:" + count + ", delay:" + (long) ((end - begin) / 1000) + " s"; System.out.println(string); } catch (IOException e) { e.printStackTrace(); System.out.println("get IOException:" + e.getMessage()); } catch (Exception e) { e.printStackTrace(); System.out.println("get exception:" + e.getMessage()); } }
From source file:ColumnStroageStabilityTest.java
License:Open Source License
static void doReadSeq(int count) { try {/* w w w . j ava 2 s . c o m*/ Path path = new Path(prefix); ArrayList<Short> vector = new ArrayList<Short>(10); File file = new File("testReadMassRecord.result"); FileOutputStream out = new FileOutputStream(file); for (int i = 0; i < idxs.length; i++) { vector.add(Short.valueOf(idxs[i])); } Configuration conf = new Configuration(); ColumnStorageClient client = new ColumnStorageClient(path, vector, conf); long begin = System.currentTimeMillis(); for (int i = 0; i < count; i++) { Record record = client.getRecordByLine(i); if (record == null) { String string = "record no:" + i + " return null \n"; out.write(string.getBytes()); } Error error = new Error(); if (!judgeRecord(record, error)) { String string = "record no:" + i + ": " + error.msg + "\n"; out.write(string.getBytes()); } if (i % (100 * 10000) == 0) { String string = "read seq " + i + " record, delay:" + ((System.currentTimeMillis() - begin) / 1000) + " s "; out.write(string.getBytes()); out.write(new String("\n").getBytes()); } } client.close(); long end = System.currentTimeMillis(); String string = "Read Seq over, count:" + count + ", delay:" + (long) ((end - begin) / 1000) + " s \n"; out.write(string.getBytes()); out.close(); System.out.println(string); } catch (IOException e) { e.printStackTrace(); System.out.println("get IOException:" + e.getMessage()); } catch (Exception e) { e.printStackTrace(); System.out.println("get exception:" + e.getMessage()); } }
From source file:TweetCategorizer.java
License:Apache License
public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); // conf.addResource(new Path("../../env_vars")); String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs(); if (otherArgs.length != 2) { System.err.println("Usage: TweetCategorizer <in> <out>"); System.exit(2);// www . ja va 2s . c o m } // ---------------------------------------------------------- // READ FILTER FILE // ---------------------------------------------------------- // Path pt=new Path("hdfs://pathTofile"); //Path pt = new Path("../www/hfilters.json"); String l; String line = ""; //FileSystem fs = FileSystem.get(conf); BufferedReader br = new BufferedReader(new FileReader("../www/json/filters.json")); try { //BufferedReader br = new BufferedReader(new FileReader(fs.open(pt))); while ((l = br.readLine()) != null) { line += l; //System.out.println(line); } } finally { // you should close out the BufferedReader br.close(); } // ---------------------------------------------------------- // PARSE JSON //http://stackoverflow.com/questions/6697147/json-iterate-through-jsonarray //http://juliusdavies.ca/json-simple-1.1.1-javadocs/org/json/simple/JSONObject.html // ---------------------------------------------------------- JSONParser parser = new JSONParser(); JSONObject jsonObject = (JSONObject) parser.parse(line); Set<String> filters = jsonObject.keySet(); // inside each object there is a "name" field, get value and add to keyword_list for (String i : filters) { JSONObject objects = (JSONObject) jsonObject.get(i); String keyword = ((String) objects.get("name")).toLowerCase(); TokenizerMapper.keyname_list.add(i); TokenizerMapper.keyword_list.add(keyword); } // ---------------------------------------------------------- Job job = new Job(conf, "categorize tweets"); job.setJarByClass(TweetCategorizer.class); job.setMapperClass(TokenizerMapper.class); // job.setCombinerClass(IntSumReducer.class); // job.setReducerClass(IntSumReducer.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(Text.class); FileInputFormat.addInputPath(job, new Path(otherArgs[0])); FileOutputFormat.setOutputPath(job, new Path(otherArgs[1])); System.exit(job.waitForCompletion(true) ? 0 : 1); }
From source file:TestParascaleFileStatus.java
License:Apache License
public void testParascaleFileStatus() { final Path p = new Path("/foo/bar"); final long filesize = 10; final ParascaleFileStatusMock parascaleFileStatus = new ParascaleFileStatusMock(filesize, false, 2, 32 * 1024 * 1024, System.currentTimeMillis(), p); parascaleFileStatus.permissionString = "-rw-r-xr-- 1 parascale parascale 0 Sep 9 12:37 16:43 bar"; assertEquals("invalid blocksize", 32 * 1024 * 1024, parascaleFileStatus.getBlockSize()); assertEquals("invalid user", "parascale", parascaleFileStatus.getOwner()); assertEquals("invalid group", "parascale", parascaleFileStatus.getGroup()); assertEquals("invalid size of file - should be 10 as set in contructor", 10, parascaleFileStatus.getLen()); }
From source file:TestParascaleFileStatus.java
License:Apache License
public void testLoadPermissionInfo() { final Path p = new Path("/foo/bar"); {/*from w w w .j a v a2 s. c o m*/ final ParascaleFileStatusMock parascaleFileStatus = new ParascaleFileStatusMock(10, false, 2, 32 * 1024 * 1024, System.currentTimeMillis(), p); parascaleFileStatus.permissionString = "-rw-r-xr-- 1 parascale parascale 0 Sep 9 12:37 16:43 bar"; final FsPermission permission = parascaleFileStatus.getPermission(); assertEquals(FsAction.READ, permission.getOtherAction()); assertEquals(FsAction.READ_EXECUTE, permission.getGroupAction()); assertEquals(FsAction.READ_WRITE, permission.getUserAction()); } { final ParascaleFileStatusMock parascaleFileStatus = new ParascaleFileStatusMock(10, false, 2, 32 * 1024 * 1024, System.currentTimeMillis(), p); parascaleFileStatus.permissionString = "-rw--wxr-- 1 parascale parascale 0 Sep 9 12:37 16:43 bar"; assertEquals(32 * 1024 * 1024, parascaleFileStatus.getBlockSize()); assertEquals("parascale", parascaleFileStatus.getOwner()); final FsPermission permission = parascaleFileStatus.getPermission(); assertEquals(FsAction.READ, permission.getOtherAction()); assertEquals(FsAction.WRITE_EXECUTE, permission.getGroupAction()); assertEquals(FsAction.READ_WRITE, permission.getUserAction()); } final ParascaleFileStatusMock parascaleFileStatus = new ParascaleFileStatusMock(10, false, 2, 32 * 1024 * 1024, System.currentTimeMillis(), p); parascaleFileStatus.permissionString = "-rw-r-xr-- 1 parascale parascale 0 Sep 9 12:37 16:43 bar"; assertEquals("permissions already loaded - should be lazy", 0, parascaleFileStatus.count.get()); parascaleFileStatus.getPermission(); assertEquals("permissions loaded more than once", 1, parascaleFileStatus.count.get()); parascaleFileStatus.getOwner(); assertEquals("permissions loaded more than once", 1, parascaleFileStatus.count.get()); parascaleFileStatus.getGroup(); assertEquals("permissions loaded more than once", 1, parascaleFileStatus.count.get()); }
From source file:WordLines.java
License:Apache License
public static void main(String[] args) throws Exception { Configuration conf = new Configuration(); String[] otherArgs = new GenericOptionsParser(conf, args).getRemainingArgs(); if (otherArgs.length < 3) { System.err.println("Usage: wordlines <in> [<in>...] <SearchTerm> <out>"); System.exit(2);/*from w ww .j a v a 2s. c om*/ } conf.set("searchWord", otherArgs[otherArgs.length - 2]); Job job = new Job(conf, "word lines"); job.setJarByClass(WordLines.class); job.setMapperClass(TokenizerMapper.class); job.setCombinerClass(IntSumReducer.class); job.setReducerClass(IntSumReducer.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(Text.class); for (int i = 0; i < otherArgs.length - 2; ++i) { FileInputFormat.addInputPath(job, new Path(otherArgs[i])); } FileOutputFormat.setOutputPath(job, new Path(otherArgs[otherArgs.length - 1])); System.exit(job.waitForCompletion(true) ? 0 : 1); }
From source file:DataJoinJob.java
License:Apache License
public static JobConf createDataJoinJob(String args[]) throws IOException { String inputDir = args[0];//from w w w . ja va2 s.c o m String outputDir = args[1]; Class inputFormat = SequenceFileInputFormat.class; if (args[2].compareToIgnoreCase("text") != 0) { System.out.println("Using SequenceFileInputFormat: " + args[2]); } else { System.out.println("Using TextInputFormat: " + args[2]); inputFormat = TextInputFormat.class; } int numOfReducers = Integer.parseInt(args[3]); Class mapper = getClassByName(args[4]); Class reducer = getClassByName(args[5]); Class mapoutputValueClass = getClassByName(args[6]); Class outputFormat = TextOutputFormat.class; Class outputValueClass = Text.class; if (args[7].compareToIgnoreCase("text") != 0) { System.out.println("Using SequenceFileOutputFormat: " + args[7]); outputFormat = SequenceFileOutputFormat.class; outputValueClass = getClassByName(args[7]); } else { System.out.println("Using TextOutputFormat: " + args[7]); } long maxNumOfValuesPerGroup = 100; String jobName = ""; if (args.length > 8) { maxNumOfValuesPerGroup = Long.parseLong(args[8]); } if (args.length > 9) { jobName = args[9]; } Configuration defaults = new Configuration(); JobConf job = new JobConf(defaults, DataJoinJob.class); job.setJobName("DataJoinJob: " + jobName); FileSystem fs = FileSystem.get(defaults); fs.delete(new Path(outputDir)); FileInputFormat.setInputPaths(job, inputDir); job.setInputFormat(inputFormat); job.setMapperClass(mapper); FileOutputFormat.setOutputPath(job, new Path(outputDir)); job.setOutputFormat(outputFormat); SequenceFileOutputFormat.setOutputCompressionType(job, SequenceFile.CompressionType.BLOCK); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(mapoutputValueClass); job.setOutputKeyClass(Text.class); job.setOutputValueClass(outputValueClass); job.setReducerClass(reducer); job.setNumMapTasks(1); job.setNumReduceTasks(numOfReducers); job.setLong("datajoin.maxNumOfValuesPerGroup", maxNumOfValuesPerGroup); return job; }