Return-Path: X-Original-To: apmail-hbase-commits-archive@www.apache.org Delivered-To: apmail-hbase-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 31A62DC2D for ; Thu, 23 May 2013 17:07:34 +0000 (UTC) Received: (qmail 52993 invoked by uid 500); 23 May 2013 17:07:33 -0000 Delivered-To: apmail-hbase-commits-archive@hbase.apache.org Received: (qmail 52924 invoked by uid 500); 23 May 2013 17:07:33 -0000 Mailing-List: contact commits-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list commits@hbase.apache.org Received: (qmail 52900 invoked by uid 99); 23 May 2013 17:07:32 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 May 2013 17:07:32 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 23 May 2013 17:07:29 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id 945B023889E3; Thu, 23 May 2013 17:07:08 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1485780 - in /hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase: PerformanceEvaluation.java util/LoadTestTool.java Date: Thu, 23 May 2013 17:07:08 -0000 To: commits@hbase.apache.org From: ramkrishna@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20130523170708.945B023889E3@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: ramkrishna Date: Thu May 23 17:07:08 2013 New Revision: 1485780 URL: http://svn.apache.org/r1485780 Log: HBASE-8235-Adding inmemory CF attribute to LoadTest and PerformanceEvaluation tool (Ram) Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/util/LoadTestTool.java Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java?rev=1485780&r1=1485779&r2=1485780&view=diff ============================================================================== --- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java (original) +++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/PerformanceEvaluation.java Thu May 23 17:07:08 2013 @@ -131,6 +131,7 @@ public class PerformanceEvaluation exten private DataBlockEncoding blockEncoding = DataBlockEncoding.NONE; private boolean flushCommits = true; private boolean writeToWAL = true; + private boolean inMemoryCF = false; private int presplitRegions = 0; private static final Path PERF_EVAL_DIR = new Path("performance_evaluation"); @@ -510,6 +511,9 @@ public class PerformanceEvaluation exten HColumnDescriptor family = new HColumnDescriptor(FAMILY_NAME); family.setDataBlockEncoding(blockEncoding); family.setCompressionType(compression); + if (inMemoryCF) { + family.setInMemory(true); + } TABLE_DESCRIPTOR.addFamily(family); } return TABLE_DESCRIPTOR; @@ -1292,6 +1296,9 @@ public class PerformanceEvaluation exten System.err.println(" flushCommits Used to determine if the test should flush the table. Default: false"); System.err.println(" writeToWAL Set writeToWAL on puts. Default: True"); System.err.println(" presplit Create presplit table. Recommended for accurate perf analysis (see guide). Default: disabled"); + System.err + .println(" inmemory Tries to keep the HFiles of the CF inmemory as far as possible. Not " + + "guaranteed that reads are always served from inmemory. Default: false"); System.err.println(); System.err.println(" Note: -D properties will be applied to the conf used. "); System.err.println(" For example: "); @@ -1396,7 +1403,13 @@ public class PerformanceEvaluation exten this.presplitRegions = Integer.parseInt(cmd.substring(presplit.length())); continue; } - + + final String inMemory = "--inmemory="; + if (cmd.startsWith(inMemory)) { + this.inMemoryCF = Boolean.parseBoolean(cmd.substring(inMemory.length())); + continue; + } + Class cmdClass = determineCommandClass(cmd); if (cmdClass != null) { getArgs(i + 1, args); Modified: hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/util/LoadTestTool.java URL: http://svn.apache.org/viewvc/hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/util/LoadTestTool.java?rev=1485780&r1=1485779&r2=1485780&view=diff ============================================================================== --- hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/util/LoadTestTool.java (original) +++ hbase/branches/0.95/hbase-server/src/test/java/org/apache/hadoop/hbase/util/LoadTestTool.java Thu May 23 17:07:08 2013 @@ -86,6 +86,10 @@ public class LoadTestTool extends Abstra public static final String OPT_ENCODE_IN_CACHE_ONLY_USAGE = "If this is specified, data blocks will only be encoded in block " + "cache but not on disk"; + + public static final String OPT_INMEMORY = "in_memory"; + public static final String OPT_USAGE_IN_MEMORY = "Tries to keep the HFiles of the CF " + + "inmemory as far as possible. Not guaranteed that reads are always served from inmemory"; private static final String OPT_KEY_WINDOW = "key_window"; private static final String OPT_WRITE = "write"; @@ -116,7 +120,7 @@ public class LoadTestTool extends Abstra private boolean encodeInCacheOnly; private Compression.Algorithm compressAlgo; private BloomType bloomType; - + private boolean inMemoryCF; // Writer options private int numWriterThreads = DEFAULT_NUM_THREADS; private int minColsPerKey, maxColsPerKey; @@ -177,6 +181,9 @@ public class LoadTestTool extends Abstra columnDesc.setDataBlockEncoding(dataBlockEncodingAlgo); columnDesc.setEncodeOnDisk(!encodeInCacheOnly); } + if (inMemoryCF) { + columnDesc.setInMemory(inMemoryCF); + } if (isNewCf) { admin.addColumn(tableName, columnDesc); } else { @@ -208,6 +215,7 @@ public class LoadTestTool extends Abstra addOptNoArg(OPT_MULTIPUT, "Whether to use multi-puts as opposed to " + "separate puts for every column in a row"); addOptNoArg(OPT_ENCODE_IN_CACHE_ONLY, OPT_ENCODE_IN_CACHE_ONLY_USAGE); + addOptNoArg(OPT_INMEMORY, OPT_USAGE_IN_MEMORY); addOptWithArg(OPT_NUM_KEYS, "The number of keys to read/write"); addOptWithArg(OPT_START_KEY, "The first key to read/write " + @@ -318,6 +326,9 @@ public class LoadTestTool extends Abstra String bloomStr = cmd.getOptionValue(OPT_BLOOM); bloomType = bloomStr == null ? null : BloomType.valueOf(bloomStr); + + inMemoryCF = cmd.hasOption(OPT_INMEMORY); + } public void initTestTable() throws IOException {