Creation of git repository and inital commit of YCSB.
This commit is contained in:
Brian Frank Cooper 2010-04-19 13:50:19 -07:00
Коммит 24efaff35c
106 изменённых файлов: 24172 добавлений и 0 удалений

163
LICENSE.txt Normal file
Просмотреть файл

@ -0,0 +1,163 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by the
copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all other
entities that control, are controlled by, or are under common control
with that entity. For the purposes of this definition, "control" means
(i) the power, direct or indirect, to cause the direction or
management of such entity, whether by contract or otherwise, or (ii)
ownership of fifty percent (50%) or more of the outstanding shares, or
(iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity exercising
permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but not
limited to compiled object code, generated documentation, and
conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or Object
form, made available under the License, as indicated by a copyright
notice that is included in or attached to the work (an example is
provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the
purposes of this License, Derivative Works shall not include works
that remain separable from, or merely link (or bind by name) to the
interfaces of, the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including the
original version of the Work and any modifications or additions to
that Work or Derivative Works thereof, that is intentionally submitted
to Licensor for inclusion in the Work by the copyright owner or by an
individual or Legal Entity authorized to submit on behalf of the
copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent to
the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control
systems, and issue tracking systems that are managed by, or on behalf
of, the Licensor for the purpose of discussing and improving the Work,
but excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have
made, use, offer to sell, sell, import, and otherwise transfer the
Work, where such license applies only to those patent claims
licensable by such Contributor that are necessarily infringed by
their Contribution(s) alone or by combination of their
Contribution(s) with the Work to which such Contribution(s) was
submitted. If You institute patent litigation against any entity
(including a cross-claim or counterclaim in a lawsuit) alleging
that the Work or a Contribution incorporated within the Work
constitutes direct or contributory patent infringement, then any
patent licenses granted to You under this License for that Work
shall terminate as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the Work
or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You meet
the following conditions:
(a) You must give any other recipients of the Work or Derivative Works
a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works that
You distribute, all copyright, patent, trademark, and attribution
notices from the Source form of the Work, excluding those notices that
do not pertain to any part of the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained within
such NOTICE file, excluding those notices that do not pertain to any
part of the Derivative Works, in at least one of the following places:
within a NOTICE text file distributed as part of the Derivative Works;
within the Source form or documentation, if provided along with the
Derivative Works; or, within a display generated by the Derivative
Works, if and wherever such third-party notices normally appear. The
contents of the NOTICE file are for informational purposes only and do
not modify the License. You may add Your own attribution notices
within Derivative Works that You distribute, alongside or as an
addendum to the NOTICE text from the Work, provided that such
additional attribution notices cannot be construed as modifying the
License.
You may add Your own copyright statement to Your modifications and may
provide additional or different license terms and conditions for use,
reproduction, or distribution of Your modifications, or for any such
Derivative Works as a whole, provided Your use, reproduction, and
distribution of the Work otherwise complies with the conditions stated
in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or
conditions. Notwithstanding the above, nothing herein shall
supersede or modify the terms of any separate license agreement you
may have executed with Licensor regarding such Contributions.
6. Trademarks. This License does nr work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]" replaced
with your own identifying information. (Don't include the brackets!)
The text should be enclosed in the appropriate comment syntax for the
file format. We also recommend that a file or class name and
description of purpose be included on the same "printed page" as the
copyright notice for easier identification within third-party
archives.
Copyright [yyyy] [name of copyright owner]
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied.
See the License for the specific language governing permissions and
limitations under the License.

9
NOTICE.txt Normal file
Просмотреть файл

@ -0,0 +1,9 @@
=========================================================================
NOTICE file for use with, and corresponding to Section 4 of,
the Apache License, Version 2.0,
in this case for the YCSB project.
=========================================================================
This product includes software developed by
Yahoo! Inc. (www.yahoo.com)
Copyright (c) 2010 Yahoo! Inc. All rights reserved.

38
README Normal file
Просмотреть файл

@ -0,0 +1,38 @@
Yahoo! Cloud System Benchmark (YCSB)
Overview
========
It is difficult to decide which system is right for your application,
partially because the features differ between systems, and partially
because there is not an easy way to compare the performance of one
system versus another.
The goal of the YCSB project is to develop a framework and common set
of workloads for evaluating the performance of different "key-value"
and "cloud" serving stores. The project comprises two things:
* The YCSB Client, an extensible workload generator
* The Core workloads, a set of workload scenarios to be executed by
the generator
Although the core workloads provide a well rounded picture of a
system's performance, the Client is extensible so that you can define
new and different workloads to examine system aspects, or application
scenarios, not adequately covered by the core workload. Similarly, the
Client is extensible to support benchmarking different
databases. Although we include sample code for benchmarking HBase and
Cassandra, it is straightforward to write a new interface layer to
benchmark your favorite database.
A common use of the tool is to benchmark multiple systems and compare
them. For example, you can install multiple systems on the same
hardward configuration, and run the same workloads against each
system. Then you can plot the performance of each system (for example,
as latency versus throughput curves) to see when one system does
better than another.
Detailed information about using the benchmark is available in the
doc/index.html file.

51
build.xml Normal file
Просмотреть файл

@ -0,0 +1,51 @@
<?xml version="1.0" encoding="UTF-8"?>
<project name="ycsb" default="compile" basedir=".">
<property name="src.dir" value="src"/>
<property name="doc.dir" value="doc"/>
<property name="dbsrc.dir" value="${src.dir}/com/yahoo/ycsb/db"/>
<property name="dblib.dir" value="${dbsrc.dir}/lib"/>
<property name="build.dir" value="build"/>
<property name="classes.dir" value="${build.dir}/classes"/>
<property name="jar.dir" value="${build.dir}/jar"/>
<path id="classpath">
<fileset dir="${dblib.dir}" includes="**/*.jar"/>
</path>
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" excludes="com/yahoo/ycsb/db/**" deprecation="on">
<compilerarg value="-Xlint:unchecked"/>
</javac>
<antcall target="makejar"/>
</target>
<target name="dbcompile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${dbsrc.dir}" destdir="${classes.dir}" classpathref="classpath" deprecation="on">
<compilerarg value="-Xlint:unchecked"/>
</javac>
<antcall target="makejar"/>
</target>
<target name ="makejar" description="Create a jar for the YCSB project">
<jar jarfile="build/ycsb.jar" includes="**/*.class" basedir="${classes.dir}"/>
</target>
<target name="clean">
<delete includeemptydirs="true">
<fileset dir="build" includes="**/*"/>
</delete>
</target>
<target name="doc">
<javadoc sourcepath="${src.dir}" destdir="${doc.dir}/javadoc" packagenames="com.yahoo.ycsb,com.yahoo.ycsb.workloads"/>
</target>
</project>

30
doc/coreproperties.html Normal file
Просмотреть файл

@ -0,0 +1,30 @@
<HTML>
<HEAD>
<TITLE>YCSB - Core workload package properties</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Core workload package properties</h2>
The property files used with the core workload generator can specify values for the following properties:<p>
<UL>
<LI><b>fieldcount</b>: the number of fields in a record (default: 10)
<LI><b>fieldlength</b>: the size of each field (default: 100)
<LI><b>readallfields</b>: should reads read all fields (true) or just one (false) (default: true)
<LI><b>readproportion</b>: what proportion of operations should be reads (default: 0.95)
<LI><b>updateproportion</b>: what proportion of operations should be updates (default: 0.05)
<LI><b>insertproportion</b>: what proportion of operations should be inserts (default: 0)
<LI><b>scanproportion</b>: what proportion of operations should be scans (default: 0)
<LI><b>readmodifywriteproportion</b>: what proportion of operations should be read a record, modify it, write it back (default: 0)
<LI><b>requestdistribution</b>: what distribution should be used to select the records to operate on - uniform, zipfian or latest (default: uniform)
<LI><b>maxscanlength</b>: for scans, what is the maximum number of records to scan (default: 1000)
<LI><b>scanlengthdistribution</b>: for scans, what distribution should be used to choose the number of records to scan, for each scan, between 1 and maxscanlength (default: uniform)
<LI><b>insertorder</b>: should records be inserted in order by key ("ordered"), or in hashed order ("hashed") (default: hashed)
</UL>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</BODY>
</HTML>

59
doc/coreworkloads.html Normal file
Просмотреть файл

@ -0,0 +1,59 @@
<HTML>
<HEAD>
<TITLE>YCSB - Core workloads</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Core workloads</h2>
YCSB includes a set of core workloads that define a basic benchmark for cloud systems. Of course, you can define your own workloads, as described <a href="workload.html">here</A>. However,
the core workloads are a useful first step, and obtaining these benchmark numbers for a variety of different systems would allow you to understand the performance
tradeoffs of different systems.
<P>
The core workloads consist of six different workloads:
<P>
<B>Workload A: Update heavy workload</B>
<P>
This workload has a mix of 50/50 reads and writes. An application example is a session store recording recent actions.
<P>
<B>Workload B: Read mostly workload</B>
<P>
This workload has a 95/5 reads/write mix. Application example: photo tagging; add a tag is an update, but most operations are to read tags.
<P>
<B>Workload C: Read only</B>
<P>
This workload is 100% read. Application example: user profile cache, where profiles are constructed elsewhere (e.g., Hadoop).
<P>
<B>Workload D: Read latest workload</B>
<P>
In this workload, new records are inserted, and the most recently inserted records are the most popular. Application example: user status updates; people want to read the latest.
<P>
<B>Workload E: Short ranges</B>
<P>
In this workload, short ranges of records are queried, instead of individual records. Application example: threaded conversations, where each scan is for the posts in a given thread (assumed to be clustered by thread id).
<P>
<B>Workload F: Read-modify-write</B>
<P>
In this workload, the client will read a record, modify it, and write back the changes. Application example: user database, where user records are read and modified by the user or to record user activity.
<HR>
<H2>Running the workloads</H2>
All six workloads have a data set which is similar. Workloads D and E insert records during the test run. Thus, to keep the database size consistent, we recommend the following sequence:
<OL>
<LI>Load the database, using workload A's parameter file (workloads/workloada) and the "-load" switch to the client.
<LI>Run workload A (using workloads/workloada and "-t") for a variety of throughputs.
<LI>Run workload B (using workloads/workloadb and "-t") for a variety of throughputs.
<LI>Run workload C (using workloads/workloadc and "-t") for a variety of throughputs.
<LI>Run workload F (using workloads/workloadf and "-t") for a variety of throughputs.
<LI>Run workload D (using workloads/workloadd and "-t") for a variety of throughputs. This workload inserts records, increasing the size of the database.
<LI>Delete the data in the database.
<LI>Reload the database, using workload E's parameter file (workloads/workloade) and the "-load switch to the client.
<LI>Run workload E (using workloads/workloadd and "-t") for a variety of throughputs. This workload inserts records, increasing the size of the database.
</OL>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</BODY>
</HTML>

98
doc/dblayer.html Normal file
Просмотреть файл

@ -0,0 +1,98 @@
<HTML>
<HEAD>
<TITLE>YCSB - DB Interface Layer</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Implementing a database interface layer - overview</H2>
The database interface layer hides the details of the specific database you are benchmarking from the YCSB Client. This
allows the client to generate operations like "read record" or "update record" without having to understand
the specific API of your database. Thus, it is very easy to benchmark new database systems; once you have
created the database interface layer, the rest of the benchmark framework runs without having to change.
<P>
The database interface layer is a simple abstract class that provides read, insert, update, delete and scan operations for your
database. Implementing a database interface layer for your database means filling out the body of each of those methods. Once you
have compiled your layer, you can specify the name of your implemented class on the command line (or as a property) to the YCSB Client.
The YCSB Client will load your implementation dynamically when it starts. Thus, you do not need to recompile the YCSB Client itself
to add or change a database interface layer.
<HR>
<H2>Creating a new layer step-by-step</H2>
<h3>Step 1 - Extend com.yahoo.ycsb.DB</h3>
The base class of all database interface layer implementations is com.yahoo.ycsb.DB. This is an abstract class, so you need to create a new
class which extends the DB class. Your class must have a public no-argument constructor, because the instances will be constructed inside a factory
which will use the no-argument constructor.
<P>
The YCSB Client framework will create one instance of your DB class per worker thread, but there might be multiple worker threads generating the workload,
so there might be multiple instances of your DB class created.
<H3>Step 2 - Implement init() if necessary</h3>
You can perform any initialization of your DB object by implementing the following method
<pre>
public void init() throws DBException
</pre>
to perform any initialization actions. The init() method will be called once per DB instance; so if there are multiple threads, each DB instance will have init()
called separately.
<P>
The init() method should be used to set up the connection to the database and do any other initialization. In particular, you can configure your database layer
using properties passed to the YCSB Client at runtime. In fact, the YCSB Client will pass to the DB interface layer
all of the
properties specified in all parameter files specified when the Client starts up. Thus, you can create new properties for configuring your DB interface layer,
set them in your parameter files (or on the command line), and
then retrieve them inside your implementation of the DB interface layer.
<P>
These properties will be passed to the DB instance <i>after</i> the constructor, so it is important to retrieve them only in the init() method and not the
constructor. You can get the set of properties using the
<pre>
public Properties getProperties()
</pre>
method which is already implemented and inherited from the DB base class.
<h3>Step 3 - Implement the database query and update methods</h3>
The methods that you need to implement are:
<pre>
//Read a single record
public int read(String table, String key, Set<String> fields, HashMap<String,String> result);
//Perform a range scan
public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result);
//Update a single record
public int update(String table, String key, HashMap<String,String> values);
//Insert a single record
public int insert(String table, String key, HashMap<String,String> values);
//Delete a single record
public int delete(String table, String key);
</pre>
In each case, the method takes a table name and record key. (In the case of scan, the record key is the first key in the range to scan.) For the
read methods (read() and scan()) the methods additionally take a set of fields to be read, and provide a structure (HashMap or Vector of HashMaps) to store
the returned data. For the write methods (insert() and update()) the methods take HashMap which maps field names to values.
<P>
The database should have the appropriate tables created before you run the benchmark. So you can assume in your implementation of the above methods
that the appropriate tables already exist, and just write code to read or write from the tables named in the "table" parameter.
<h3>Step 4 - Compile your database interface layer</h3>
Your code can be compiled separately from the compilation of the YCSB Client and framework. In particular, you can make changes to your DB class and
recompile without having to recompile the YCSB Client.
<h3>Step 5 - Use it with the YCSB Client</h3>
Make sure that the classes for your implementation (or a jar containing those classes) are available on your CLASSPATH, as well as any libraries/jar files used
by your implementation. Now, when you run the YCSB Client, specify the "-db" argument on the command line and provide the fully qualified classname of your
DB class. For example, to run workloada with your DB class:
<pre>
% java -cp build/ycsb.jar:yourjarpath com.yahoo.ycsb.Client -t -db com.foo.YourDBClass -P workloads/workloada -P large.dat -s > transactions.dat
</pre>
You can also specify the DB interface layer using the DB property in your parameter file:
<pre>
db=com.foo.YourDBClass
</pre>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</BODY>
</HTML>

Двоичные данные
doc/images/ycsblogo-small.png Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 3.1 KiB

348
doc/index.html Normal file
Просмотреть файл

@ -0,0 +1,348 @@
<html>
<head>
<title>YCSB - Yahoo! Cloud Serving Benchmark</title>
</head>
<body>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<hr>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<UL>
<LI><A href="#overview">Overview</A>
<LI><A href="#download">Download YCSB</A>
<LI><A href="#building">Building YCSB</A>
<LI><A href="#running">Running a workload</A>
<LI><A href="#extending">Extending YCSB</A>
</UL>
<HR>
<A name="overview">
<H2>Overview</H2>
There are many new serving databases available, including:
<ul>
<LI>BigTable
<ul>
<LI><A HREF="http://hadoop.apache.org/hbase/">HBase</A>, <A HREF="http://hypertable.org/">Hypertable
</ul>
<LI><A HREF="http://www.microsoft.com/windowsazure/">Azure</A>
<LI><A HREF="http://incubator.apache.org/cassandra/">Cassandra</A>
<LI><A HREF="http://couchdb.apache.org/">CouchDB</A>
<LI><A HREF="http://project-voldemort.com/">Voldemort</A>
<LI><A HREF=http://wiki.github.com/cliffmoon/dynomite/dynomite-framework">Dynomite</A>
<li>...and many others
</ul>
It is difficult to decide which system is right for your application, partially because the features differ between
systems, and partially because there is not an easy way to compare the performance of one system versus another.
<P>
The goal of the YCSB project is to develop a framework and common set of workloads for evaluating the performance of
different "key-value" and "cloud" serving stores. The project comprises two things:
<ul>
<LI>The YCSB Client, an extensible workload generator
<LI>The Core workloads, a set of workload scenarios to be executed by the generator
</UL>
Although the core workloads provide a well rounded picture of a system's performance, the Client is extensible so that
you can define new and different workloads to examine system aspects, or application scenarios, not adequately covered by
the core workload. Similarly, the Client is extensible to support benchmarking different databases. Although we include
sample code for benchmarking HBase and Cassandra, it is straightforward to write a new interface layer to benchmark
your favorite database.
<P>
A common use of the tool is to benchmark multiple systems and compare them. For example, you can install multiple systems
on the same hardward configuration, and run the same workloads against each system. Then you can plot the performance
of each system (for example, as latency versus throughput curves) to see when one system does better than another.
<HR>
<A name="download">
<H2>Download YCSB</H2>
... more information soon ...
<HR>
<a name="building">
<H2>Building YCSB</H2>
To build YCSB, you need to build:
<UL>
<LI>The YCSB Client
<LI>Your DB interface layer
</UL>
The YCSB distribution can be built with <a href="http://ant.apache.org">ant</a>:
<pre>
% cd ycsb
% ant
</pre>
If your build was successful, you should be able to run the Client to get the usage message:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client
Usage: java com.yahoo.ycsb.Client [options]
Options:
-threads n: execute using n threads (default: 1) - can also be specified as the
"threadcount" property using -p
-target n: attempt to do n operations per second (default: unlimited) - can also
be specified as the "target" property using -p
-load: run the loading phase of the workload
-t: run the transactions phase of the workload (default)
-db dbname: specify the name of the DB to use (default: com.yahoo.ycsb.BasicDB) -
can also be specified as the "db" property using -p
-P propertyfile: load properties from the given file. Multiple files can
be specified, and will be processed in the order specified
-p name=value: specify a property to be passed to the DB and workloads;
multiple properties can be specified, and override any
values in the propertyfile
-s: show status during run (default: no status)
-l label: use label for status (e.g. to label one experiment out of a whole batch)
Required properties:
recordcount: how many records in the database
operationcount: how many transactions to execute
workload: the name of the workload class to use (e.g. com.yahoo.ycsb.workloads.CoreWorkload)
</pre>
<HR>
<a name="running">
<H2>Running a workload</H2>
There are 6 steps to running a workload:
<OL>
<LI>Set up the database system to test
<LI>Choose the appropriate DB interface layer
<LI>Choose the appropriate workload
<LI>Choose the appropriate runtime parameters (number of client threads, target throughput, etc.)
<LI>Load the data
<LI>Execute the workload
</OL>
The steps described here assume you are running a single client server. This should be sufficient for small to medium clusters (e.g. 10 or so machines). For much larger clusters, you may
have to run multiple clients on different servers to generate enough load. Similarly, loading a database may be faster in some cases using multiple client machines. For more details on
running multiple clients in parallel, see <A href="parallelclients.html">here</A>.
<H3>Step 1. Set up the database system to test</H3>
The first step is to set up the database system you wish to test. This can be done on a single machine or a cluster, depending on the configuration you wish to benchmark.
<P>
You must also create or set up tables/keyspaces/storage buckets to store records. The details vary according to each database system, and depend on the workload you wish
to run. Before the YCSB Client runs, the tables must be created, since the Client itself will not request to create the tables. This is because for some systems, there
is a manual (human-operated) step to create tables, and for other systems, the table must be created before the database cluster is started.
<P>
The tables that must be created depends on the workload. For CoreWorkload, the YCSB Client will assume that there is a "table" called "usertable" with a
flexible schema: columns can be added at runtime as desired. This "usertable" can be mapped into whatever storage container is appropriate. For example, in MySQL you would "CREATE TABLE," in
Cassandra you would define a keyspace in the Cassandra configuration, and so on. The database interface layer (described in step 2) will receive requests for
reading or writing records in "usertable" and translate them into requests for the actual storage you have allocated. This may mean that you have to provide
information for the database interface layer to help it understand what the structure of the underlying storage is. For example, in Cassandra, you must define
"column families" in addition to keyspaces. Thus, it is necessary to create a column family and give the family some name (for example, you might use "values.") Then,
the database access layer will need to know to refer to the "values" column family, either because the string "values" is passed in as a property, or because it is
hardcoded in the database interface layer.
<H3>Step 2. Choose the appropriate DB interface layer</H3>
The DB interface layer is a java class that execute read, insert, update, delete and scan calls generated by the YCSB Client into calls against your database's API. This class is a
subclass of the abstract DB class in the com.yahoo.ycsb package. The DB interface layer is not built as part of building YCSB; you must build it separately. Once you have built the interface layer,
you will specify the class name of the layer on the command line when you run YCSB Client, and the Client will dynamically load your interface class. Any properties specified on the command line, or
in parameter files specified on the command line, will be passed to the DB interface instance, and can be used to configure the layer (for example, to tell it the hostname of the database you are benchmarking.)
<P>
The YCSB Client is distributed with a simple dummy interface layer, com.yahoo.ycsb.BasicDB. This layer just prints the operations it would have executed to System.out. It can be useful for ensuring
that the client is operating properly, and for debugging your workloads.
<P>
Other sample DB interface layer classes are distributed in src/com/yahoo/ycsb/db. To build those classes, run:
<pre>
% ant dbcompile
</pre>
Note that these classes will not be built using a normal ant execution, and not included in the resulting ycsb.jar. Thus, to use these classes, you will need
to 1. have them on your classpath, and 2. have any required libraries also on your classpath. For example, the Cassandra database interface layer is com.yahoo.ycsb.db.CassandraClient, and requires the libthrift.jar
to be accessible on your classpath.
<P>
For more details about implementing a DB interface layer, see <a href="dblayer.html">here</a>.
<h3>Step 3. Choose the appropriate workload</h3>
The workload defines the data that will be loaded into the database during the <I>loading</I> phase, and the operations that will be executed against the data set during the <I>transaction</I> phase.
Typically, a workload is a combination of:
<UL>
<LI>Workload java class (subclass of com.yahoo.ycsb.Workload)
<LI>Parameter file (in the Java Properties format)
</UL>
Because the properties of the dataset must be known during the <i>loading</i> phase (so that the proper kind of record can be constructed and inserted) and during the <I>transaction</I> phase (so
that the correct record ids and fields can be referred to) a single set of properties is shared among both phases. Thus the parameter file is used in both phases. The
workload java class uses those properties to either insert records (<i>loading</i> phase) or execute transactions against those records (<i>transaction</i> phase). The choice
of which phase to run is based on a parameter you specify when you run the YCSB Client tool.
<p>
You specify both the java class and the parameter file on the command line when you run the YCSB Client. The Client will dynamically load your workload class, pass
it the properties from the parameters file (and any additional properties specified on the command line) and then execute the workload. This happens both for the <I>loading</I> and <I>transaction</I> phases,
as the same properties and workload logic applies to both. For example, if the <I>loading</I> phase creates records with 10 fields, then the <i>transaction</I> phase must know that there are 10 fields
it can query and modify.
<P>
The CoreWorkload is a package of standard workloads that is distributed with the YCSB and can be used directly. In particular, the CoreWorkload defines a simple mix of read/insert/update/scan operations. The relative
frequency of each operation is defined in the parameter file, as are other properties of the workload. Thus, by changing the parameter file, a variety of different concrete workloads can be executed. For more details
on the CoreWorkload, see <a href="coreworkloads.html">here</a>.
<P>
If the CoreWorkload does not satisfy your needs, you can define your own workload by subclassing the com.yahoo.ycsb.Workload class. Details for doing this are <a href="workload.html">here</A>.
<H3>Step 4. Choose the appropriate runtime parameters</H3>
Although the workload class and paramters file define a specific workload, there are additional settings that you may want to specify for a particular run of the benchmark. These settings are provided on the command line
when you run the YCSB client. These settings are:
<UL>
<LI><B>Threads</B>: the number of client threads. By default, the YCSB Client uses a single worker thread, but additional threads can be specified. This is often done to increase the amount of load offered against the database.
<LI><B>Target</B>: the target number of operations per second. By default, the YCSB Client will try to do as many operations as it can. For example, if each operation takes 100 milliseconds on average, the Client will do about 10 operations per second per worker thread. However, you can throttle the
target number of operations per second. For example, to generate a latency versus throughput curve, you can try different target throughputs, and measure the resulting latency for each.
<LI><B>Status</B>: for a long running workload, it may be useful to have the Client report status, just to assure you it has not crashed and to give you some idea of its progress. By specifying "-s" on the command line, the Client will
report status every 10 seconds to System.err.
</UL>
<H3>Step 5. Load the data</H3>
Workloads have two executable phases: the <I>loading</I> phase (which defines the data to be inserted) and the <I>transactions</I> phase (which defines the
operations to be executed against the data set.) To load the data, you run the YCSB Client and tell it to execute the <I>loading</I> section.
<P>
For example, consider the benchmark workload A (more details about the standard workloads are XXX here XXX). To load the standard dataset:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada
</pre>
A few notes about this command:
<UL>
<LI>The "-load" parameter tells the Client to execute the <I>data</I> section of the workload.
<LI>The "-db" parameter tells the Client which DB interface layer to use. In this case, we used the dummy BasicDB layer. You can also specify this as a property
in your parameters file using the "db" property (for example, "db=com.yahoo.ycsb.BasicDB").
<LI>The "-P" parameter is used to load property files. In this case, we used it to load the workloada parameter file.
</UL>
If you used BasicDB, you would see the insert statements for the database. If you used a real DB interface layer, the records would be loaded into the database.
<P>
The standard workload paramter files create very small databases; for example, workloada creates only 1,000 records. This is useful while debugging your setup. However,
to run an actual benchmark you'll want to generate a much larger database. For example, imagine you want to load 100 million records. Then, you will need to
override the default "recordcount" property in the workloada file. This can be done in one of two ways:
<OL>
<LI>Specifying a new property file containing a new value of "recordcount." If this file is specified on the command line after the workloada file, it will override
any properties in workloada. For example, create a file called "large.dat" with the single line:
<PRE>
recordcount=100000000
</PRE>
Then, run the client as follows:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat
</pre>
The client will load both property files, but will use the value of recordcount from the last file it loaded, e.g. large.dat
<LI>Specify a new value of the "recordcount" property on the command line. Any properties specified on the command line override properties specified in property files.
In this case, run the client as follows:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -p recordcount=100000000
</pre>
</OL>
In general, it is good practice to store any important properties in new parameter files, instead of specifying them on the command line. This makes
your benchmark results more reproducible; instead of having to reconstruct the exact command line you used, you just reuse the property files. Note, however, that
the YCSB Client will print out its command line when it begins executing, so if you store the output of the client in a data file, you can retrieve the command line
from that file.
<P>
Because a large database load will take a long time, you may wish to 1. require the Client to produce status, and 2. direct any output to a datafile. Thus, you might
execute the following to load your database:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > load.dat
</pre>
The "-s" parameter will require the Client to produce status report on System.err. Thus, the output of this command might be:
<PRE>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -load -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > load.dat
Loading workload... (might take a few minutes in some cases for large data sets)
Starting test.
0 sec: 0 operations
10 sec: 61731 operations; 6170.6317473010795 operations/sec
20 sec: 129054 operations; 6450.76477056883 operations/sec
...
</PRE>
This status output will help you to see how quickly load operations are executing (so you can estimate the completion time of the load) as well as verify that the
load is making progress.
<P>
When the load completes, the Client will report statistics about the performance of the load. These statistics are the same as in the transaction phase, so see below for information on
interpreting those statistics.
<H3>Step 6: Execute the workload</H3>
Once the data is loaded, you can execute the workload. This is done by telling the client to run the <i>transaction</I> section of the workload.
<P>
To execute the workload, you can use the following command:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s > transactions.dat
</pre>
The main difference in this invocation is that we used the "-t" parameter to tell the Client to use the <I>transaction</I> section instead of the <I>data</I> section.
If you used BasicDB, and examine the resulting transactions.dat file, you will see a combination of read and update requests, as well as statistics about the execution.
<P>
Typically you will want to use the "-threads" and "-target" parameters to control the amount of offered load. For example, we might want 10 threads attempting a total of 100 operations per second (e.g. 10 operations/sec per thread.) As long
as the average latency of operations is not above 100 ms, each thread will be able to carry out its intended 10 operations per second. In general, you need enough threads so that no thread is attempting more operations per second than is possible, otherwise
your achieved throughput will be less than the specified target throughput. For this example, we can execute:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s -threads 10 -target 100 > transactions.dat
</pre>
Note in this example we have used the "-threads 10" command line parameter to specify 10 threads, and "-target 100" command line parameter to specify 100 operations per second as the target.
Alternatively, both values can be set in your parameters file using the "threads" and "target" properties respectively. For example:
<pre>
threads=10
target=100
</pre>
<P>
At the end of the run, the Client will report performance statistics on System.out. In the above example, these statistics will be written to the transactions.dat file.
The default is to produce average, min, max, 95th and 99th percentile latency for each operation type (read, update, etc.), a count of the return codes for each operation, and a histogram of latencies for each
operation. The return codes are defined by your database interface layer, and allow you to see if there were any errors during the workload. For the above example, we might get output like:
<pre>
[OVERALL],RunTime(ms), 10110
[OVERALL],Throughput(ops/sec), 98.91196834817013
[UPDATE], Operations, 491
[UPDATE], AverageLatency(ms), 0.054989816700611
[UPDATE], MinLatency(ms), 0
[UPDATE], MaxLatency(ms), 1
[UPDATE], 95thPercentileLatency(ms), 1
[UPDATE], 99thPercentileLatency(ms), 1
[UPDATE], Return=0, 491
[UPDATE], 0, 464
[UPDATE], 1, 27
[UPDATE], 2, 0
[UPDATE], 3, 0
[UPDATE], 4, 0
...
</PRE>
This output indicates:
<UL>
<LI>The total execution time was 10.11 seconds
<LI>The average throughput was 98.9 operations/sec (across all threads)
<LI>There were 491 update operations, with associated average, min, max, 95th and 99th percentile latencies
<LI>All 491 update operations had a return code of zero (success in this case)
<LI>464 operations completed in less than 1 ms, while 27 completed between 1 and 2 ms.
</UL>
Similar statistics are available for the read operations.
<P>
While a histogram of latencies is often useful, sometimes a timeseries is more useful. To request a time series, specify the "measurementtype=timeseries" property on the Client command line
or in a properties file. By default, the Client will report average latency for each interval of 1000 milliseconds. You can specify a different granularity for reporting
using the "timeseries.granularity" property. For example:
<pre>
% java -cp build/ycsb.jar com.yahoo.ycsb.Client -t -db com.yahoo.ycsb.BasicDB -P workloads/workloada -P large.dat -s -threads 10 -target 100 -p measurementtype=timeseries -p timeseries.granularity=2000 > transactions.dat
</pre>
will report a timeseries, with readings averaged every 2,000 milliseconds (e.g. 2 seconds). The result will be:
<PRE>
[OVERALL],RunTime(ms), 10077
[OVERALL],Throughput(ops/sec), 9923.58836955443
[UPDATE], Operations, 50396
[UPDATE], AverageLatency(ms), 0.04339630129375347
[UPDATE], MinLatency(ms), 0
[UPDATE], MaxLatency(ms), 338
[UPDATE], Return=0, 50396
[UPDATE], 0, 0.10264765784114054
[UPDATE], 2000, 0.026989343690867442
[UPDATE], 4000, 0.0352882703777336
[UPDATE], 6000, 0.004238958990536277
[UPDATE], 8000, 0.052813085033008175
[UPDATE], 10000, 0.0
[READ], Operations, 49604
[READ], AverageLatency(ms), 0.038242883638416256
[READ], MinLatency(ms), 0
[READ], MaxLatency(ms), 230
[READ], Return=0, 49604
[READ], 0, 0.08997245741099663
[READ], 2000, 0.02207505518763797
[READ], 4000, 0.03188493260913297
[READ], 6000, 0.004869141813755326
[READ], 8000, 0.04355329949238579
[READ], 10000, 0.005405405405405406
</PRE>
This output shows separate time series for update and read operations, with data reported every 2000 milliseconds. The data reported for a time point is the average over the previous 2000 milliseconds only.
(In this case we used 100,000 operations and a target of 10,000 operations per second for a more interesting output.)
A note about latency measurements: the Client measures the end to end latency of executing a particular operation against the database. That is, it starts a timer before calling the appropriate method in the DB interface layer
class, and stops the timer when the method returns. Thus latencies include: executing inside the interface layer, network latency to the database server, and database execution time. They do not include delays introduced for throttling
the target throughput. That is, if you specify a target of 10 operations per second (and a single thread) then the Client will only execute an operation every 100 milliseconds. If the operation takes 12 milliseconds, then the client
will wait for an additional 88 milliseconds before trying the next operation. However, the reported latency will not include this wait time; a latency of 12 milliseconds, not 100, will be reported.
<HR>
<A name="extending">
<H1>Extending YCSB</H1>
YCSB is designed to be extensible. It is easy to add a new database interface layer to support benchmarking a new database. It is also easy to define new workloads.
<ul>
<li><A HREF="dblayer.html">DB Interface Layer</a>
<li><A HREF="workload.html">Implementing new workloads</a>
</UL>
More details about the entire class structure of YCSB is available here:
<UL>
<LI><A HREF="javadoc/index.html">YCSB javadoc documentation</A>
</ul>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</body>
</html>

Просмотреть файл

@ -0,0 +1,86 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
All Classes
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<FONT size="+1" CLASS="FrameHeadingFont">
<B>All Classes</B></FONT>
<BR>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb" target="classFrame">BasicDB</A>
<BR>
<A HREF="com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb" target="classFrame">Client</A>
<BR>
<A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads" target="classFrame">CoreWorkload</A>
<BR>
<A HREF="com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">CounterGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb" target="classFrame">DB</A>
<BR>
<A HREF="com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb" target="classFrame">DBException</A>
<BR>
<A HREF="com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb" target="classFrame">DBFactory</A>
<BR>
<A HREF="com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb" target="classFrame">DBWrapper</A>
<BR>
<A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">DiscreteGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodAB</A>
<BR>
<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodScrambleVector</A>
<BR>
<A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb" target="classFrame">Generator</A>
<BR>
<A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">IntegerGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb" target="classFrame">Measurements</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurement</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurementHistogram</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurementTimeSeries</A>
<BR>
<A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">ScrambledZipfianGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">SkewedLatestGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb" target="classFrame">TestCollisions</A>
<BR>
<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestExpandedZipfian</A>
<BR>
<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestZipfian</A>
<BR>
<A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformIntegerGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb" target="classFrame">UnknownDBException</A>
<BR>
<A HREF="com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb" target="classFrame">Utils</A>
<BR>
<A HREF="com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb" target="classFrame">Workload</A>
<BR>
<A HREF="com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb" target="classFrame">WorkloadException</A>
<BR>
<A HREF="com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">ZipfianGenerator</A>
<BR>
</FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,86 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
All Classes
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<FONT size="+1" CLASS="FrameHeadingFont">
<B>All Classes</B></FONT>
<BR>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<BR>
<A HREF="com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<BR>
<A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<BR>
<A HREF="com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<BR>
<A HREF="com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
<BR>
<A HREF="com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A>
<BR>
<A HREF="com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<BR>
<A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<BR>
<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<BR>
<A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A>
<BR>
<A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<BR>
<A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<BR>
<A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<BR>
<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
<BR>
<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
<BR>
<A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>
<BR>
<A HREF="com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
<BR>
<A HREF="com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<BR>
<A HREF="com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<BR>
<A HREF="com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
<BR>
<A HREF="com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<BR>
</FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,508 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
BasicDB
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.BasicDB class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="BasicDB";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/BasicDB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="BasicDB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class BasicDB</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DB</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.BasicDB</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>BasicDB</B><DT>extends <A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></DL>
</PRE>
<P>
Basic DB that just prints out the requested operations, instead of doing them against a database.
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY">SIMULATE_DELAY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY_DEFAULT">SIMULATE_DELAY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#VERBOSE">VERBOSE</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#VERBOSE_DEFAULT">VERBOSE_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#BasicDB()">BasicDB</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.DB"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A>, <A HREF="../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A>, <A HREF="../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="VERBOSE"><!-- --></A><H3>
VERBOSE</H3>
<PRE>
public static final java.lang.String <B>VERBOSE</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.BasicDB.VERBOSE">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="VERBOSE_DEFAULT"><!-- --></A><H3>
VERBOSE_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>VERBOSE_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.BasicDB.VERBOSE_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SIMULATE_DELAY"><!-- --></A><H3>
SIMULATE_DELAY</H3>
<PRE>
public static final java.lang.String <B>SIMULATE_DELAY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.BasicDB.SIMULATE_DELAY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SIMULATE_DELAY_DEFAULT"><!-- --></A><H3>
SIMULATE_DELAY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>SIMULATE_DELAY_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.BasicDB.SIMULATE_DELAY_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="BasicDB()"><!-- --></A><H3>
BasicDB</H3>
<PRE>
public <B>BasicDB</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()</PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#init()">init</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write.<DD><CODE>result</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>result</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/BasicDB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="BasicDB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,379 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
Client
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.Client class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Client";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Client.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Client.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class Client</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.Client</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>Client</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#INSERT_COUNT_PROPERTY">INSERT_COUNT_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Indicates how many inserts to do, if less than recordcount.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#OPERATION_COUNT_PROPERTY">OPERATION_COUNT_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#RECORD_COUNT_PROPERTY">RECORD_COUNT_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#WORKLOAD_PROPERTY">WORKLOAD_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#Client()">Client</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#checkRequiredProperties(java.util.Properties)">checkRequiredProperties</A></B>(java.util.Properties&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Client.html#usageMessage()">usageMessage</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="OPERATION_COUNT_PROPERTY"><!-- --></A><H3>
OPERATION_COUNT_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>OPERATION_COUNT_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Client.OPERATION_COUNT_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="RECORD_COUNT_PROPERTY"><!-- --></A><H3>
RECORD_COUNT_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>RECORD_COUNT_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Client.RECORD_COUNT_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="WORKLOAD_PROPERTY"><!-- --></A><H3>
WORKLOAD_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>WORKLOAD_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Client.WORKLOAD_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_COUNT_PROPERTY"><!-- --></A><H3>
INSERT_COUNT_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>INSERT_COUNT_PROPERTY</B></PRE>
<DL>
<DD>Indicates how many inserts to do, if less than recordcount. Useful for partitioning
the load among multiple servers, if the client is the bottleneck. Additionally, workloads
should support the "insertstart" property, which tells them which record to start at.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Client.INSERT_COUNT_PROPERTY">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Client()"><!-- --></A><H3>
Client</H3>
<PRE>
public <B>Client</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="usageMessage()"><!-- --></A><H3>
usageMessage</H3>
<PRE>
public static void <B>usageMessage</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="checkRequiredProperties(java.util.Properties)"><!-- --></A><H3>
checkRequiredProperties</H3>
<PRE>
public static boolean <B>checkRequiredProperties</B>(java.util.Properties&nbsp;props)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Client.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Client.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,270 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
CounterGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.CounterGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="CounterGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/CounterGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CounterGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class CounterGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.IntegerGenerator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.CounterGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>CounterGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
</PRE>
<P>
Generates a sequence of integers 0, 1, ...
<P>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/CounterGenerator.html#CounterGenerator(int)">CounterGenerator</A></B>(int&nbsp;countstart)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a counter that starts at countstart</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/CounterGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the generator returns numeric (integer) values, return the next value as an int.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.IntegerGenerator"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="CounterGenerator(int)"><!-- --></A><H3>
CounterGenerator</H3>
<PRE>
public <B>CounterGenerator</B>(int&nbsp;countstart)</PRE>
<DL>
<DD>Create a counter that starts at countstart
<P>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()</PRE>
<DL>
<DD>If the generator returns numeric (integer) values, return the next value as an int. Default is to return -1, which
is appropriate for generators that do not return numeric values.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/CounterGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CounterGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,467 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
DB
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.DB class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="DB";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class DB</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.DB</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>, <A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>DB</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
A layer for accessing a database to be benchmarked. Each thread in the client
will be given its own instance of whatever DB class is to be used in the test.
This class should be constructed using a no-argument constructor, so we can
load it dynamically. Any argument-based initialization should be
done by init().
<P>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#DB()">DB</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Properties</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the set of properties for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></B>(java.util.Properties&nbsp;p)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the properties for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DB()"><!-- --></A><H3>
DB</H3>
<PRE>
public <B>DB</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setProperties(java.util.Properties)"><!-- --></A><H3>
setProperties</H3>
<PRE>
public void <B>setProperties</B>(java.util.Properties&nbsp;p)</PRE>
<DL>
<DD>Set the properties for this DB.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getProperties()"><!-- --></A><H3>
getProperties</H3>
<PRE>
public java.util.Properties <B>getProperties</B>()</PRE>
<DL>
<DD>Get the set of properties for this DB.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()
throws <A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Cleanup any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public abstract int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public abstract int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public abstract int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write.<DD><CODE>values</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public abstract int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>values</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public abstract int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,279 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
DBException
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.DBException class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="DBException";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class DBException</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Throwable
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Exception
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.DBException</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>DBException</B><DT>extends java.lang.Exception</DL>
</PRE>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.DBException">Serialized Form</A></DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBException.html#DBException()">DBException</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBException.html#DBException(java.lang.String)">DBException</A></B>(java.lang.String&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBException.html#DBException(java.lang.String, java.lang.Throwable)">DBException</A></B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBException.html#DBException(java.lang.Throwable)">DBException</A></B>(java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Throwable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Throwable</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DBException(java.lang.String)"><!-- --></A><H3>
DBException</H3>
<PRE>
public <B>DBException</B>(java.lang.String&nbsp;message)</PRE>
<DL>
</DL>
<HR>
<A NAME="DBException()"><!-- --></A><H3>
DBException</H3>
<PRE>
public <B>DBException</B>()</PRE>
<DL>
</DL>
<HR>
<A NAME="DBException(java.lang.String, java.lang.Throwable)"><!-- --></A><H3>
DBException</H3>
<PRE>
public <B>DBException</B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<HR>
<A NAME="DBException(java.lang.Throwable)"><!-- --></A><H3>
DBException</H3>
<PRE>
public <B>DBException</B>(java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,252 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
DBFactory
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.DBFactory class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="DBFactory";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class DBFactory</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.DBFactory</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>DBFactory</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBFactory.html#DBFactory()">DBFactory</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBFactory.html#newDB(java.lang.String, java.util.Properties)">newDB</A></B>(java.lang.String&nbsp;dbname,
java.util.Properties&nbsp;properties)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DBFactory()"><!-- --></A><H3>
DBFactory</H3>
<PRE>
public <B>DBFactory</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="newDB(java.lang.String, java.util.Properties)"><!-- --></A><H3>
newDB</H3>
<PRE>
public static <A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A> <B>newDB</B>(java.lang.String&nbsp;dbname,
java.util.Properties&nbsp;properties)
throws <A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A></PRE>
<DL>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A></CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBFactory.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBFactory.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,488 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:52 PDT 2010 -->
<TITLE>
DBWrapper
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.DBWrapper class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="DBWrapper";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBWrapper.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBWrapper.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class DBWrapper</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DB</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.DBWrapper</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>DBWrapper</B><DT>extends <A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></DL>
</PRE>
<P>
Wrapper around a "real" DB that measures latencies and counts return codes.
<P>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#DBWrapper(com.yahoo.ycsb.DB)">DBWrapper</A></B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Properties</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#getProperties()">getProperties</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the set of properties for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#setProperties(java.util.Properties)">setProperties</A></B>(java.util.Properties&nbsp;p)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the properties for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DBWrapper(com.yahoo.ycsb.DB)"><!-- --></A><H3>
DBWrapper</H3>
<PRE>
public <B>DBWrapper</B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setProperties(java.util.Properties)"><!-- --></A><H3>
setProperties</H3>
<PRE>
public void <B>setProperties</B>(java.util.Properties&nbsp;p)</PRE>
<DL>
<DD>Set the properties for this DB.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getProperties()"><!-- --></A><H3>
getProperties</H3>
<PRE>
public java.util.Properties <B>getProperties</B>()</PRE>
<DL>
<DD>Get the set of properties for this DB.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()
throws <A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#init()">init</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Cleanup any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write.<DD><CODE>values</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>values</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DBWrapper.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DBWrapper.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,325 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
DiscreteGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.DiscreteGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="DiscreteGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DiscreteGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DiscreteGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class DiscreteGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.DiscreteGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>DiscreteGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html#DiscreteGenerator()">DiscreteGenerator</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html#addValue(double, java.lang.String)">addValue</A></B>(double&nbsp;weight,
java.lang.String&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html#lastString()">lastString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the previous string generated by the distribution; e.g., returned from the last nextString() call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If the generator returns numeric (integer) values, return the next value as an int.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html#nextString()">nextString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next string in the distribution.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DiscreteGenerator()"><!-- --></A><H3>
DiscreteGenerator</H3>
<PRE>
public <B>DiscreteGenerator</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextString()"><!-- --></A><H3>
nextString</H3>
<PRE>
public java.lang.String <B>nextString</B>()</PRE>
<DL>
<DD>Generate the next string in the distribution.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#nextString()">nextString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()
throws <A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></PRE>
<DL>
<DD>If the generator returns numeric (integer) values, return the next value as an int. Default is to return -1, which
is appropriate for generators that do not return numeric values.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></CODE> - if this generator does not support integer values</DL>
</DD>
</DL>
<HR>
<A NAME="lastString()"><!-- --></A><H3>
lastString</H3>
<PRE>
public java.lang.String <B>lastString</B>()</PRE>
<DL>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
been called, lastString() should return something reasonable.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#lastString()">lastString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="addValue(double, java.lang.String)"><!-- --></A><H3>
addValue</H3>
<PRE>
public void <B>addValue</B>(double&nbsp;weight,
java.lang.String&nbsp;value)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/DiscreteGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DiscreteGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,360 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
FindGoodAB
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.FindGoodAB class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="FindGoodAB";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/FindGoodAB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="FindGoodAB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class FindGoodAB</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.FindGoodAB</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>FindGoodAB</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#a">a</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#b">b</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#FindGoodAB()">FindGoodAB</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#hash(int, int)">hash</A></B>(int&nbsp;val,
int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#scramble(int)">scramble</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html#testVector(int)">testVector</A></B>(int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="a"><!-- --></A><H3>
a</H3>
<PRE>
public static int <B>a</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="b"><!-- --></A><H3>
b</H3>
<PRE>
public static int <B>b</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="FindGoodAB()"><!-- --></A><H3>
FindGoodAB</H3>
<PRE>
public <B>FindGoodAB</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="scramble(int)"><!-- --></A><H3>
scramble</H3>
<PRE>
public static int <B>scramble</B>(int&nbsp;val)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="hash(int, int)"><!-- --></A><H3>
hash</H3>
<PRE>
public static int <B>hash</B>(int&nbsp;val,
int&nbsp;itemcount)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="testVector(int)"><!-- --></A><H3>
testVector</H3>
<PRE>
public static int <B>testVector</B>(int&nbsp;itemcount)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/FindGoodAB.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="FindGoodAB.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,306 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
FindGoodScrambleVector
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.FindGoodScrambleVector class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="FindGoodScrambleVector";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/FindGoodScrambleVector.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="FindGoodScrambleVector.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class FindGoodScrambleVector</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.FindGoodScrambleVector</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>FindGoodScrambleVector</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html#FindGoodScrambleVector()">FindGoodScrambleVector</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html#hash(int, int)">hash</A></B>(int&nbsp;val,
int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html#scramble(int)">scramble</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html#scrambleArray()">scrambleArray</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="FindGoodScrambleVector()"><!-- --></A><H3>
FindGoodScrambleVector</H3>
<PRE>
public <B>FindGoodScrambleVector</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="scrambleArray()"><!-- --></A><H3>
scrambleArray</H3>
<PRE>
public static int[] <B>scrambleArray</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="scramble(int)"><!-- --></A><H3>
scramble</H3>
<PRE>
public static int <B>scramble</B>(int&nbsp;val)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="hash(int, int)"><!-- --></A><H3>
hash</H3>
<PRE>
public static int <B>hash</B>(int&nbsp;val,
int&nbsp;itemcount)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>args</CODE> - </DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/FindGoodScrambleVector.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="FindGoodScrambleVector.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,279 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Generator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.Generator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Generator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Generator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Generator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class Generator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.Generator</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>, <A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>Generator</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
An expression that generates a sequence of string values, following some distribution (Uniform, Zipfian, Sequential, etc.)
<P>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Generator.html#Generator()">Generator</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Generator.html#lastString()">lastString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the previous string generated by the distribution; e.g., returned from the last nextString() call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Generator.html#nextString()">nextString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next string in the distribution.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Generator()"><!-- --></A><H3>
Generator</H3>
<PRE>
public <B>Generator</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextString()"><!-- --></A><H3>
nextString</H3>
<PRE>
public abstract java.lang.String <B>nextString</B>()</PRE>
<DL>
<DD>Generate the next string in the distribution.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lastString()"><!-- --></A><H3>
lastString</H3>
<PRE>
public abstract java.lang.String <B>lastString</B>()</PRE>
<DL>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
been called, lastString() should return something reasonable.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Generator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Generator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,355 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
IntegerGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.IntegerGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="IntegerGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/IntegerGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="IntegerGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class IntegerGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.IntegerGenerator</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>, <A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>, <A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>, <A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>, <A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>IntegerGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></DL>
</PRE>
<P>
A generator that is capable of generating ints as well as strings
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>cooperb</DD>
</DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#IntegerGenerator()">IntegerGenerator</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the previous int generated by the distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the previous string generated by the distribution; e.g., returned from the last nextString() call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next value as an int.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next string in the distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></B>(int&nbsp;last)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the last value generated.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="IntegerGenerator()"><!-- --></A><H3>
IntegerGenerator</H3>
<PRE>
public <B>IntegerGenerator</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setLastInt(int)"><!-- --></A><H3>
setLastInt</H3>
<PRE>
public void <B>setLastInt</B>(int&nbsp;last)</PRE>
<DL>
<DD>Set the last value generated. IntegerGenerator subclasses must use this call
to properly set the last string value, or the lastString() and lastInt() calls won't work.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public abstract int <B>nextInt</B>()</PRE>
<DL>
<DD>Return the next value as an int. When overriding this method, be sure to call setLastString() properly, or the lastString() call won't work.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="nextString()"><!-- --></A><H3>
nextString</H3>
<PRE>
public java.lang.String <B>nextString</B>()</PRE>
<DL>
<DD>Generate the next string in the distribution.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#nextString()">nextString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lastString()"><!-- --></A><H3>
lastString</H3>
<PRE>
public java.lang.String <B>lastString</B>()</PRE>
<DL>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
been called, lastString() should return something reasonable.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#lastString()">lastString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lastInt()"><!-- --></A><H3>
lastInt</H3>
<PRE>
public int <B>lastInt</B>()</PRE>
<DL>
<DD>Return the previous int generated by the distribution. This call is unique to IntegerGenerator subclasses, and assumes
IntegerGenerator subclasses always return ints for nextInt() (e.g. not arbitrary strings).
<P>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/IntegerGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="IntegerGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,354 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Measurements
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.Measurements class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Measurements";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Measurements.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Measurements.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class Measurements</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.Measurements</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>Measurements</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
Collects latency measurements, and reports them when requested.
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>cooperb</DD>
</DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#Measurements(java.util.Properties)">Measurements</A></B>(java.util.Properties&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#getMeasurements()">getMeasurements</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#getSummary()">getSummary</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#measure(java.lang.String, int)">measure</A></B>(java.lang.String&nbsp;operation,
int&nbsp;latency)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#printReport(java.io.PrintStream)">printReport</A></B>(java.io.PrintStream&nbsp;out)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#reportReturnCode(java.lang.String, int)">reportReturnCode</A></B>(java.lang.String&nbsp;operation,
int&nbsp;code)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Measurements.html#setProperties(java.util.Properties)">setProperties</A></B>(java.util.Properties&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Measurements(java.util.Properties)"><!-- --></A><H3>
Measurements</H3>
<PRE>
public <B>Measurements</B>(java.util.Properties&nbsp;props)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="setProperties(java.util.Properties)"><!-- --></A><H3>
setProperties</H3>
<PRE>
public static void <B>setProperties</B>(java.util.Properties&nbsp;props)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getMeasurements()"><!-- --></A><H3>
getMeasurements</H3>
<PRE>
public static <A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A> <B>getMeasurements</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="measure(java.lang.String, int)"><!-- --></A><H3>
measure</H3>
<PRE>
public void <B>measure</B>(java.lang.String&nbsp;operation,
int&nbsp;latency)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="reportReturnCode(java.lang.String, int)"><!-- --></A><H3>
reportReturnCode</H3>
<PRE>
public void <B>reportReturnCode</B>(java.lang.String&nbsp;operation,
int&nbsp;code)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="printReport(java.io.PrintStream)"><!-- --></A><H3>
printReport</H3>
<PRE>
public void <B>printReport</B>(java.io.PrintStream&nbsp;out)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSummary()"><!-- --></A><H3>
getSummary</H3>
<PRE>
public java.lang.String <B>getSummary</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Measurements.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Measurements.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,328 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
OneMeasurement
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.OneMeasurement class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="OneMeasurement";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurement.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurement.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class OneMeasurement</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.OneMeasurement</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>, <A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>OneMeasurement</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#OneMeasurement(java.lang.String)">OneMeasurement</A></B>(java.lang.String&nbsp;_name)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getName()">getName</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getSummary()">getSummary</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#measure(int)">measure</A></B>(int&nbsp;latency)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#printReport(java.io.PrintStream)">printReport</A></B>(java.io.PrintStream&nbsp;out)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#reportReturnCode(int)">reportReturnCode</A></B>(int&nbsp;code)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="OneMeasurement(java.lang.String)"><!-- --></A><H3>
OneMeasurement</H3>
<PRE>
public <B>OneMeasurement</B>(java.lang.String&nbsp;_name)</PRE>
<DL>
<DL>
<DT><B>Parameters:</B><DD><CODE>_name</CODE> - </DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="getName()"><!-- --></A><H3>
getName</H3>
<PRE>
public java.lang.String <B>getName</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="reportReturnCode(int)"><!-- --></A><H3>
reportReturnCode</H3>
<PRE>
public abstract void <B>reportReturnCode</B>(int&nbsp;code)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="measure(int)"><!-- --></A><H3>
measure</H3>
<PRE>
public abstract void <B>measure</B>(int&nbsp;latency)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="printReport(java.io.PrintStream)"><!-- --></A><H3>
printReport</H3>
<PRE>
public abstract void <B>printReport</B>(java.io.PrintStream&nbsp;out)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSummary()"><!-- --></A><H3>
getSummary</H3>
<PRE>
public abstract java.lang.String <B>getSummary</B>()</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurement.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurement.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,390 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
OneMeasurementHistogram
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.OneMeasurementHistogram class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="OneMeasurementHistogram";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurementHistogram.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurementHistogram.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class OneMeasurementHistogram</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.OneMeasurement</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.OneMeasurementHistogram</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>OneMeasurementHistogram</B><DT>extends <A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></DL>
</PRE>
<P>
Take measurements and maintain a histogram of latencies.
<P>
<P>
<DL>
<DT><B>Author:</B></DT>
<DD>cooperb</DD>
</DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS">BUCKETS</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS_DEFAULT">BUCKETS_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#OneMeasurementHistogram(java.lang.String, java.util.Properties)">OneMeasurementHistogram</A></B>(java.lang.String&nbsp;name,
java.util.Properties&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#getSummary()">getSummary</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#measure(int)">measure</A></B>(int&nbsp;latency)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#printReport(java.io.PrintStream)">printReport</A></B>(java.io.PrintStream&nbsp;out)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html#reportReturnCode(int)">reportReturnCode</A></B>(int&nbsp;code)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.OneMeasurement"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getName()">getName</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="BUCKETS"><!-- --></A><H3>
BUCKETS</H3>
<PRE>
public static final java.lang.String <B>BUCKETS</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.OneMeasurementHistogram.BUCKETS">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="BUCKETS_DEFAULT"><!-- --></A><H3>
BUCKETS_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>BUCKETS_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.OneMeasurementHistogram.BUCKETS_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="OneMeasurementHistogram(java.lang.String, java.util.Properties)"><!-- --></A><H3>
OneMeasurementHistogram</H3>
<PRE>
public <B>OneMeasurementHistogram</B>(java.lang.String&nbsp;name,
java.util.Properties&nbsp;props)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="reportReturnCode(int)"><!-- --></A><H3>
reportReturnCode</H3>
<PRE>
public void <B>reportReturnCode</B>(int&nbsp;code)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#reportReturnCode(int)">reportReturnCode</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="measure(int)"><!-- --></A><H3>
measure</H3>
<PRE>
public void <B>measure</B>(int&nbsp;latency)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#measure(int)">measure</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="printReport(java.io.PrintStream)"><!-- --></A><H3>
printReport</H3>
<PRE>
public void <B>printReport</B>(java.io.PrintStream&nbsp;out)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#printReport(java.io.PrintStream)">printReport</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSummary()"><!-- --></A><H3>
getSummary</H3>
<PRE>
public java.lang.String <B>getSummary</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getSummary()">getSummary</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurementHistogram.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurementHistogram.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,384 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
OneMeasurementTimeSeries
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.OneMeasurementTimeSeries class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="OneMeasurementTimeSeries";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurementTimeSeries.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurementTimeSeries.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class OneMeasurementTimeSeries</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.OneMeasurement</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.OneMeasurementTimeSeries</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>OneMeasurementTimeSeries</B><DT>extends <A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY">GRANULARITY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Granularity for time series; measurements will be averaged in chunks of this granularity.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY_DEFAULT">GRANULARITY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#OneMeasurementTimeSeries(java.lang.String, java.util.Properties)">OneMeasurementTimeSeries</A></B>(java.lang.String&nbsp;name,
java.util.Properties&nbsp;props)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#getSummary()">getSummary</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#measure(int)">measure</A></B>(int&nbsp;latency)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#printReport(java.io.PrintStream)">printReport</A></B>(java.io.PrintStream&nbsp;out)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html#reportReturnCode(int)">reportReturnCode</A></B>(int&nbsp;code)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.OneMeasurement"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getName()">getName</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="GRANULARITY"><!-- --></A><H3>
GRANULARITY</H3>
<PRE>
public static final java.lang.String <B>GRANULARITY</B></PRE>
<DL>
<DD>Granularity for time series; measurements will be averaged in chunks of this granularity. Units are milliseconds.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.OneMeasurementTimeSeries.GRANULARITY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="GRANULARITY_DEFAULT"><!-- --></A><H3>
GRANULARITY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>GRANULARITY_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.OneMeasurementTimeSeries.GRANULARITY_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="OneMeasurementTimeSeries(java.lang.String, java.util.Properties)"><!-- --></A><H3>
OneMeasurementTimeSeries</H3>
<PRE>
public <B>OneMeasurementTimeSeries</B>(java.lang.String&nbsp;name,
java.util.Properties&nbsp;props)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="measure(int)"><!-- --></A><H3>
measure</H3>
<PRE>
public void <B>measure</B>(int&nbsp;latency)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#measure(int)">measure</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="printReport(java.io.PrintStream)"><!-- --></A><H3>
printReport</H3>
<PRE>
public void <B>printReport</B>(java.io.PrintStream&nbsp;out)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#printReport(java.io.PrintStream)">printReport</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="reportReturnCode(int)"><!-- --></A><H3>
reportReturnCode</H3>
<PRE>
public void <B>reportReturnCode</B>(int&nbsp;code)</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#reportReturnCode(int)">reportReturnCode</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getSummary()"><!-- --></A><H3>
getSummary</H3>
<PRE>
public java.lang.String <B>getSummary</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html#getSummary()">getSummary</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/OneMeasurementTimeSeries.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="OneMeasurementTimeSeries.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,391 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
ScrambledZipfianGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.ScrambledZipfianGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="ScrambledZipfianGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/ScrambledZipfianGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ScrambledZipfianGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class ScrambledZipfianGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.IntegerGenerator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.ScrambledZipfianGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>ScrambledZipfianGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
</PRE>
<P>
A generator of a zipfian distribution. It produces a sequence of items, such that some items are more popular than others, according
to a zipfian distribution. When you construct an instance of this class, you specify the number of items in the set to draw from, either
by specifying an itemcount (so that the sequence is of items from 0 to itemcount-1) or by specifying a min and a max (so that the sequence is of
items from min to max inclusive). After you construct the instance, you can change the number of items by calling nextInt(itemcount) or nextLong(itemcount).
Unlike @ZipfianGenerator, this class scatters the "popular" items across the itemspace. Use this, instead of @ZipfianGenerator, if you
don't want the head of the distribution (the popular items) clustered together.
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#ITEM_COUNT">ITEM_COUNT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#ZETAN">ZETAN</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#ScrambledZipfianGenerator(long)">ScrambledZipfianGenerator</A></B>(long&nbsp;_items)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for the specified number of items.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#ScrambledZipfianGenerator(long, long)">ScrambledZipfianGenerator</A></B>(long&nbsp;_min,
long&nbsp;_max)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for items between min and max.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next int in the sequence.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html#nextLong()">nextLong</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next long in the sequence.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.IntegerGenerator"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ZETAN"><!-- --></A><H3>
ZETAN</H3>
<PRE>
public static final double <B>ZETAN</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.ScrambledZipfianGenerator.ZETAN">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="ITEM_COUNT"><!-- --></A><H3>
ITEM_COUNT</H3>
<PRE>
public static final long <B>ITEM_COUNT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.ScrambledZipfianGenerator.ITEM_COUNT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ScrambledZipfianGenerator(long)"><!-- --></A><H3>
ScrambledZipfianGenerator</H3>
<PRE>
public <B>ScrambledZipfianGenerator</B>(long&nbsp;_items)</PRE>
<DL>
<DD>Create a zipfian generator for the specified number of items.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>_items</CODE> - The number of items in the distribution.</DL>
</DL>
<HR>
<A NAME="ScrambledZipfianGenerator(long, long)"><!-- --></A><H3>
ScrambledZipfianGenerator</H3>
<PRE>
public <B>ScrambledZipfianGenerator</B>(long&nbsp;_min,
long&nbsp;_max)</PRE>
<DL>
<DD>Create a zipfian generator for items between min and max.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>min</CODE> - The smallest integer to generate in the sequence.<DD><CODE>max</CODE> - The largest integer to generate in the sequence.</DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()</PRE>
<DL>
<DD>Return the next int in the sequence.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="nextLong()"><!-- --></A><H3>
nextLong</H3>
<PRE>
public long <B>nextLong</B>()</PRE>
<DL>
<DD>Return the next long in the sequence.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/ScrambledZipfianGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ScrambledZipfianGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,282 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
SkewedLatestGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.SkewedLatestGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="SkewedLatestGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/SkewedLatestGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="SkewedLatestGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class SkewedLatestGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.IntegerGenerator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.SkewedLatestGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>SkewedLatestGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html#SkewedLatestGenerator(com.yahoo.ycsb.CounterGenerator)">SkewedLatestGenerator</A></B>(<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>&nbsp;basis)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next string in the distribution, skewed Zipfian favoring the items most recently returned by the basis generator.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.IntegerGenerator"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="SkewedLatestGenerator(com.yahoo.ycsb.CounterGenerator)"><!-- --></A><H3>
SkewedLatestGenerator</H3>
<PRE>
public <B>SkewedLatestGenerator</B>(<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>&nbsp;basis)</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()</PRE>
<DL>
<DD>Generate the next string in the distribution, skewed Zipfian favoring the items most recently returned by the basis generator.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/SkewedLatestGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="SkewedLatestGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,360 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
TestCollisions
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.TestCollisions class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="TestCollisions";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestCollisions.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestCollisions.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class TestCollisions</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.TestCollisions</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>TestCollisions</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#a">a</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#b">b</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#TestCollisions()">TestCollisions</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#hash(int, int)">hash</A></B>(int&nbsp;val,
int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#scramble(int)">scramble</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html#testVector(int)">testVector</A></B>(int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="a"><!-- --></A><H3>
a</H3>
<PRE>
public static int <B>a</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="b"><!-- --></A><H3>
b</H3>
<PRE>
public static int <B>b</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="TestCollisions()"><!-- --></A><H3>
TestCollisions</H3>
<PRE>
public <B>TestCollisions</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="scramble(int)"><!-- --></A><H3>
scramble</H3>
<PRE>
public static int <B>scramble</B>(int&nbsp;val)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="hash(int, int)"><!-- --></A><H3>
hash</H3>
<PRE>
public static int <B>hash</B>(int&nbsp;val,
int&nbsp;itemcount)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="testVector(int)"><!-- --></A><H3>
testVector</H3>
<PRE>
public static int <B>testVector</B>(int&nbsp;itemcount)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestCollisions.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestCollisions.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,247 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
TestExpandedZipfian
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.TestExpandedZipfian class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="TestExpandedZipfian";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestExpandedZipfian.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestExpandedZipfian.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class TestExpandedZipfian</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.TestExpandedZipfian</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>TestExpandedZipfian</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html#TestExpandedZipfian()">TestExpandedZipfian</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="TestExpandedZipfian()"><!-- --></A><H3>
TestExpandedZipfian</H3>
<PRE>
public <B>TestExpandedZipfian</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestExpandedZipfian.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestExpandedZipfian.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,247 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
TestZipfian
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.TestZipfian class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="TestZipfian";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestZipfian.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestZipfian.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class TestZipfian</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.TestZipfian</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>TestZipfian</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestZipfian.html#TestZipfian()">TestZipfian</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/TestZipfian.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="TestZipfian()"><!-- --></A><H3>
TestZipfian</H3>
<PRE>
public <B>TestZipfian</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/TestZipfian.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="TestZipfian.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,285 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
UniformGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.UniformGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="UniformGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UniformGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UniformGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class UniformGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.UniformGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>UniformGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></DL>
</PRE>
<P>
An expression that generates a random integer in the specified range
<P>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UniformGenerator.html#UniformGenerator(java.util.Vector)">UniformGenerator</A></B>(java.util.Vector&lt;java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a generator that will return strings from the specified set uniformly randomly</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UniformGenerator.html#lastString()">lastString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the previous string generated by the distribution; e.g., returned from the last nextString() call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UniformGenerator.html#nextString()">nextString</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next string in the distribution.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="UniformGenerator(java.util.Vector)"><!-- --></A><H3>
UniformGenerator</H3>
<PRE>
public <B>UniformGenerator</B>(java.util.Vector&lt;java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Creates a generator that will return strings from the specified set uniformly randomly
<P>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextString()"><!-- --></A><H3>
nextString</H3>
<PRE>
public java.lang.String <B>nextString</B>()</PRE>
<DL>
<DD>Generate the next string in the distribution.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#nextString()">nextString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="lastString()"><!-- --></A><H3>
lastString</H3>
<PRE>
public java.lang.String <B>lastString</B>()</PRE>
<DL>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
been called, lastString() should return something reasonable.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/Generator.html#lastString()">lastString</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UniformGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UniformGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,270 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
UniformIntegerGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.UniformIntegerGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="UniformIntegerGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UniformIntegerGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UniformIntegerGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class UniformIntegerGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.IntegerGenerator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.UniformIntegerGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>UniformIntegerGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
</PRE>
<P>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html#UniformIntegerGenerator(int, int)">UniformIntegerGenerator</A></B>(int&nbsp;lb,
int&nbsp;ub)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Creates a generator that will return integers uniformly randomly from the interval [lb,ub] inclusive (that is, lb and ub are possible values)</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next value as an int.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.IntegerGenerator"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="UniformIntegerGenerator(int, int)"><!-- --></A><H3>
UniformIntegerGenerator</H3>
<PRE>
public <B>UniformIntegerGenerator</B>(int&nbsp;lb,
int&nbsp;ub)</PRE>
<DL>
<DD>Creates a generator that will return integers uniformly randomly from the interval [lb,ub] inclusive (that is, lb and ub are possible values)
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>lb</CODE> - the lower bound (inclusive) of generated values<DD><CODE>ub</CODE> - the upper bound (inclusive) of generated values</DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">IntegerGenerator</A></CODE></B></DD>
<DD>Return the next value as an int. When overriding this method, be sure to call setLastString() properly, or the lastString() call won't work.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UniformIntegerGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UniformIntegerGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,279 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
UnknownDBException
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.UnknownDBException class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="UnknownDBException";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UnknownDBException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UnknownDBException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class UnknownDBException</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Throwable
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Exception
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.UnknownDBException</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>UnknownDBException</B><DT>extends java.lang.Exception</DL>
</PRE>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.UnknownDBException">Serialized Form</A></DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html#UnknownDBException()">UnknownDBException</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String)">UnknownDBException</A></B>(java.lang.String&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String, java.lang.Throwable)">UnknownDBException</A></B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.Throwable)">UnknownDBException</A></B>(java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Throwable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Throwable</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="UnknownDBException(java.lang.String)"><!-- --></A><H3>
UnknownDBException</H3>
<PRE>
public <B>UnknownDBException</B>(java.lang.String&nbsp;message)</PRE>
<DL>
</DL>
<HR>
<A NAME="UnknownDBException()"><!-- --></A><H3>
UnknownDBException</H3>
<PRE>
public <B>UnknownDBException</B>()</PRE>
<DL>
</DL>
<HR>
<A NAME="UnknownDBException(java.lang.String, java.lang.Throwable)"><!-- --></A><H3>
UnknownDBException</H3>
<PRE>
public <B>UnknownDBException</B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<HR>
<A NAME="UnknownDBException(java.lang.Throwable)"><!-- --></A><H3>
UnknownDBException</H3>
<PRE>
public <B>UnknownDBException</B>(java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/UnknownDBException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="UnknownDBException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,419 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Utils
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.Utils class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Utils";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Utils.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Utils.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class Utils</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.Utils</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>Utils</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNV_offset_basis_32">FNV_offset_basis_32</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNV_offset_basis_64">FNV_offset_basis_64</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNV_prime_32">FNV_prime_32</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNV_prime_64">FNV_prime_64</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#Utils()">Utils</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#ASCIIString(int)">ASCIIString</A></B>(int&nbsp;length)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNVhash32(int)">FNVhash32</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;32 bit FNV hash.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#FNVhash64(long)">FNVhash64</A></B>(long&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;64 bit FNV hash.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#hash(int)">hash</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Utils.html#JenkinsHash(int)">JenkinsHash</A></B>(int&nbsp;val)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="FNV_offset_basis_32"><!-- --></A><H3>
FNV_offset_basis_32</H3>
<PRE>
public static final int <B>FNV_offset_basis_32</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Utils.FNV_offset_basis_32">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FNV_prime_32"><!-- --></A><H3>
FNV_prime_32</H3>
<PRE>
public static final int <B>FNV_prime_32</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Utils.FNV_prime_32">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FNV_offset_basis_64"><!-- --></A><H3>
FNV_offset_basis_64</H3>
<PRE>
public static final long <B>FNV_offset_basis_64</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Utils.FNV_offset_basis_64">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FNV_prime_64"><!-- --></A><H3>
FNV_prime_64</H3>
<PRE>
public static final long <B>FNV_prime_64</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Utils.FNV_prime_64">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Utils()"><!-- --></A><H3>
Utils</H3>
<PRE>
public <B>Utils</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ASCIIString(int)"><!-- --></A><H3>
ASCIIString</H3>
<PRE>
public static java.lang.String <B>ASCIIString</B>(int&nbsp;length)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="hash(int)"><!-- --></A><H3>
hash</H3>
<PRE>
public static int <B>hash</B>(int&nbsp;val)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="JenkinsHash(int)"><!-- --></A><H3>
JenkinsHash</H3>
<PRE>
public static int <B>JenkinsHash</B>(int&nbsp;val)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="FNVhash32(int)"><!-- --></A><H3>
FNVhash32</H3>
<PRE>
public static int <B>FNVhash32</B>(int&nbsp;val)</PRE>
<DL>
<DD>32 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>val</CODE> - The value to hash.
<DT><B>Returns:</B><DD></DL>
</DD>
</DL>
<HR>
<A NAME="FNVhash64(long)"><!-- --></A><H3>
FNVhash64</H3>
<PRE>
public static long <B>FNVhash64</B>(long&nbsp;val)</PRE>
<DL>
<DD>64 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>val</CODE> - The value to hash.
<DT><B>Returns:</B><DD></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Utils.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Utils.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,440 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Workload
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.Workload class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Workload";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Workload.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Workload.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class Workload</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.Workload</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public abstract class <B>Workload</B><DT>extends java.lang.Object</DL>
</PRE>
<P>
One experiment scenario. One object of this type will
be instantiated and shared among all client threads. This class
should be constructed using a no-argument constructor, so we can
load it dynamically. Any argument-based initialization should be
done by init().
If you extend this class, you should support the "insertstart" property. This
allows the load phase to proceed from multiple clients on different machines, in case
the client is the bottleneck. For example, if we want to load 1 million records from
2 machines, the first machine should have insertstart=0 and the second insertstart=500000. Additionally,
the "insertcount" property, which is interpreted by Client, can be used to tell each instance of the
client how many inserts to do. In the example above, both clients should have insertcount=500000.
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY">INSERT_START_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY_DEFAULT">INSERT_START_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#Workload()">Workload</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup the scenario.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)">doInsert</A></B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do one insert operation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>abstract &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#doTransaction(com.yahoo.ycsb.DB, java.lang.Object)">doTransaction</A></B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do one transaction operation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#init(java.util.Properties)">init</A></B>(java.util.Properties&nbsp;p)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize the scenario.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/Workload.html#initThread(java.util.Properties, int, int)">initThread</A></B>(java.util.Properties&nbsp;p,
int&nbsp;mythreadid,
int&nbsp;threadcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for a particular client thread.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="INSERT_START_PROPERTY"><!-- --></A><H3>
INSERT_START_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>INSERT_START_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Workload.INSERT_START_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_START_PROPERTY_DEFAULT"><!-- --></A><H3>
INSERT_START_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>INSERT_START_PROPERTY_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.Workload.INSERT_START_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Workload()"><!-- --></A><H3>
Workload</H3>
<PRE>
public <B>Workload</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init(java.util.Properties)"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>(java.util.Properties&nbsp;p)
throws <A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></PRE>
<DL>
<DD>Initialize the scenario. Create any generators and other shared objects here.
Called once, in the main client thread, before any operations are started.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="initThread(java.util.Properties, int, int)"><!-- --></A><H3>
initThread</H3>
<PRE>
public java.lang.Object <B>initThread</B>(java.util.Properties&nbsp;p,
int&nbsp;mythreadid,
int&nbsp;threadcount)
throws <A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></PRE>
<DL>
<DD>Initialize any state for a particular client thread. Since the scenario object
will be shared among all threads, this is the place to create any state that is specific
to one thread. To be clear, this means the returned object should be created anew on each
call to initThread(); do not return the same object multiple times.
The returned object will be passed to invocations of doInsert() and doTransaction()
for this thread. There should be no side effects from this call; all state should be encapsulated
in the returned object. If you have no state to retain for this thread, return null. (But if you have
no state to retain for this thread, probably you don't need to override initThread().)
<P>
<DD><DL>
<DT><B>Returns:</B><DD>false if the workload knows it is done for this thread. Client will terminate the thread. Return true otherwise. Return true for workloads that rely on operationcount. For workloads that read traces from a file, return true when there are more to do, false when you are done.
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></PRE>
<DL>
<DD>Cleanup the scenario. Called once, in the main client thread, after all operations have completed.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="doInsert(com.yahoo.ycsb.DB, java.lang.Object)"><!-- --></A><H3>
doInsert</H3>
<PRE>
public abstract boolean <B>doInsert</B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</PRE>
<DL>
<DD>Do one insert operation. Because it will be called concurrently from multiple client threads, this
function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
effects other than DB operations and mutations on threadstate. Mutations to threadstate do not need to be
synchronized, since each thread has its own threadstate instance.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransaction(com.yahoo.ycsb.DB, java.lang.Object)"><!-- --></A><H3>
doTransaction</H3>
<PRE>
public abstract boolean <B>doTransaction</B>(<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</PRE>
<DL>
<DD>Do one transaction operation. Because it will be called concurrently from multiple client threads, this
function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
effects other than DB operations and mutations on threadstate. Mutations to threadstate do not need to be
synchronized, since each thread has its own threadstate instance.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>false if the workload knows it is done for this thread. Client will terminate the thread. Return true otherwise. Return true for workloads that rely on operationcount. For workloads that read traces from a file, return true when there are more to do, false when you are done.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/Workload.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Workload.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,279 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
WorkloadException
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.WorkloadException class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="WorkloadException";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/WorkloadException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="WorkloadException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class WorkloadException</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Throwable
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">java.lang.Exception
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.WorkloadException</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD>java.io.Serializable</DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>WorkloadException</B><DT>extends java.lang.Exception</DL>
</PRE>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../serialized-form.html#com.yahoo.ycsb.WorkloadException">Serialized Form</A></DL>
<HR>
<P>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html#WorkloadException()">WorkloadException</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String)">WorkloadException</A></B>(java.lang.String&nbsp;message)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String, java.lang.Throwable)">WorkloadException</A></B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.Throwable)">WorkloadException</A></B>(java.lang.Throwable&nbsp;cause)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Throwable"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Throwable</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>fillInStackTrace, getCause, getLocalizedMessage, getMessage, getStackTrace, initCause, printStackTrace, printStackTrace, printStackTrace, setStackTrace, toString</CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="WorkloadException(java.lang.String)"><!-- --></A><H3>
WorkloadException</H3>
<PRE>
public <B>WorkloadException</B>(java.lang.String&nbsp;message)</PRE>
<DL>
</DL>
<HR>
<A NAME="WorkloadException()"><!-- --></A><H3>
WorkloadException</H3>
<PRE>
public <B>WorkloadException</B>()</PRE>
<DL>
</DL>
<HR>
<A NAME="WorkloadException(java.lang.String, java.lang.Throwable)"><!-- --></A><H3>
WorkloadException</H3>
<PRE>
public <B>WorkloadException</B>(java.lang.String&nbsp;message,
java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<HR>
<A NAME="WorkloadException(java.lang.Throwable)"><!-- --></A><H3>
WorkloadException</H3>
<PRE>
public <B>WorkloadException</B>(java.lang.Throwable&nbsp;cause)</PRE>
<DL>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/WorkloadException.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="WorkloadException.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#methods_inherited_from_class_java.lang.Throwable">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;METHOD</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,495 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
ZipfianGenerator
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.ZipfianGenerator class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="ZipfianGenerator";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/ZipfianGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ZipfianGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb</FONT>
<BR>
Class ZipfianGenerator</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Generator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.IntegerGenerator</A>
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.ZipfianGenerator</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>ZipfianGenerator</B><DT>extends <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></DL>
</PRE>
<P>
A generator of a zipfian distribution. It produces a sequence of items, such that some items are more popular than others, according
to a zipfian distribution. When you construct an instance of this class, you specify the number of items in the set to draw from, either
by specifying an itemcount (so that the sequence is of items from 0 to itemcount-1) or by specifying a min and a max (so that the sequence is of
items from min to max inclusive). After you construct the instance, you can change the number of items by calling nextInt(itemcount) or nextLong(itemcount).
Note that the popular items will be clustered together, e.g. item 0 is the most popular, item 1 the second most popular, and so on (or min is the most
popular, min+1 the next most popular, etc.) If you don't want this clustering, and instead want the popular items scattered throughout the
item space, then use ScrambledZipfianGenerator instead.
Be aware: initializing this generator may take a long time if there are lots of items to choose from (e.g. over a minute
for 100 million objects). This is because certain mathematical values need to be computed to properly generate a zipfian skew, and one of those
values (zeta) is a sum sequence from 1 to n, where n is the itemcount. Note that if you increase the number of items in the set, we can compute
a new zeta incrementally, so it should be fast unless you have added millions of items. However, if you decrease the number of items, we recompute
zeta from scratch, so this can take a long time.
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZIPFIAN_CONSTANT">ZIPFIAN_CONSTANT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long)">ZipfianGenerator</A></B>(long&nbsp;_items)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for the specified number of items.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, double)">ZipfianGenerator</A></B>(long&nbsp;_items,
double&nbsp;_zipfianconstant)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for the specified number of items using the specified zipfian constant.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long)">ZipfianGenerator</A></B>(long&nbsp;_min,
long&nbsp;_max)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for items between min and max.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long, double)">ZipfianGenerator</A></B>(long&nbsp;min,
long&nbsp;max,
double&nbsp;_zipfianconstant)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long, double, double)">ZipfianGenerator</A></B>(long&nbsp;min,
long&nbsp;max,
double&nbsp;_zipfianconstant,
double&nbsp;_zetan)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant, using the precomputed value of zeta.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#nextInt()">nextInt</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next value, skewed by the Zipfian distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#nextInt(int)">nextInt</A></B>(int&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next item.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#nextLong()">nextLong</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the next value, skewed by the Zipfian distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html#nextLong(long)">nextLong</A></B>(long&nbsp;itemcount)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Generate the next item as a long.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.IntegerGenerator"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastInt()">lastInt</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#lastString()">lastString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextString()">nextString</A>, <A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)">setLastInt</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ZIPFIAN_CONSTANT"><!-- --></A><H3>
ZIPFIAN_CONSTANT</H3>
<PRE>
public static final double <B>ZIPFIAN_CONSTANT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#com.yahoo.ycsb.ZipfianGenerator.ZIPFIAN_CONSTANT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ZipfianGenerator(long)"><!-- --></A><H3>
ZipfianGenerator</H3>
<PRE>
public <B>ZipfianGenerator</B>(long&nbsp;_items)</PRE>
<DL>
<DD>Create a zipfian generator for the specified number of items.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>_items</CODE> - The number of items in the distribution.</DL>
</DL>
<HR>
<A NAME="ZipfianGenerator(long, long)"><!-- --></A><H3>
ZipfianGenerator</H3>
<PRE>
public <B>ZipfianGenerator</B>(long&nbsp;_min,
long&nbsp;_max)</PRE>
<DL>
<DD>Create a zipfian generator for items between min and max.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>min</CODE> - The smallest integer to generate in the sequence.<DD><CODE>max</CODE> - The largest integer to generate in the sequence.</DL>
</DL>
<HR>
<A NAME="ZipfianGenerator(long, double)"><!-- --></A><H3>
ZipfianGenerator</H3>
<PRE>
public <B>ZipfianGenerator</B>(long&nbsp;_items,
double&nbsp;_zipfianconstant)</PRE>
<DL>
<DD>Create a zipfian generator for the specified number of items using the specified zipfian constant.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>_items</CODE> - The number of items in the distribution.<DD><CODE>_zipfianconstant</CODE> - The zipfian constant to use.</DL>
</DL>
<HR>
<A NAME="ZipfianGenerator(long, long, double)"><!-- --></A><H3>
ZipfianGenerator</H3>
<PRE>
public <B>ZipfianGenerator</B>(long&nbsp;min,
long&nbsp;max,
double&nbsp;_zipfianconstant)</PRE>
<DL>
<DD>Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>min</CODE> - The smallest integer to generate in the sequence.<DD><CODE>max</CODE> - The largest integer to generate in the sequence.<DD><CODE>_zipfianconstant</CODE> - The zipfian constant to use.</DL>
</DL>
<HR>
<A NAME="ZipfianGenerator(long, long, double, double)"><!-- --></A><H3>
ZipfianGenerator</H3>
<PRE>
public <B>ZipfianGenerator</B>(long&nbsp;min,
long&nbsp;max,
double&nbsp;_zipfianconstant,
double&nbsp;_zetan)</PRE>
<DL>
<DD>Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant, using the precomputed value of zeta.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>min</CODE> - The smallest integer to generate in the sequence.<DD><CODE>max</CODE> - The largest integer to generate in the sequence.<DD><CODE>_zipfianconstant</CODE> - The zipfian constant to use.<DD><CODE>_zetan</CODE> - The precomputed zeta constant.</DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="nextInt(int)"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>(int&nbsp;itemcount)</PRE>
<DL>
<DD>Generate the next item. this distribution will be skewed toward lower integers; e.g. 0 will
be the most popular, 1 the next most popular, etc.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itemcount</CODE> - The number of items in the distribution.
<DT><B>Returns:</B><DD>The next item in the sequence.</DL>
</DD>
</DL>
<HR>
<A NAME="nextLong(long)"><!-- --></A><H3>
nextLong</H3>
<PRE>
public long <B>nextLong</B>(long&nbsp;itemcount)</PRE>
<DL>
<DD>Generate the next item as a long.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>itemcount</CODE> - The number of items in the distribution.
<DT><B>Returns:</B><DD>The next item in the sequence.</DL>
</DD>
</DL>
<HR>
<A NAME="nextInt()"><!-- --></A><H3>
nextInt</H3>
<PRE>
public int <B>nextInt</B>()</PRE>
<DL>
<DD>Return the next value, skewed by the Zipfian distribution. The 0th item will be the most popular, followed by the 1st, followed
by the 2nd, etc. (Or, if min != 0, the min-th item is the most popular, the min+1th item the next most popular, etc.) If you want the
popular items scattered throughout the item space, use ScrambledZipfianGenerator instead.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html#nextInt()">nextInt</A></CODE> in class <CODE><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="nextLong()"><!-- --></A><H3>
nextLong</H3>
<PRE>
public long <B>nextLong</B>()</PRE>
<DL>
<DD>Return the next value, skewed by the Zipfian distribution. The 0th item will be the most popular, followed by the 1st, followed
by the 2nd, etc. (Or, if min != 0, the min-th item is the most popular, the min+1th item the next most popular, etc.) If you want the
popular items scattered throughout the item space, use ScrambledZipfianGenerator instead.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/ZipfianGenerator.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ZipfianGenerator.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,630 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:46:54 PDT 2010 -->
<TITLE>
CassandraClient
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.db.CassandraClient class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="CassandraClient";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/CassandraClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CassandraClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb.db</FONT>
<BR>
Class CassandraClient</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DB</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.db.CassandraClient</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>CassandraClient</B><DT>extends <A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></DL>
</PRE>
<P>
XXXX if we do replication, fix the consistency levels
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#CONNECTION_RETRY_PROPERTY">CONNECTION_RETRY_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#CONNECTION_RETRY_PROPERTY_DEFAULT">CONNECTION_RETRY_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#ConnectionRetries">ConnectionRetries</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#Error">Error</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#Ok">Ok</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#OPERATION_RETRY_PROPERTY">OPERATION_RETRY_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#OPERATION_RETRY_PROPERTY_DEFAULT">OPERATION_RETRY_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#OperationRetries">OperationRetries</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#CassandraClient()">CassandraClient</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.DB"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A>, <A HREF="../../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="Ok"><!-- --></A><H3>
Ok</H3>
<PRE>
public static final int <B>Ok</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.Ok">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="Error"><!-- --></A><H3>
Error</H3>
<PRE>
public static final int <B>Error</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.Error">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="ConnectionRetries"><!-- --></A><H3>
ConnectionRetries</H3>
<PRE>
public int <B>ConnectionRetries</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="OperationRetries"><!-- --></A><H3>
OperationRetries</H3>
<PRE>
public int <B>OperationRetries</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="CONNECTION_RETRY_PROPERTY"><!-- --></A><H3>
CONNECTION_RETRY_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>CONNECTION_RETRY_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.CONNECTION_RETRY_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="CONNECTION_RETRY_PROPERTY_DEFAULT"><!-- --></A><H3>
CONNECTION_RETRY_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>CONNECTION_RETRY_PROPERTY_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.CONNECTION_RETRY_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="OPERATION_RETRY_PROPERTY"><!-- --></A><H3>
OPERATION_RETRY_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>OPERATION_RETRY_PROPERTY</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.OPERATION_RETRY_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="OPERATION_RETRY_PROPERTY_DEFAULT"><!-- --></A><H3>
OPERATION_RETRY_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>OPERATION_RETRY_PROPERTY_DEFAULT</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.CassandraClient.OPERATION_RETRY_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="CassandraClient()"><!-- --></A><H3>
CassandraClient</H3>
<PRE>
public <B>CassandraClient</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#init()">init</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Cleanup any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write.<DD><CODE>values</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>values</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/CassandraClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CassandraClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,666 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:46:54 PDT 2010 -->
<TITLE>
HBaseClient
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.db.HBaseClient class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="HBaseClient";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html" title="class in com.yahoo.ycsb.db"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/HBaseClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="HBaseClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb.db</FONT>
<BR>
Class HBaseClient</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DB</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.db.HBaseClient</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>HBaseClient</B><DT>extends <A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></DL>
</PRE>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#_columnFamily">_columnFamily</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#_debug">_debug</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;HTable</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#_hTable">_hTable</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#_table">_table</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#HttpError">HttpError</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#NoMatchingRecord">NoMatchingRecord</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#Ok">Ok</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#ServerError">ServerError</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.Object</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#tableLock">tableLock</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#HBaseClient()">HBaseClient</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#getHTable(java.lang.String)">getHTable</A></B>(java.lang.String&nbsp;table)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.DB"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A>, <A HREF="../../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="_debug"><!-- --></A><H3>
_debug</H3>
<PRE>
public boolean <B>_debug</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="_table"><!-- --></A><H3>
_table</H3>
<PRE>
public java.lang.String <B>_table</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="_hTable"><!-- --></A><H3>
_hTable</H3>
<PRE>
public HTable <B>_hTable</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="_columnFamily"><!-- --></A><H3>
_columnFamily</H3>
<PRE>
public java.lang.String <B>_columnFamily</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="Ok"><!-- --></A><H3>
Ok</H3>
<PRE>
public static final int <B>Ok</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.HBaseClient.Ok">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="ServerError"><!-- --></A><H3>
ServerError</H3>
<PRE>
public static final int <B>ServerError</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.HBaseClient.ServerError">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="HttpError"><!-- --></A><H3>
HttpError</H3>
<PRE>
public static final int <B>HttpError</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.HBaseClient.HttpError">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="NoMatchingRecord"><!-- --></A><H3>
NoMatchingRecord</H3>
<PRE>
public static final int <B>NoMatchingRecord</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.HBaseClient.NoMatchingRecord">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="tableLock"><!-- --></A><H3>
tableLock</H3>
<PRE>
public static java.lang.Object <B>tableLock</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="HBaseClient()"><!-- --></A><H3>
HBaseClient</H3>
<PRE>
public <B>HBaseClient</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#init()">init</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Cleanup any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="getHTable(java.lang.String)"><!-- --></A><H3>
getHTable</H3>
<PRE>
public void <B>getHTable</B>(java.lang.String&nbsp;table)
throws java.io.IOException</PRE>
<DL>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE>java.io.IOException</CODE></DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write<DD><CODE>values</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>values</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html" title="class in com.yahoo.ycsb.db"><B>PREV CLASS</B></A>&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/HBaseClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="HBaseClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,757 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_03) on Fri Jan 22 13:42:46 PST 2010 -->
<TITLE>
ShardClient
</TITLE>
<META NAME="date" CONTENT="2010-01-22">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ShardClient";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/SherpaClient.html" title="class in com.yahoo.ycsb.db"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/ShardClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ShardClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb.db</FONT>
<BR>
Class ShardClient</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DB</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.db.ShardClient</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>ShardClient</B><DT>extends <A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></DL>
</PRE>
<P>
A client for the simple sharded MySQL called shardserver.
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#_debug">_debug</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#_donothing">_donothing</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#HttpError">HttpError</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#NoMatchingRecord">NoMatchingRecord</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#NoMatchingRecordString">NoMatchingRecordString</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#Ok">Ok</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#ServerError">ServerError</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#TotalGetOps">TotalGetOps</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#TotalGetTime">TotalGetTime</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#TotalPostOps">TotalPostOps</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#TotalPostTime">TotalPostTime</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#UrlPrefix">UrlPrefix</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#ShardClient()">ShardClient</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#cleanup()">cleanup</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Cleanup any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#delete(java.lang.String, java.lang.String)">delete</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Delete a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Vector&lt;char[]&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#doGet(java.lang.String)">doGet</A></B>(java.lang.String&nbsp;url)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do a GET HTTP call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#doPost(java.lang.String, java.lang.String)">doPost</A></B>(java.lang.String&nbsp;url,
java.lang.String&nbsp;postbody)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do a POST HTTP call.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#init()">init</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize any state for this DB.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Insert a record in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#main(java.lang.String[])">main</A></B>(java.lang.String[]&nbsp;args)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Simple test.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Read a record from the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Perform a range scan for a set of records in the database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/db/ShardClient.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Update a record in the database.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.DB"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#getProperties()">getProperties</A>, <A HREF="../../../../com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)">setProperties</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="UrlPrefix"><!-- --></A><H3>
UrlPrefix</H3>
<PRE>
public static final java.lang.String <B>UrlPrefix</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.UrlPrefix">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="NoMatchingRecordString"><!-- --></A><H3>
NoMatchingRecordString</H3>
<PRE>
public static final java.lang.String <B>NoMatchingRecordString</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.NoMatchingRecordString">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="Ok"><!-- --></A><H3>
Ok</H3>
<PRE>
public static final int <B>Ok</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.Ok">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="ServerError"><!-- --></A><H3>
ServerError</H3>
<PRE>
public static final int <B>ServerError</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.ServerError">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="HttpError"><!-- --></A><H3>
HttpError</H3>
<PRE>
public static final int <B>HttpError</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.HttpError">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="NoMatchingRecord"><!-- --></A><H3>
NoMatchingRecord</H3>
<PRE>
public static final int <B>NoMatchingRecord</B></PRE>
<DL>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.db.ShardClient.NoMatchingRecord">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="_debug"><!-- --></A><H3>
_debug</H3>
<PRE>
public boolean <B>_debug</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="_donothing"><!-- --></A><H3>
_donothing</H3>
<PRE>
public boolean <B>_donothing</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="TotalGetTime"><!-- --></A><H3>
TotalGetTime</H3>
<PRE>
public long <B>TotalGetTime</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="TotalGetOps"><!-- --></A><H3>
TotalGetOps</H3>
<PRE>
public long <B>TotalGetOps</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="TotalPostTime"><!-- --></A><H3>
TotalPostTime</H3>
<PRE>
public long <B>TotalPostTime</B></PRE>
<DL>
<DL>
</DL>
</DL>
<HR>
<A NAME="TotalPostOps"><!-- --></A><H3>
TotalPostOps</H3>
<PRE>
public long <B>TotalPostOps</B></PRE>
<DL>
<DL>
</DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="ShardClient()"><!-- --></A><H3>
ShardClient</H3>
<PRE>
public <B>ShardClient</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init()"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Initialize any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#init()">init</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="cleanup()"><!-- --></A><H3>
cleanup</H3>
<PRE>
public void <B>cleanup</B>()
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Cleanup any state for this DB.
Called once per DB instance; there is one DB instance per client thread.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#cleanup()">cleanup</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="doGet(java.lang.String)"><!-- --></A><H3>
doGet</H3>
<PRE>
public java.util.Vector&lt;char[]&gt; <B>doGet</B>(java.lang.String&nbsp;url)
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Do a GET HTTP call. Returns the results in a Vector of char[] blocks.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="doPost(java.lang.String, java.lang.String)"><!-- --></A><H3>
doPost</H3>
<PRE>
public java.lang.String <B>doPost</B>(java.lang.String&nbsp;url,
java.lang.String&nbsp;postbody)
throws <A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></PRE>
<DL>
<DD>Do a POST HTTP call. Returns the result as a String.
<P>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><!-- --></A><H3>
read</H3>
<PRE>
public int <B>read</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;result)</PRE>
<DL>
<DD>Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)">read</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to read.<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A HashMap of field/value pairs for the result
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><!-- --></A><H3>
scan</H3>
<PRE>
public int <B>scan</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;startkey,
int&nbsp;recordcount,
java.util.Set&lt;java.lang.String&gt;&nbsp;fields,
java.util.Vector&lt;java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&gt;&nbsp;result)</PRE>
<DL>
<DD>Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)">scan</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>startkey</CODE> - The record key of the first record to read.<DD><CODE>recordcount</CODE> - The number of records to read<DD><CODE>fields</CODE> - The list of fields to read, or null for all of them<DD><CODE>result</CODE> - A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="update(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
update</H3>
<PRE>
public int <B>update</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key, overwriting any existing values with the same field name.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)">update</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to write.<DD><CODE>values</CODE> - A HashMap of field/value pairs to update in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="insert(java.lang.String, java.lang.String, java.util.HashMap)"><!-- --></A><H3>
insert</H3>
<PRE>
public int <B>insert</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key,
java.util.HashMap&lt;java.lang.String,java.lang.String&gt;&nbsp;values)</PRE>
<DL>
<DD>Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
record key.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)">insert</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to insert.<DD><CODE>values</CODE> - A HashMap of field/value pairs to insert in the record
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="delete(java.lang.String, java.lang.String)"><!-- --></A><H3>
delete</H3>
<PRE>
public int <B>delete</B>(java.lang.String&nbsp;table,
java.lang.String&nbsp;key)</PRE>
<DL>
<DD>Delete a record from the database.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)">delete</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>table</CODE> - The name of the table<DD><CODE>key</CODE> - The record key of the record to delete.
<DT><B>Returns:</B><DD>Zero on success, a non-zero error code on error</DL>
</DD>
</DL>
<HR>
<A NAME="main(java.lang.String[])"><!-- --></A><H3>
main</H3>
<PRE>
public static void <B>main</B>(java.lang.String[]&nbsp;args)</PRE>
<DL>
<DD>Simple test.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/db/SherpaClient.html" title="class in com.yahoo.ycsb.db"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/ShardClient.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="ShardClient.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -0,0 +1,34 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:46:55 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.db
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.db package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<FONT size="+1" CLASS="FrameTitleFont">
<A HREF="../../../../com/yahoo/ycsb/db/package-summary.html" target="classFrame">com.yahoo.ycsb.db</A></FONT>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
Classes</FONT>&nbsp;
<FONT CLASS="FrameItemFont">
<BR>
<A HREF="CassandraClient.html" title="class in com.yahoo.ycsb.db" target="classFrame">CassandraClient</A>
<BR>
<A HREF="HBaseClient.html" title="class in com.yahoo.ycsb.db" target="classFrame">HBaseClient</A></FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,156 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:46:55 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.db
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.db package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb.db";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/workloads/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<H2>
Package com.yahoo.ycsb.db
</H2>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html" title="class in com.yahoo.ycsb.db">CassandraClient</A></B></TD>
<TD>XXXX if we do replication, fix the consistency levels</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db">HBaseClient</A></B></TD>
<TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<DL>
</DL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/workloads/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,149 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:46:55 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.db Class Hierarchy
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb.db Class Hierarchy";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/workloads/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H2>
Hierarchy For Package com.yahoo.ycsb.db
</H2>
</CENTER>
<DL>
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../overview-tree.html">All Packages</A></DL>
<HR>
<H2>
Class Hierarchy
</H2>
<UL>
<LI TYPE="circle">java.lang.Object<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.db.<A HREF="../../../../com/yahoo/ycsb/db/CassandraClient.html" title="class in com.yahoo.ycsb.db"><B>CassandraClient</B></A><LI TYPE="circle">com.yahoo.ycsb.db.<A HREF="../../../../com/yahoo/ycsb/db/HBaseClient.html" title="class in com.yahoo.ycsb.db"><B>HBaseClient</B></A></UL>
</UL>
</UL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;<A HREF="../../../../com/yahoo/ycsb/workloads/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/db/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,95 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<FONT size="+1" CLASS="FrameTitleFont">
<A HREF="../../../com/yahoo/ycsb/package-summary.html" target="classFrame">com.yahoo.ycsb</A></FONT>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
Classes</FONT>&nbsp;
<FONT CLASS="FrameItemFont">
<BR>
<A HREF="BasicDB.html" title="class in com.yahoo.ycsb" target="classFrame">BasicDB</A>
<BR>
<A HREF="Client.html" title="class in com.yahoo.ycsb" target="classFrame">Client</A>
<BR>
<A HREF="CounterGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">CounterGenerator</A>
<BR>
<A HREF="DB.html" title="class in com.yahoo.ycsb" target="classFrame">DB</A>
<BR>
<A HREF="DBFactory.html" title="class in com.yahoo.ycsb" target="classFrame">DBFactory</A>
<BR>
<A HREF="DBWrapper.html" title="class in com.yahoo.ycsb" target="classFrame">DBWrapper</A>
<BR>
<A HREF="DiscreteGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">DiscreteGenerator</A>
<BR>
<A HREF="FindGoodAB.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodAB</A>
<BR>
<A HREF="FindGoodScrambleVector.html" title="class in com.yahoo.ycsb" target="classFrame">FindGoodScrambleVector</A>
<BR>
<A HREF="Generator.html" title="class in com.yahoo.ycsb" target="classFrame">Generator</A>
<BR>
<A HREF="IntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">IntegerGenerator</A>
<BR>
<A HREF="Measurements.html" title="class in com.yahoo.ycsb" target="classFrame">Measurements</A>
<BR>
<A HREF="OneMeasurement.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurement</A>
<BR>
<A HREF="OneMeasurementHistogram.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurementHistogram</A>
<BR>
<A HREF="OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb" target="classFrame">OneMeasurementTimeSeries</A>
<BR>
<A HREF="ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">ScrambledZipfianGenerator</A>
<BR>
<A HREF="SkewedLatestGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">SkewedLatestGenerator</A>
<BR>
<A HREF="TestCollisions.html" title="class in com.yahoo.ycsb" target="classFrame">TestCollisions</A>
<BR>
<A HREF="TestExpandedZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestExpandedZipfian</A>
<BR>
<A HREF="TestZipfian.html" title="class in com.yahoo.ycsb" target="classFrame">TestZipfian</A>
<BR>
<A HREF="UniformGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformGenerator</A>
<BR>
<A HREF="UniformIntegerGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">UniformIntegerGenerator</A>
<BR>
<A HREF="Utils.html" title="class in com.yahoo.ycsb" target="classFrame">Utils</A>
<BR>
<A HREF="Workload.html" title="class in com.yahoo.ycsb" target="classFrame">Workload</A>
<BR>
<A HREF="ZipfianGenerator.html" title="class in com.yahoo.ycsb" target="classFrame">ZipfianGenerator</A></FONT></TD>
</TR>
</TABLE>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
Exceptions</FONT>&nbsp;
<FONT CLASS="FrameItemFont">
<BR>
<A HREF="DBException.html" title="class in com.yahoo.ycsb" target="classFrame">DBException</A>
<BR>
<A HREF="UnknownDBException.html" title="class in com.yahoo.ycsb" target="classFrame">UnknownDBException</A>
<BR>
<A HREF="WorkloadException.html" title="class in com.yahoo.ycsb" target="classFrame">WorkloadException</A></FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,270 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV PACKAGE&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/workloads/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<H2>
Package com.yahoo.ycsb
</H2>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A></B></TD>
<TD>Basic DB that just prints out the requested operations, instead of doing them against a database.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A></B></TD>
<TD>Generates a sequence of integers 0, 1, ...</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A></B></TD>
<TD>A layer for accessing a database to be benchmarked.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A></B></TD>
<TD>Wrapper around a "real" DB that measures latencies and counts return codes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A></B></TD>
<TD>An expression that generates a sequence of string values, following some distribution (Uniform, Zipfian, Sequential, etc.)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A></B></TD>
<TD>A generator that is capable of generating ints as well as strings</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A></B></TD>
<TD>Collects latency measurements, and reports them when requested.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A></B></TD>
<TD>Take measurements and maintain a histogram of latencies.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A></B></TD>
<TD>A generator of a zipfian distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A></B></TD>
<TD>An expression that generates a random integer in the specified range</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></B></TD>
<TD>One experiment scenario.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A></B></TD>
<TD>A generator of a zipfian distribution.</TD>
</TR>
</TABLE>
&nbsp;
<P>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Exception Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></B></TD>
<TD>&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<P>
<DL>
</DL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV PACKAGE&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/workloads/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,160 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb Class Hierarchy
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb Class Hierarchy";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/workloads/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H2>
Hierarchy For Package com.yahoo.ycsb
</H2>
</CENTER>
<DL>
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../overview-tree.html">All Packages</A></DL>
<HR>
<H2>
Class Hierarchy
</H2>
<UL>
<LI TYPE="circle">java.lang.Object<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>IntegerGenerator</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>CounterGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ZipfianGenerator</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>Measurements</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A><LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
<UL>
<LI TYPE="circle">java.lang.Exception<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A></UL>
</UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>Utils</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>Workload</B></A></UL>
</UL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;<A HREF="../../../com/yahoo/ycsb/workloads/package-tree.html"><B>NEXT</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../index.html?com/yahoo/ycsb/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,969 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
CoreWorkload
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.workloads.CoreWorkload class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="CoreWorkload";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/CoreWorkload.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CoreWorkload.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
com.yahoo.ycsb.workloads</FONT>
<BR>
Class CoreWorkload</H2>
<PRE>
java.lang.Object
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.Workload</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>com.yahoo.ycsb.workloads.CoreWorkload</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>CoreWorkload</B><DT>extends <A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></DL>
</PRE>
<P>
The core benchmark scenario. Represents a set of clients doing simple CRUD operations. The relative
proportion of different kinds of operations, and other properties of the workload, are controlled
by parameters specified at runtime.
Properties to control the client:
<UL>
<LI><b>fieldcount</b>: the number of fields in a record (default: 10)
<LI><b>fieldlength</b>: the size of each field (default: 100)
<LI><b>readallfields</b>: should reads read all fields (true) or just one (false) (default: true)
<LI><b>readproportion</b>: what proportion of operations should be reads (default: 0.95)
<LI><b>updateproportion</b>: what proportion of operations should be updates (default: 0.05)
<LI><b>insertproportion</b>: what proportion of operations should be inserts (default: 0)
<LI><b>scanproportion</b>: what proportion of operations should be scans (default: 0)
<LI><b>readmodifywriteproportion</b>: what proportion of operations should be read a record, modify it, write it back (default: 0)
<LI><b>requestdistribution</b>: what distribution should be used to select the records to operate on - uniform, zipfian or latest (default: uniform)
<LI><b>maxscanlength</b>: for scans, what is the maximum number of records to scan (default: 1000)
<LI><b>scanlengthdistribution</b>: for scans, what distribution should be used to choose the number of records to scan, for each scan, between 1 and maxscanlength (default: uniform)
<LI><b>insertorder</b>: should records be inserted in order by key ("ordered"), or in hashed order ("hashed") (default: hashed)
</ul>
<P>
<P>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY">FIELD_COUNT_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the number of fields in a record.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY_DEFAULT">FIELD_COUNT_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default number of fields in a record.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY">FIELD_LENGTH_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the length of a field in bytes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY_DEFAULT">FIELD_LENGTH_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default length of a field in bytes.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY">INSERT_ORDER_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the order to insert records.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY_DEFAULT">INSERT_ORDER_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Default insert order.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY">INSERT_PROPORTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the proportion of transactions that are inserts.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY_DEFAULT">INSERT_PROPORTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default proportion of transactions that are inserts.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY">MAX_SCAN_LENGTH_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the max scan length (number of records)</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY_DEFAULT">MAX_SCAN_LENGTH_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default max scan length.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY">READ_ALL_FIELDS_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for deciding whether to read one field (false) or all fields (true) of a record.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY_DEFAULT">READ_ALL_FIELDS_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default value for the readallfields property.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY">READ_PROPORTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the proportion of transactions that are reads.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY_DEFAULT">READ_PROPORTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default proportion of transactions that are reads.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY">READMODIFYWRITE_PROPORTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the proportion of transactions that are read-modify-write.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT">READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default proportion of transactions that are scans.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY">REQUEST_DISTRIBUTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the the distribution of requests across the keyspace.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY_DEFAULT">REQUEST_DISTRIBUTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default distribution of requests across the keyspace</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY">SCAN_LENGTH_DISTRIBUTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the scan length distribution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT">SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default max scan length.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY">SCAN_PROPORTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the proportion of transactions that are scans.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY_DEFAULT">SCAN_PROPORTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default proportion of transactions that are scans.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#TABLENAME">TABLENAME</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the database table to run queries against.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY">UPDATE_PROPORTION_PROPERTY</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The name of the property for the proportion of transactions that are updates.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>static&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY_DEFAULT">UPDATE_PROPORTION_PROPERTY_DEFAULT</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default proportion of transactions that are updates.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_com.yahoo.ycsb.Workload"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY">INSERT_START_PROPERTY</A>, <A HREF="../../../../com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY_DEFAULT">INSERT_START_PROPERTY_DEFAULT</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#CoreWorkload()">CoreWorkload</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)">doInsert</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do one insert operation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransaction(com.yahoo.ycsb.DB, java.lang.Object)">doTransaction</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Do one transaction operation.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionInsert(com.yahoo.ycsb.DB)">doTransactionInsert</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionRead(com.yahoo.ycsb.DB)">doTransactionRead</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionReadModifyWrite(com.yahoo.ycsb.DB)">doTransactionReadModifyWrite</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionScan(com.yahoo.ycsb.DB)">doTransactionScan</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionUpdate(com.yahoo.ycsb.DB)">doTransactionUpdate</A></B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html#init(java.util.Properties)">init</A></B>(java.util.Properties&nbsp;p)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize the scenario.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_com.yahoo.ycsb.Workload"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html#cleanup()">cleanup</A>, <A HREF="../../../../com/yahoo/ycsb/Workload.html#initThread(java.util.Properties, int, int)">initThread</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="TABLENAME"><!-- --></A><H3>
TABLENAME</H3>
<PRE>
public static final java.lang.String <B>TABLENAME</B></PRE>
<DL>
<DD>The name of the database table to run queries against.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.TABLENAME">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FIELD_COUNT_PROPERTY"><!-- --></A><H3>
FIELD_COUNT_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>FIELD_COUNT_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the number of fields in a record.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.FIELD_COUNT_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FIELD_COUNT_PROPERTY_DEFAULT"><!-- --></A><H3>
FIELD_COUNT_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>FIELD_COUNT_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>Default number of fields in a record.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.FIELD_COUNT_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FIELD_LENGTH_PROPERTY"><!-- --></A><H3>
FIELD_LENGTH_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>FIELD_LENGTH_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the length of a field in bytes.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.FIELD_LENGTH_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="FIELD_LENGTH_PROPERTY_DEFAULT"><!-- --></A><H3>
FIELD_LENGTH_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>FIELD_LENGTH_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default length of a field in bytes.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.FIELD_LENGTH_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READ_ALL_FIELDS_PROPERTY"><!-- --></A><H3>
READ_ALL_FIELDS_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>READ_ALL_FIELDS_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for deciding whether to read one field (false) or all fields (true) of a record.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READ_ALL_FIELDS_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READ_ALL_FIELDS_PROPERTY_DEFAULT"><!-- --></A><H3>
READ_ALL_FIELDS_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>READ_ALL_FIELDS_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default value for the readallfields property.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READ_ALL_FIELDS_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READ_PROPORTION_PROPERTY"><!-- --></A><H3>
READ_PROPORTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>READ_PROPORTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the proportion of transactions that are reads.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READ_PROPORTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READ_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><H3>
READ_PROPORTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>READ_PROPORTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default proportion of transactions that are reads.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READ_PROPORTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="UPDATE_PROPORTION_PROPERTY"><!-- --></A><H3>
UPDATE_PROPORTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>UPDATE_PROPORTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the proportion of transactions that are updates.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.UPDATE_PROPORTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="UPDATE_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><H3>
UPDATE_PROPORTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>UPDATE_PROPORTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default proportion of transactions that are updates.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.UPDATE_PROPORTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_PROPORTION_PROPERTY"><!-- --></A><H3>
INSERT_PROPORTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>INSERT_PROPORTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the proportion of transactions that are inserts.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.INSERT_PROPORTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><H3>
INSERT_PROPORTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>INSERT_PROPORTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default proportion of transactions that are inserts.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.INSERT_PROPORTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SCAN_PROPORTION_PROPERTY"><!-- --></A><H3>
SCAN_PROPORTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>SCAN_PROPORTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the proportion of transactions that are scans.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.SCAN_PROPORTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SCAN_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><H3>
SCAN_PROPORTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>SCAN_PROPORTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default proportion of transactions that are scans.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.SCAN_PROPORTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READMODIFYWRITE_PROPORTION_PROPERTY"><!-- --></A><H3>
READMODIFYWRITE_PROPORTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>READMODIFYWRITE_PROPORTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the proportion of transactions that are read-modify-write.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READMODIFYWRITE_PROPORTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><H3>
READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default proportion of transactions that are scans.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="REQUEST_DISTRIBUTION_PROPERTY"><!-- --></A><H3>
REQUEST_DISTRIBUTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>REQUEST_DISTRIBUTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the the distribution of requests across the keyspace. Options are "uniform", "zipfian" and "latest"
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.REQUEST_DISTRIBUTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="REQUEST_DISTRIBUTION_PROPERTY_DEFAULT"><!-- --></A><H3>
REQUEST_DISTRIBUTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>REQUEST_DISTRIBUTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default distribution of requests across the keyspace
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.REQUEST_DISTRIBUTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="MAX_SCAN_LENGTH_PROPERTY"><!-- --></A><H3>
MAX_SCAN_LENGTH_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>MAX_SCAN_LENGTH_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the max scan length (number of records)
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.MAX_SCAN_LENGTH_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="MAX_SCAN_LENGTH_PROPERTY_DEFAULT"><!-- --></A><H3>
MAX_SCAN_LENGTH_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>MAX_SCAN_LENGTH_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default max scan length.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.MAX_SCAN_LENGTH_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SCAN_LENGTH_DISTRIBUTION_PROPERTY"><!-- --></A><H3>
SCAN_LENGTH_DISTRIBUTION_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>SCAN_LENGTH_DISTRIBUTION_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the scan length distribution. Options are "uniform" and "zipfian" (favoring short scans)
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.SCAN_LENGTH_DISTRIBUTION_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT"><!-- --></A><H3>
SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>The default max scan length.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_ORDER_PROPERTY"><!-- --></A><H3>
INSERT_ORDER_PROPERTY</H3>
<PRE>
public static final java.lang.String <B>INSERT_ORDER_PROPERTY</B></PRE>
<DL>
<DD>The name of the property for the order to insert records. Options are "ordered" or "hashed"
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.INSERT_ORDER_PROPERTY">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="INSERT_ORDER_PROPERTY_DEFAULT"><!-- --></A><H3>
INSERT_ORDER_PROPERTY_DEFAULT</H3>
<PRE>
public static final java.lang.String <B>INSERT_ORDER_PROPERTY_DEFAULT</B></PRE>
<DL>
<DD>Default insert order.
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#com.yahoo.ycsb.workloads.CoreWorkload.INSERT_ORDER_PROPERTY_DEFAULT">Constant Field Values</A></DL>
</DL>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="CoreWorkload()"><!-- --></A><H3>
CoreWorkload</H3>
<PRE>
public <B>CoreWorkload</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init(java.util.Properties)"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>(java.util.Properties&nbsp;p)
throws <A HREF="../../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></PRE>
<DL>
<DD>Initialize the scenario.
Called once, in the main client thread, before any operations are started.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html#init(java.util.Properties)">init</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A></CODE></DL>
</DD>
</DL>
<HR>
<A NAME="doInsert(com.yahoo.ycsb.DB, java.lang.Object)"><!-- --></A><H3>
doInsert</H3>
<PRE>
public boolean <B>doInsert</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</PRE>
<DL>
<DD>Do one insert operation. Because it will be called concurrently from multiple client threads, this
function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
effects other than DB operations.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)">doInsert</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransaction(com.yahoo.ycsb.DB, java.lang.Object)"><!-- --></A><H3>
doTransaction</H3>
<PRE>
public boolean <B>doTransaction</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db,
java.lang.Object&nbsp;threadstate)</PRE>
<DL>
<DD>Do one transaction operation. Because it will be called concurrently from multiple client threads, this
function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
effects other than DB operations.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html#doTransaction(com.yahoo.ycsb.DB, java.lang.Object)">doTransaction</A></CODE> in class <CODE><A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>false if the workload knows it is done for this thread. Client will terminate the thread. Return true otherwise. Return true for workloads that rely on operationcount. For workloads that read traces from a file, return true when there are more to do, false when you are done.</DL>
</DD>
</DL>
<HR>
<A NAME="doTransactionRead(com.yahoo.ycsb.DB)"><!-- --></A><H3>
doTransactionRead</H3>
<PRE>
public void <B>doTransactionRead</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransactionReadModifyWrite(com.yahoo.ycsb.DB)"><!-- --></A><H3>
doTransactionReadModifyWrite</H3>
<PRE>
public void <B>doTransactionReadModifyWrite</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransactionScan(com.yahoo.ycsb.DB)"><!-- --></A><H3>
doTransactionScan</H3>
<PRE>
public void <B>doTransactionScan</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransactionUpdate(com.yahoo.ycsb.DB)"><!-- --></A><H3>
doTransactionUpdate</H3>
<PRE>
public void <B>doTransactionUpdate</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="doTransactionInsert(com.yahoo.ycsb.DB)"><!-- --></A><H3>
doTransactionInsert</H3>
<PRE>
public void <B>doTransactionInsert</B>(<A HREF="../../../../com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>&nbsp;db)</PRE>
<DL>
<DD><DL>
</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV CLASS&nbsp;
&nbsp;NEXT CLASS</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/CoreWorkload.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="CoreWorkload.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,32 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.workloads
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.workloads package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<FONT size="+1" CLASS="FrameTitleFont">
<A HREF="../../../../com/yahoo/ycsb/workloads/package-summary.html" target="classFrame">com.yahoo.ycsb.workloads</A></FONT>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
Classes</FONT>&nbsp;
<FONT CLASS="FrameItemFont">
<BR>
<A HREF="CoreWorkload.html" title="class in com.yahoo.ycsb.workloads" target="classFrame">CoreWorkload</A></FONT></TD>
</TR>
</TABLE>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,152 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.workloads
</TITLE>
<META NAME="keywords" CONTENT="com.yahoo.ycsb.workloads package">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb.workloads";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;NEXT PACKAGE</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<H2>
Package com.yahoo.ycsb.workloads
</H2>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="15%"><B><A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A></B></TD>
<TD>The core benchmark scenario.</TD>
</TR>
</TABLE>
&nbsp;
<P>
<DL>
</DL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-summary.html"><B>PREV PACKAGE</B></A>&nbsp;
&nbsp;NEXT PACKAGE</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/package-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,149 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
com.yahoo.ycsb.workloads Class Hierarchy
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="com.yahoo.ycsb.workloads Class Hierarchy";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H2>
Hierarchy For Package com.yahoo.ycsb.workloads
</H2>
</CENTER>
<DL>
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../overview-tree.html">All Packages</A></DL>
<HR>
<H2>
Class Hierarchy
</H2>
<UL>
<LI TYPE="circle">java.lang.Object<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="../../../../com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>Workload</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.workloads.<A HREF="../../../../com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads"><B>CoreWorkload</B></A></UL>
</UL>
</UL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../com/yahoo/ycsb/package-tree.html"><B>PREV</B></A>&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?com/yahoo/ycsb/workloads/package-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,534 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Constant Field Values
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Constant Field Values";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H1>
Constant Field Values</H1>
</CENTER>
<HR SIZE="4" NOSHADE>
<B>Contents</B><UL>
<LI><A HREF="#com.yahoo">com.yahoo.*</A>
</UL>
<A NAME="com.yahoo"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left"><FONT SIZE="+2">
com.yahoo.*</FONT></TH>
</TR>
</TABLE>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.BasicDB.SIMULATE_DELAY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY">SIMULATE_DELAY</A></CODE></TD>
<TD ALIGN="right"><CODE>"basicdb.simulatedelay"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.BasicDB.SIMULATE_DELAY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY_DEFAULT">SIMULATE_DELAY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.BasicDB.VERBOSE"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/BasicDB.html#VERBOSE">VERBOSE</A></CODE></TD>
<TD ALIGN="right"><CODE>"basicdb.verbose"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.BasicDB.VERBOSE_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/BasicDB.html#VERBOSE_DEFAULT">VERBOSE_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"true"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Client.INSERT_COUNT_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Client.html#INSERT_COUNT_PROPERTY">INSERT_COUNT_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"insertcount"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Client.OPERATION_COUNT_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Client.html#OPERATION_COUNT_PROPERTY">OPERATION_COUNT_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"operationcount"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Client.RECORD_COUNT_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Client.html#RECORD_COUNT_PROPERTY">RECORD_COUNT_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"recordcount"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Client.WORKLOAD_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Client.html#WORKLOAD_PROPERTY">WORKLOAD_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"workload"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.OneMeasurementHistogram.BUCKETS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS">BUCKETS</A></CODE></TD>
<TD ALIGN="right"><CODE>"histogram.buckets"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.OneMeasurementHistogram.BUCKETS_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS_DEFAULT">BUCKETS_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"1000"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.OneMeasurementTimeSeries.GRANULARITY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY">GRANULARITY</A></CODE></TD>
<TD ALIGN="right"><CODE>"timeseries.granularity"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.OneMeasurementTimeSeries.GRANULARITY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY_DEFAULT">GRANULARITY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"1000"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.ScrambledZipfianGenerator.ITEM_COUNT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;long</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html#ITEM_COUNT">ITEM_COUNT</A></CODE></TD>
<TD ALIGN="right"><CODE>10000000000L</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.ScrambledZipfianGenerator.ZETAN"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;double</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html#ZETAN">ZETAN</A></CODE></TD>
<TD ALIGN="right"><CODE>52.93805640344461</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Utils.FNV_offset_basis_32"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Utils.html#FNV_offset_basis_32">FNV_offset_basis_32</A></CODE></TD>
<TD ALIGN="right"><CODE>-2128831035</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Utils.FNV_offset_basis_64"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;long</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Utils.html#FNV_offset_basis_64">FNV_offset_basis_64</A></CODE></TD>
<TD ALIGN="right"><CODE>-3750763034362895579L</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Utils.FNV_prime_32"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;int</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Utils.html#FNV_prime_32">FNV_prime_32</A></CODE></TD>
<TD ALIGN="right"><CODE>16777619</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Utils.FNV_prime_64"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;long</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Utils.html#FNV_prime_64">FNV_prime_64</A></CODE></TD>
<TD ALIGN="right"><CODE>1099511628211L</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Workload.INSERT_START_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY">INSERT_START_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"insertstart"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.Workload.INSERT_START_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY_DEFAULT">INSERT_START_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.ZipfianGenerator.ZIPFIAN_CONSTANT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;double</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/ZipfianGenerator.html#ZIPFIAN_CONSTANT">ZIPFIAN_CONSTANT</A></CODE></TD>
<TD ALIGN="right"><CODE>0.99</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="3">com.yahoo.ycsb.workloads.<A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.FIELD_COUNT_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY">FIELD_COUNT_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"fieldcount"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.FIELD_COUNT_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY_DEFAULT">FIELD_COUNT_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"10"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.FIELD_LENGTH_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY">FIELD_LENGTH_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"fieldlength"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.FIELD_LENGTH_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY_DEFAULT">FIELD_LENGTH_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"100"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.INSERT_ORDER_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY">INSERT_ORDER_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"insertorder"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.INSERT_ORDER_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY_DEFAULT">INSERT_ORDER_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"hashed"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.INSERT_PROPORTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY">INSERT_PROPORTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"insertproportion"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.INSERT_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY_DEFAULT">INSERT_PROPORTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0.0"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.MAX_SCAN_LENGTH_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY">MAX_SCAN_LENGTH_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"maxscanlength"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.MAX_SCAN_LENGTH_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY_DEFAULT">MAX_SCAN_LENGTH_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"1000"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READ_ALL_FIELDS_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY">READ_ALL_FIELDS_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"readallfields"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READ_ALL_FIELDS_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY_DEFAULT">READ_ALL_FIELDS_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"true"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READ_PROPORTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY">READ_PROPORTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"readproportion"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READ_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY_DEFAULT">READ_PROPORTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0.95"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READMODIFYWRITE_PROPORTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY">READMODIFYWRITE_PROPORTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"readmodifywriteproportion"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT">READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0.0"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.REQUEST_DISTRIBUTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY">REQUEST_DISTRIBUTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"requestdistribution"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.REQUEST_DISTRIBUTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY_DEFAULT">REQUEST_DISTRIBUTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"uniform"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.SCAN_LENGTH_DISTRIBUTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY">SCAN_LENGTH_DISTRIBUTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"scanlengthdistribution"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT">SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"uniform"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.SCAN_PROPORTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY">SCAN_PROPORTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"scanproportion"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.SCAN_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY_DEFAULT">SCAN_PROPORTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0.0"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.TABLENAME"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#TABLENAME">TABLENAME</A></CODE></TD>
<TD ALIGN="right"><CODE>"usertable"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.UPDATE_PROPORTION_PROPERTY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY">UPDATE_PROPORTION_PROPERTY</A></CODE></TD>
<TD ALIGN="right"><CODE>"updateproportion"</CODE></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<A NAME="com.yahoo.ycsb.workloads.CoreWorkload.UPDATE_PROPORTION_PROPERTY_DEFAULT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
<CODE>public&nbsp;static&nbsp;final&nbsp;java.lang.String</CODE></FONT></TD>
<TD ALIGN="left"><CODE><A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY_DEFAULT">UPDATE_PROPORTION_PROPERTY_DEFAULT</A></CODE></TD>
<TD ALIGN="right"><CODE>"0.05"</CODE></TD>
</TR>
</FONT></TD>
</TR>
</TABLE>
<P>
<P>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,140 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Deprecated List
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Deprecated List";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H2>
<B>Deprecated API</B></H2>
</CENTER>
<HR SIZE="4" NOSHADE>
<B>Contents</B><UL>
</UL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

213
doc/javadoc/help-doc.html Normal file
Просмотреть файл

@ -0,0 +1,213 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
API Help
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="API Help";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H1>
How This API Document Is Organized</H1>
</CENTER>
This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.<H3>
Overview</H3>
<BLOCKQUOTE>
<P>
The <A HREF="overview-summary.html">Overview</A> page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.</BLOCKQUOTE>
<H3>
Package</H3>
<BLOCKQUOTE>
<P>
Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:<UL>
<LI>Interfaces (italic)<LI>Classes<LI>Enums<LI>Exceptions<LI>Errors<LI>Annotation Types</UL>
</BLOCKQUOTE>
<H3>
Class/Interface</H3>
<BLOCKQUOTE>
<P>
Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:<UL>
<LI>Class inheritance diagram<LI>Direct Subclasses<LI>All Known Subinterfaces<LI>All Known Implementing Classes<LI>Class/interface declaration<LI>Class/interface description
<P>
<LI>Nested Class Summary<LI>Field Summary<LI>Constructor Summary<LI>Method Summary
<P>
<LI>Field Detail<LI>Constructor Detail<LI>Method Detail</UL>
Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.</BLOCKQUOTE>
</BLOCKQUOTE>
<H3>
Annotation Type</H3>
<BLOCKQUOTE>
<P>
Each annotation type has its own separate page with the following sections:<UL>
<LI>Annotation Type declaration<LI>Annotation Type description<LI>Required Element Summary<LI>Optional Element Summary<LI>Element Detail</UL>
</BLOCKQUOTE>
</BLOCKQUOTE>
<H3>
Enum</H3>
<BLOCKQUOTE>
<P>
Each enum has its own separate page with the following sections:<UL>
<LI>Enum declaration<LI>Enum description<LI>Enum Constant Summary<LI>Enum Constant Detail</UL>
</BLOCKQUOTE>
<H3>
Tree (Class Hierarchy)</H3>
<BLOCKQUOTE>
There is a <A HREF="overview-tree.html">Class Hierarchy</A> page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with <code>java.lang.Object</code>. The interfaces do not inherit from <code>java.lang.Object</code>.<UL>
<LI>When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.<LI>When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.</UL>
</BLOCKQUOTE>
<H3>
Deprecated API</H3>
<BLOCKQUOTE>
The <A HREF="deprecated-list.html">Deprecated API</A> page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.</BLOCKQUOTE>
<H3>
Index</H3>
<BLOCKQUOTE>
The <A HREF="index-all.html">Index</A> contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.</BLOCKQUOTE>
<H3>
Prev/Next</H3>
These links take you to the next or previous class, interface, package, or related page.<H3>
Frames/No Frames</H3>
These links show and hide the HTML frames. All pages are available with or without frames.
<P>
<H3>
Serialized Form</H3>
Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.
<P>
<H3>
Constant Field Values</H3>
The <a href="constant-values.html">Constant Field Values</a> page lists the static final fields and their values.
<P>
<FONT SIZE="-1">
<EM>
This help file applies to API documentation generated using the standard doclet.</EM>
</FONT>
<BR>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

827
doc/javadoc/index-all.html Normal file
Просмотреть файл

@ -0,0 +1,827 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Index
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="./stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Index";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="index-all.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A> <HR>
<A NAME="_A_"><!-- --></A><H2>
<B>A</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#a"><B>a</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#a"><B>a</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#addValue(double, java.lang.String)"><B>addValue(double, String)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#ASCIIString(int)"><B>ASCIIString(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_B_"><!-- --></A><H2>
<B>B</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#b"><B>b</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#b"><B>b</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Basic DB that just prints out the requested operations, instead of doing them against a database.<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#BasicDB()"><B>BasicDB()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS"><B>BUCKETS</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#BUCKETS_DEFAULT"><B>BUCKETS_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_C_"><!-- --></A><H2>
<B>C</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Client.html#checkRequiredProperties(java.util.Properties)"><B>checkRequiredProperties(Properties)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DB.html#cleanup()"><B>cleanup()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Cleanup any state for this DB.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#cleanup()"><B>cleanup()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Cleanup any state for this DB.
<DT><A HREF="./com/yahoo/ycsb/Workload.html#cleanup()"><B>cleanup()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>Cleanup the scenario.
<DT><A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/Client.html#Client()"><B>Client()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/package-summary.html"><B>com.yahoo.ycsb</B></A> - package com.yahoo.ycsb<DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/workloads/package-summary.html"><B>com.yahoo.ycsb.workloads</B></A> - package com.yahoo.ycsb.workloads<DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads"><B>CoreWorkload</B></A> - Class in <A HREF="./com/yahoo/ycsb/workloads/package-summary.html">com.yahoo.ycsb.workloads</A><DD>The core benchmark scenario.<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#CoreWorkload()"><B>CoreWorkload()</B></A> -
Constructor for class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>CounterGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Generates a sequence of integers 0, 1, ...<DT><A HREF="./com/yahoo/ycsb/CounterGenerator.html#CounterGenerator(int)"><B>CounterGenerator(int)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>
<DD>Create a counter that starts at countstart
</DL>
<HR>
<A NAME="_D_"><!-- --></A><H2>
<B>D</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A layer for accessing a database to be benchmarked.<DT><A HREF="./com/yahoo/ycsb/DB.html#DB()"><B>DB()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.String)"><B>DBException(String)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException()"><B>DBException()</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.String, java.lang.Throwable)"><B>DBException(String, Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBException.html#DBException(java.lang.Throwable)"><B>DBException(Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">DBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DBFactory.html#DBFactory()"><B>DBFactory()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Wrapper around a "real" DB that measures latencies and counts return codes.<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#DBWrapper(com.yahoo.ycsb.DB)"><B>DBWrapper(DB)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#delete(java.lang.String, java.lang.String)"><B>delete(String, String)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Delete a record from the database.
<DT><A HREF="./com/yahoo/ycsb/DB.html#delete(java.lang.String, java.lang.String)"><B>delete(String, String)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Delete a record from the database.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#delete(java.lang.String, java.lang.String)"><B>delete(String, String)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Delete a record from the database.
<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#DiscreteGenerator()"><B>DiscreteGenerator()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Workload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)"><B>doInsert(DB, Object)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>Do one insert operation.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doInsert(com.yahoo.ycsb.DB, java.lang.Object)"><B>doInsert(DB, Object)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>Do one insert operation.
<DT><A HREF="./com/yahoo/ycsb/Workload.html#doTransaction(com.yahoo.ycsb.DB, java.lang.Object)"><B>doTransaction(DB, Object)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>Do one transaction operation.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransaction(com.yahoo.ycsb.DB, java.lang.Object)"><B>doTransaction(DB, Object)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>Do one transaction operation.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionInsert(com.yahoo.ycsb.DB)"><B>doTransactionInsert(DB)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionRead(com.yahoo.ycsb.DB)"><B>doTransactionRead(DB)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionReadModifyWrite(com.yahoo.ycsb.DB)"><B>doTransactionReadModifyWrite(DB)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionScan(com.yahoo.ycsb.DB)"><B>doTransactionScan(DB)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#doTransactionUpdate(com.yahoo.ycsb.DB)"><B>doTransactionUpdate(DB)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_F_"><!-- --></A><H2>
<B>F</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY"><B>FIELD_COUNT_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the number of fields in a record.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_COUNT_PROPERTY_DEFAULT"><B>FIELD_COUNT_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>Default number of fields in a record.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY"><B>FIELD_LENGTH_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the length of a field in bytes.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#FIELD_LENGTH_PROPERTY_DEFAULT"><B>FIELD_LENGTH_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default length of a field in bytes.
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#FindGoodAB()"><B>FindGoodAB()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#FindGoodScrambleVector()"><B>FindGoodScrambleVector()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNV_offset_basis_32"><B>FNV_offset_basis_32</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNV_offset_basis_64"><B>FNV_offset_basis_64</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNV_prime_32"><B>FNV_prime_32</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNV_prime_64"><B>FNV_prime_64</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNVhash32(int)"><B>FNVhash32(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>32 bit FNV hash.
<DT><A HREF="./com/yahoo/ycsb/Utils.html#FNVhash64(long)"><B>FNVhash64(long)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>64 bit FNV hash.
</DL>
<HR>
<A NAME="_G_"><!-- --></A><H2>
<B>G</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>An expression that generates a sequence of string values, following some distribution (Uniform, Zipfian, Sequential, etc.)<DT><A HREF="./com/yahoo/ycsb/Generator.html#Generator()"><B>Generator()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#getMeasurements()"><B>getMeasurements()</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#getName()"><B>getName()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/DB.html#getProperties()"><B>getProperties()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Get the set of properties for this DB.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#getProperties()"><B>getProperties()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Get the set of properties for this DB.
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#getSummary()"><B>getSummary()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#getSummary()"><B>getSummary()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#getSummary()"><B>getSummary()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#getSummary()"><B>getSummary()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY"><B>GRANULARITY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>Granularity for time series; measurements will be averaged in chunks of this granularity.
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#GRANULARITY_DEFAULT"><B>GRANULARITY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_H_"><!-- --></A><H2>
<B>H</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#hash(int, int)"><B>hash(int, int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#hash(int, int)"><B>hash(int, int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#hash(int, int)"><B>hash(int, int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html#hash(int)"><B>hash(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_I_"><!-- --></A><H2>
<B>I</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#init()"><B>init()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Initialize any state for this DB.
<DT><A HREF="./com/yahoo/ycsb/DB.html#init()"><B>init()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Initialize any state for this DB.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#init()"><B>init()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Initialize any state for this DB.
<DT><A HREF="./com/yahoo/ycsb/Workload.html#init(java.util.Properties)"><B>init(Properties)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>Initialize the scenario.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#init(java.util.Properties)"><B>init(Properties)</B></A> -
Method in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>Initialize the scenario.
<DT><A HREF="./com/yahoo/ycsb/Workload.html#initThread(java.util.Properties, int, int)"><B>initThread(Properties, int, int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>Initialize any state for a particular client thread.
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)"><B>insert(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Insert a record in the database.
<DT><A HREF="./com/yahoo/ycsb/DB.html#insert(java.lang.String, java.lang.String, java.util.HashMap)"><B>insert(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Insert a record in the database.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#insert(java.lang.String, java.lang.String, java.util.HashMap)"><B>insert(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Insert a record in the database.
<DT><A HREF="./com/yahoo/ycsb/Client.html#INSERT_COUNT_PROPERTY"><B>INSERT_COUNT_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>Indicates how many inserts to do, if less than recordcount.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY"><B>INSERT_ORDER_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the order to insert records.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_ORDER_PROPERTY_DEFAULT"><B>INSERT_ORDER_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>Default insert order.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY"><B>INSERT_PROPORTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the proportion of transactions that are inserts.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#INSERT_PROPORTION_PROPERTY_DEFAULT"><B>INSERT_PROPORTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default proportion of transactions that are inserts.
<DT><A HREF="./com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY"><B>INSERT_START_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Workload.html#INSERT_START_PROPERTY_DEFAULT"><B>INSERT_START_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>IntegerGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A generator that is capable of generating ints as well as strings<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#IntegerGenerator()"><B>IntegerGenerator()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#ITEM_COUNT"><B>ITEM_COUNT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_J_"><!-- --></A><H2>
<B>J</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Utils.html#JenkinsHash(int)"><B>JenkinsHash(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_L_"><!-- --></A><H2>
<B>L</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#lastInt()"><B>lastInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>Return the previous int generated by the distribution.
<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#lastString()"><B>lastString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
<DT><A HREF="./com/yahoo/ycsb/Generator.html#lastString()"><B>lastString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#lastString()"><B>lastString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
<DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html#lastString()"><B>lastString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
<DD>Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
</DL>
<HR>
<A NAME="_M_"><!-- --></A><H2>
<B>M</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Client.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#main(java.lang.String[])"><B>main(String[])</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY"><B>MAX_SCAN_LENGTH_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the max scan length (number of records)
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#MAX_SCAN_LENGTH_PROPERTY_DEFAULT"><B>MAX_SCAN_LENGTH_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default max scan length.
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#measure(java.lang.String, int)"><B>measure(String, int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#measure(int)"><B>measure(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#measure(int)"><B>measure(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#measure(int)"><B>measure(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>Measurements</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Collects latency measurements, and reports them when requested.<DT><A HREF="./com/yahoo/ycsb/Measurements.html#Measurements(java.util.Properties)"><B>Measurements(Properties)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_N_"><!-- --></A><H2>
<B>N</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/DBFactory.html#newDB(java.lang.String, java.util.Properties)"><B>newDB(String, Properties)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb">DBFactory</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/CounterGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb">CounterGenerator</A>
<DD>If the generator returns numeric (integer) values, return the next value as an int.
<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<DD>If the generator returns numeric (integer) values, return the next value as an int.
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>Return the next value as an int.
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>Return the next int in the sequence.
<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
<DD>Generate the next string in the distribution, skewed Zipfian favoring the items most recently returned by the basis generator.
<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#nextInt(int)"><B>nextInt(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Generate the next item.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#nextInt()"><B>nextInt()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Return the next value, skewed by the Zipfian distribution.
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#nextLong()"><B>nextLong()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>Return the next long in the sequence.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#nextLong(long)"><B>nextLong(long)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Generate the next item as a long.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#nextLong()"><B>nextLong()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Return the next value, skewed by the Zipfian distribution.
<DT><A HREF="./com/yahoo/ycsb/DiscreteGenerator.html#nextString()"><B>nextString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb">DiscreteGenerator</A>
<DD>Generate the next string in the distribution.
<DT><A HREF="./com/yahoo/ycsb/Generator.html#nextString()"><B>nextString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb">Generator</A>
<DD>Generate the next string in the distribution.
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#nextString()"><B>nextString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>Generate the next string in the distribution.
<DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html#nextString()"><B>nextString()</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
<DD>Generate the next string in the distribution.
</DL>
<HR>
<A NAME="_O_"><!-- --></A><H2>
<B>O</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#OneMeasurement(java.lang.String)"><B>OneMeasurement(String)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>Take measurements and maintain a histogram of latencies.<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#OneMeasurementHistogram(java.lang.String, java.util.Properties)"><B>OneMeasurementHistogram(String, Properties)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#OneMeasurementTimeSeries(java.lang.String, java.util.Properties)"><B>OneMeasurementTimeSeries(String, Properties)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Client.html#OPERATION_COUNT_PROPERTY"><B>OPERATION_COUNT_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_P_"><!-- --></A><H2>
<B>P</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#printReport(java.io.PrintStream)"><B>printReport(PrintStream)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#printReport(java.io.PrintStream)"><B>printReport(PrintStream)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#printReport(java.io.PrintStream)"><B>printReport(PrintStream)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#printReport(java.io.PrintStream)"><B>printReport(PrintStream)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_R_"><!-- --></A><H2>
<B>R</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><B>read(String, String, Set&lt;String&gt;, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Read a record from the database.
<DT><A HREF="./com/yahoo/ycsb/DB.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><B>read(String, String, Set&lt;String&gt;, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Read a record from the database.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#read(java.lang.String, java.lang.String, java.util.Set, java.util.HashMap)"><B>read(String, String, Set&lt;String&gt;, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Read a record from the database.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY"><B>READ_ALL_FIELDS_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for deciding whether to read one field (false) or all fields (true) of a record.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READ_ALL_FIELDS_PROPERTY_DEFAULT"><B>READ_ALL_FIELDS_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default value for the readallfields property.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY"><B>READ_PROPORTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the proportion of transactions that are reads.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READ_PROPORTION_PROPERTY_DEFAULT"><B>READ_PROPORTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default proportion of transactions that are reads.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY"><B>READMODIFYWRITE_PROPORTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the proportion of transactions that are read-modify-write.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT"><B>READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default proportion of transactions that are scans.
<DT><A HREF="./com/yahoo/ycsb/Client.html#RECORD_COUNT_PROPERTY"><B>RECORD_COUNT_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#reportReturnCode(java.lang.String, int)"><B>reportReturnCode(String, int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurement.html#reportReturnCode(int)"><B>reportReturnCode(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb">OneMeasurement</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html#reportReturnCode(int)"><B>reportReturnCode(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb">OneMeasurementHistogram</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html#reportReturnCode(int)"><B>reportReturnCode(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb">OneMeasurementTimeSeries</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY"><B>REQUEST_DISTRIBUTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the the distribution of requests across the keyspace.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#REQUEST_DISTRIBUTION_PROPERTY_DEFAULT"><B>REQUEST_DISTRIBUTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default distribution of requests across the keyspace
</DL>
<HR>
<A NAME="_S_"><!-- --></A><H2>
<B>S</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><B>scan(String, String, int, Set&lt;String&gt;, Vector&lt;HashMap&lt;String, String&gt;&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Perform a range scan for a set of records in the database.
<DT><A HREF="./com/yahoo/ycsb/DB.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><B>scan(String, String, int, Set&lt;String&gt;, Vector&lt;HashMap&lt;String, String&gt;&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Perform a range scan for a set of records in the database.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#scan(java.lang.String, java.lang.String, int, java.util.Set, java.util.Vector)"><B>scan(String, String, int, Set&lt;String&gt;, Vector&lt;HashMap&lt;String, String&gt;&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Perform a range scan for a set of records in the database.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY"><B>SCAN_LENGTH_DISTRIBUTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the scan length distribution.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT"><B>SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default max scan length.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY"><B>SCAN_PROPORTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the proportion of transactions that are scans.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#SCAN_PROPORTION_PROPERTY_DEFAULT"><B>SCAN_PROPORTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default proportion of transactions that are scans.
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#scramble(int)"><B>scramble(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#scramble(int)"><B>scramble(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#scramble(int)"><B>scramble(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html#scrambleArray()"><B>scrambleArray()</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb">FindGoodScrambleVector</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A generator of a zipfian distribution.<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#ScrambledZipfianGenerator(long)"><B>ScrambledZipfianGenerator(long)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>Create a zipfian generator for the specified number of items.
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#ScrambledZipfianGenerator(long, long)"><B>ScrambledZipfianGenerator(long, long)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>Create a zipfian generator for items between min and max.
<DT><A HREF="./com/yahoo/ycsb/IntegerGenerator.html#setLastInt(int)"><B>setLastInt(int)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb">IntegerGenerator</A>
<DD>Set the last value generated.
<DT><A HREF="./com/yahoo/ycsb/DB.html#setProperties(java.util.Properties)"><B>setProperties(Properties)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Set the properties for this DB.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#setProperties(java.util.Properties)"><B>setProperties(Properties)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Set the properties for this DB.
<DT><A HREF="./com/yahoo/ycsb/Measurements.html#setProperties(java.util.Properties)"><B>setProperties(Properties)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb">Measurements</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY"><B>SIMULATE_DELAY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#SIMULATE_DELAY_DEFAULT"><B>SIMULATE_DELAY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html#SkewedLatestGenerator(com.yahoo.ycsb.CounterGenerator)"><B>SkewedLatestGenerator(CounterGenerator)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb">SkewedLatestGenerator</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_T_"><!-- --></A><H2>
<B>T</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#TABLENAME"><B>TABLENAME</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the database table to run queries against.
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#TestCollisions()"><B>TestCollisions()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html#TestExpandedZipfian()"><B>TestExpandedZipfian()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb">TestExpandedZipfian</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/FindGoodAB.html#testVector(int)"><B>testVector(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb">FindGoodAB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestCollisions.html#testVector(int)"><B>testVector(int)</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb">TestCollisions</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/TestZipfian.html#TestZipfian()"><B>TestZipfian()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb">TestZipfian</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_U_"><!-- --></A><H2>
<B>U</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>An expression that generates a random integer in the specified range<DT><A HREF="./com/yahoo/ycsb/UniformGenerator.html#UniformGenerator(java.util.Vector)"><B>UniformGenerator(Vector&lt;String&gt;)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb">UniformGenerator</A>
<DD>Creates a generator that will return strings from the specified set uniformly randomly
<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html#UniformIntegerGenerator(int, int)"><B>UniformIntegerGenerator(int, int)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb">UniformIntegerGenerator</A>
<DD>Creates a generator that will return integers uniformly randomly from the interval [lb,ub] inclusive (that is, lb and ub are possible values)
<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String)"><B>UnknownDBException(String)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException()"><B>UnknownDBException()</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.String, java.lang.Throwable)"><B>UnknownDBException(String, Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/UnknownDBException.html#UnknownDBException(java.lang.Throwable)"><B>UnknownDBException(Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">UnknownDBException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#update(java.lang.String, java.lang.String, java.util.HashMap)"><B>update(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>Update a record in the database.
<DT><A HREF="./com/yahoo/ycsb/DB.html#update(java.lang.String, java.lang.String, java.util.HashMap)"><B>update(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb">DB</A>
<DD>Update a record in the database.
<DT><A HREF="./com/yahoo/ycsb/DBWrapper.html#update(java.lang.String, java.lang.String, java.util.HashMap)"><B>update(String, String, HashMap&lt;String, String&gt;)</B></A> -
Method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb">DBWrapper</A>
<DD>Update a record in the database.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY"><B>UPDATE_PROPORTION_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The name of the property for the proportion of transactions that are updates.
<DT><A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html#UPDATE_PROPORTION_PROPERTY_DEFAULT"><B>UPDATE_PROPORTION_PROPERTY_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.workloads.<A HREF="./com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads">CoreWorkload</A>
<DD>The default proportion of transactions that are updates.
<DT><A HREF="./com/yahoo/ycsb/Client.html#usageMessage()"><B>usageMessage()</B></A> -
Static method in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>Utils</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/Utils.html#Utils()"><B>Utils()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb">Utils</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_V_"><!-- --></A><H2>
<B>V</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#VERBOSE"><B>VERBOSE</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/BasicDB.html#VERBOSE_DEFAULT"><B>VERBOSE_DEFAULT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb">BasicDB</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_W_"><!-- --></A><H2>
<B>W</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>Workload</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>One experiment scenario.<DT><A HREF="./com/yahoo/ycsb/Workload.html#Workload()"><B>Workload()</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb">Workload</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/Client.html#WORKLOAD_PROPERTY"><B>WORKLOAD_PROPERTY</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb">Client</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A> - Exception in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>&nbsp;<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String)"><B>WorkloadException(String)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException()"><B>WorkloadException()</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.String, java.lang.Throwable)"><B>WorkloadException(String, Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/WorkloadException.html#WorkloadException(java.lang.Throwable)"><B>WorkloadException(Throwable)</B></A> -
Constructor for exception com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">WorkloadException</A>
<DD>&nbsp;
</DL>
<HR>
<A NAME="_Z_"><!-- --></A><H2>
<B>Z</B></H2>
<DL>
<DT><A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html#ZETAN"><B>ZETAN</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb">ScrambledZipfianGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZIPFIAN_CONSTANT"><B>ZIPFIAN_CONSTANT</B></A> -
Static variable in class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>&nbsp;
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ZipfianGenerator</B></A> - Class in <A HREF="./com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A><DD>A generator of a zipfian distribution.<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long)"><B>ZipfianGenerator(long)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Create a zipfian generator for the specified number of items.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long)"><B>ZipfianGenerator(long, long)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Create a zipfian generator for items between min and max.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, double)"><B>ZipfianGenerator(long, double)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Create a zipfian generator for the specified number of items using the specified zipfian constant.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long, double)"><B>ZipfianGenerator(long, long, double)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant.
<DT><A HREF="./com/yahoo/ycsb/ZipfianGenerator.html#ZipfianGenerator(long, long, double, double)"><B>ZipfianGenerator(long, long, double, double)</B></A> -
Constructor for class com.yahoo.ycsb.<A HREF="./com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb">ZipfianGenerator</A>
<DD>Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant, using the precomputed value of zeta.
</DL>
<HR>
<A HREF="#_A_">A</A> <A HREF="#_B_">B</A> <A HREF="#_C_">C</A> <A HREF="#_D_">D</A> <A HREF="#_F_">F</A> <A HREF="#_G_">G</A> <A HREF="#_H_">H</A> <A HREF="#_I_">I</A> <A HREF="#_J_">J</A> <A HREF="#_L_">L</A> <A HREF="#_M_">M</A> <A HREF="#_N_">N</A> <A HREF="#_O_">O</A> <A HREF="#_P_">P</A> <A HREF="#_R_">R</A> <A HREF="#_S_">S</A> <A HREF="#_T_">T</A> <A HREF="#_U_">U</A> <A HREF="#_V_">V</A> <A HREF="#_W_">W</A> <A HREF="#_Z_">Z</A>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Index</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="./help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="./index.html?index-all.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="index-all.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="./allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

39
doc/javadoc/index.html Normal file
Просмотреть файл

@ -0,0 +1,39 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc on Mon Apr 19 13:47:53 PDT 2010-->
<TITLE>
Generated Documentation (Untitled)
</TITLE>
<SCRIPT type="text/javascript">
targetPage = "" + window.location.search;
if (targetPage != "" && targetPage != "undefined")
targetPage = targetPage.substring(1);
if (targetPage.indexOf(":") != -1)
targetPage = "undefined";
function loadFrames() {
if (targetPage != "" && targetPage != "undefined")
top.classFrame.location = top.targetPage;
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<FRAMESET cols="20%,80%" title="" onLoad="top.loadFrames()">
<FRAMESET rows="30%,70%" title="" onLoad="top.loadFrames()">
<FRAME src="overview-frame.html" name="packageListFrame" title="All Packages">
<FRAME src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)">
</FRAMESET>
<FRAME src="overview-summary.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes">
<NOFRAMES>
<H2>
Frame Alert</H2>
<P>
This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
<BR>
Link to<A HREF="overview-summary.html">Non-frame version.</A>
</NOFRAMES>
</FRAMESET>
</HTML>

Просмотреть файл

@ -0,0 +1,44 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Overview
</TITLE>
<META NAME="keywords" CONTENT="Overview">
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TH ALIGN="left" NOWRAP><FONT size="+1" CLASS="FrameTitleFont">
<B></B></FONT></TH>
</TR>
</TABLE>
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
<TR>
<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="allclasses-frame.html" target="packageFrame">All Classes</A></FONT>
<P>
<FONT size="+1" CLASS="FrameHeadingFont">
Packages</FONT>
<BR>
<FONT CLASS="FrameItemFont"><A HREF="com/yahoo/ycsb/package-frame.html" target="packageFrame">com.yahoo.ycsb</A></FONT>
<BR>
<FONT CLASS="FrameItemFont"><A HREF="com/yahoo/ycsb/workloads/package-frame.html" target="packageFrame">com.yahoo.ycsb.workloads</A></FONT>
<BR>
</TD>
</TR>
</TABLE>
<P>
&nbsp;
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,150 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Overview
</TITLE>
<META NAME="keywords" CONTENT="Overview">
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Overview";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Packages</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="20%"><B><A HREF="com/yahoo/ycsb/package-summary.html">com.yahoo.ycsb</A></B></TD>
<TD>&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD WIDTH="20%"><B><A HREF="com/yahoo/ycsb/workloads/package-summary.html">com.yahoo.ycsb.workloads</A></B></TD>
<TD>&nbsp;</TD>
</TR>
</TABLE>
<P>
&nbsp;<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Overview</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?overview-summary.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="overview-summary.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,161 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Class Hierarchy
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Class Hierarchy";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?overview-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="overview-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H2>
Hierarchy For All Packages</H2>
</CENTER>
<DL>
<DT><B>Package Hierarchies:</B><DD><A HREF="com/yahoo/ycsb/package-tree.html">com.yahoo.ycsb</A>, <A HREF="com/yahoo/ycsb/workloads/package-tree.html">com.yahoo.ycsb.workloads</A></DL>
<HR>
<H2>
Class Hierarchy
</H2>
<UL>
<LI TYPE="circle">java.lang.Object<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Client.html" title="class in com.yahoo.ycsb"><B>Client</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DB.html" title="class in com.yahoo.ycsb"><B>DB</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/BasicDB.html" title="class in com.yahoo.ycsb"><B>BasicDB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBWrapper.html" title="class in com.yahoo.ycsb"><B>DBWrapper</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBFactory.html" title="class in com.yahoo.ycsb"><B>DBFactory</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/FindGoodAB.html" title="class in com.yahoo.ycsb"><B>FindGoodAB</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/FindGoodScrambleVector.html" title="class in com.yahoo.ycsb"><B>FindGoodScrambleVector</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Generator.html" title="class in com.yahoo.ycsb"><B>Generator</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DiscreteGenerator.html" title="class in com.yahoo.ycsb"><B>DiscreteGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/IntegerGenerator.html" title="class in com.yahoo.ycsb"><B>IntegerGenerator</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/CounterGenerator.html" title="class in com.yahoo.ycsb"><B>CounterGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ScrambledZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ScrambledZipfianGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/SkewedLatestGenerator.html" title="class in com.yahoo.ycsb"><B>SkewedLatestGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UniformIntegerGenerator.html" title="class in com.yahoo.ycsb"><B>UniformIntegerGenerator</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/ZipfianGenerator.html" title="class in com.yahoo.ycsb"><B>ZipfianGenerator</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UniformGenerator.html" title="class in com.yahoo.ycsb"><B>UniformGenerator</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Measurements.html" title="class in com.yahoo.ycsb"><B>Measurements</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurement.html" title="class in com.yahoo.ycsb"><B>OneMeasurement</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementHistogram.html" title="class in com.yahoo.ycsb"><B>OneMeasurementHistogram</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/OneMeasurementTimeSeries.html" title="class in com.yahoo.ycsb"><B>OneMeasurementTimeSeries</B></A></UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestCollisions.html" title="class in com.yahoo.ycsb"><B>TestCollisions</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestExpandedZipfian.html" title="class in com.yahoo.ycsb"><B>TestExpandedZipfian</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/TestZipfian.html" title="class in com.yahoo.ycsb"><B>TestZipfian</B></A><LI TYPE="circle">java.lang.Throwable (implements java.io.Serializable)
<UL>
<LI TYPE="circle">java.lang.Exception<UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb"><B>DBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb"><B>UnknownDBException</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb"><B>WorkloadException</B></A></UL>
</UL>
<LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Utils.html" title="class in com.yahoo.ycsb"><B>Utils</B></A><LI TYPE="circle">com.yahoo.ycsb.<A HREF="com/yahoo/ycsb/Workload.html" title="class in com.yahoo.ycsb"><B>Workload</B></A><UL>
<LI TYPE="circle">com.yahoo.ycsb.workloads.<A HREF="com/yahoo/ycsb/workloads/CoreWorkload.html" title="class in com.yahoo.ycsb.workloads"><B>CoreWorkload</B></A></UL>
</UL>
</UL>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?overview-tree.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="overview-tree.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

2
doc/javadoc/package-list Normal file
Просмотреть файл

@ -0,0 +1,2 @@
com.yahoo.ycsb
com.yahoo.ycsb.workloads

Двоичные данные
doc/javadoc/resources/inherit.gif Normal file

Двоичный файл не отображается.

После

Ширина:  |  Высота:  |  Размер: 57 B

Просмотреть файл

@ -0,0 +1,188 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.5.0_22) on Mon Apr 19 13:47:53 PDT 2010 -->
<TITLE>
Serialized Form
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Serialized Form";
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?serialized-form.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="serialized-form.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<CENTER>
<H1>
Serialized Form</H1>
</CENTER>
<HR SIZE="4" NOSHADE>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="center"><FONT SIZE="+2">
<B>Package</B> <B>com.yahoo.ycsb</B></FONT></TH>
</TR>
</TABLE>
<P>
<A NAME="com.yahoo.ycsb.DBException"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class <A HREF="com/yahoo/ycsb/DBException.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.DBException</A> extends java.lang.Exception implements Serializable</B></FONT></TH>
</TR>
</TABLE>
<P>
<B>serialVersionUID:&nbsp;</B>6646883591588721475L
<P>
<P>
<A NAME="com.yahoo.ycsb.UnknownDBException"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class <A HREF="com/yahoo/ycsb/UnknownDBException.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.UnknownDBException</A> extends java.lang.Exception implements Serializable</B></FONT></TH>
</TR>
</TABLE>
<P>
<B>serialVersionUID:&nbsp;</B>459099842269616836L
<P>
<P>
<A NAME="com.yahoo.ycsb.WorkloadException"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Class <A HREF="com/yahoo/ycsb/WorkloadException.html" title="class in com.yahoo.ycsb">com.yahoo.ycsb.WorkloadException</A> extends java.lang.Exception implements Serializable</B></FONT></TH>
</TR>
</TABLE>
<P>
<B>serialVersionUID:&nbsp;</B>8844396756042772132L
<P>
<P>
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;PREV&nbsp;
&nbsp;NEXT</FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="index.html?serialized-form.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="serialized-form.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
</BODY>
</HTML>

Просмотреть файл

@ -0,0 +1,29 @@
/* Javadoc style sheet */
/* Define colors, fonts and other style attributes here to override the defaults */
/* Page background color */
body { background-color: #FFFFFF }
/* Headings */
h1 { font-size: 145% }
/* Table colors */
.TableHeadingColor { background: #CCCCFF } /* Dark mauve */
.TableSubHeadingColor { background: #EEEEFF } /* Light mauve */
.TableRowColor { background: #FFFFFF } /* White */
/* Font used in left-hand frame lists */
.FrameTitleFont { font-size: 100%; font-family: Helvetica, Arial, sans-serif }
.FrameHeadingFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif }
.FrameItemFont { font-size: 90%; font-family: Helvetica, Arial, sans-serif }
/* Navigation bar fonts and colors */
.NavBarCell1 { background-color:#EEEEFF;} /* Light mauve */
.NavBarCell1Rev { background-color:#00008B;} /* Dark Blue */
.NavBarFont1 { font-family: Arial, Helvetica, sans-serif; color:#000000;}
.NavBarFont1Rev { font-family: Arial, Helvetica, sans-serif; color:#FFFFFF;}
.NavBarCell2 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;}
.NavBarCell3 { font-family: Arial, Helvetica, sans-serif; background-color:#FFFFFF;}

46
doc/parallelclients.html Normal file
Просмотреть файл

@ -0,0 +1,46 @@
<HTML>
<HEAD>
<TITLE>YCSB - Parallel clients</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Running multiple clients in parallel</h2>
It is straightforward to run the transaction phase of the workload from multiple servers - just start up clients on different servers, each running the same workload. Each client will
produce performance statistics when it is done, and you'll have to aggregate these individual files into a single set of results.
<P>
In some cases it makes sense to load the database using multiple servers. In this case, you will want to partition the records to be loaded among the clients. Normally, YCSB just loads
all of the records (as defined by the recordcount property). However, if you want to partition the load you need to additionally specify two other properties for each client:
<UL>
<LI><b>insertstart</b>: The index of the record to start at.
<LI><b>insertcount</b>: The number of records to insert.
</UL>
These properties can be specified in a property file or on the command line using the -p option.
<P>
For example, imagine you want to load 100 million records (so recordcount=100000000). Imagine you want to load with four clients. For the first client:
<pre>
insertstart=0
insertcount=25000000
</pre>
For the second client:
<pre>
insertstart=25000000
insertcount=25000000
</pre>
For the third client:
<pre>
insertstart=50000000
insertcount=25000000
</pre>
And for the fourth client:
<pre>
insertstart=75000000
insertcount=25000000
</pre>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</body>
</html>

31
doc/tipsfaq.html Normal file
Просмотреть файл

@ -0,0 +1,31 @@
<HTML>
<HEAD>
<TITLE>YCSB - Tips and FAQ</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Tips</h2>
<B>Tip 1 - Carefully adjust the number of threads</B>
<P>
The number of threads determines how much workload you can generate against the database. Imagine that you are trying to run a test with 10,000 operations per second,
but you are only achieving 8,000 operations per second. Is this because the database can't keep up with the load? Not necessarily. Imagine that you are running with 100
client threads (e.g. "-threads 100") and each operation is taking 12 milliseconds on average. Each thread will only be able to generate 83 operations per second, because each
thread operates sequentially. Over 100 threads, your client will only generate 8300 operations per second, even if the database can support more. Increasing the number of threads
ensures there are enough parallel clients hitting the database so that the database, not the client, is the bottleneck.
<P>
To calculate the number of threads needed, you should have some idea of the expected latency. For example, at 10,000 operations per second, we might expect the database
to have a latency of 10-30 milliseconds on average. So you to generate 10,000 operations per second, you will need (Ops per sec / (1000 / avg latency in ms) ), or (10000/(1000/30))=300 threads.
In fact, to be conservative, you might consider having 400 threads. Although this is a lot of threads, each thread will spend most of its time waiting for the database to respond,
so the context switching overhead will be low.
<P>
Experiment with increasing the number of threads, especially if you find you are not reaching your target throughput. Eventually, of course, you will saturate the database
and there will be no way to increase the number of threads to get more throughput (in fact, increasing the number of client threads may make things worse) but you need to have
enough threads to ensure it is the database, not the client, that is the bottleneck.
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</BODY>
</HTML>

129
doc/workload.html Normal file
Просмотреть файл

@ -0,0 +1,129 @@
<HTML>
<HEAD>
<TITLE>YCSB - Implementing new workloads</TITLE>
</HEAD>
<BODY>
<H1><img src="images/ycsblogo-small.png"> Yahoo! Cloud Serving Benchmark</H1>
<H3>Version 0.1</H3>
<HR>
<A HREF="index.html">Home</A> - <A href="coreworkloads.html">Core workloads</A> - <a href="tipsfaq.html">Tips and FAQ</A>
<HR>
<H2>Implementing new workloads - overview</h2>
A workload represents the load that a given application will put on the database system. For benchmarking purposes, we must define
workloads that are relatively simple compared to real applications, so that we can better reason about the benchmarking results
we get. However, a workload should be detailed enough so that once we measure the database's performance, we know what kinds of applications
might experience similar performance.
<p>
In the context of YCSB, a workload defines both a <b>data set</b>, which is a set of records to be loaded into the database, and a <b>transaction set</b>,
which are the set of read and write operations against the database. Creating the transactions requires understanding the structure of the records, which
is why both the data and the transactions must be defined in the workload.
<P>
For a complete benchmark, multiple important (but distinct) workloads might be grouped together into a <i>workload package</I>. The CoreWorkload
package included with the YCSB client is an example of such a collection of workloads.
<P>
Typically a workload consists of two files:
<UL>
<LI>A java class which contains the code to create data records and generate transactions against them
<LI>A parameter file which tunes the specifics of the workload
</UL>
For example, a workload class file might generate some combination of read and update operations against the database. The parameter
file might specify whether the mix of reads and updates is 50/50, 80/20, etc.
<P>
There are two ways to create a new workload or package of workloads.
<P>
<h3>Option 1: new parameter files</h3>
<P>
The core workloads included with YCSB are defined by a set of parameter files (workloada, workloadb, etc.) You can create your own parameter file with new values
for the read/write mix, request distribution, etc. For example, the workloada file has the following contents:
<pre>
workload=com.yahoo.ycsb.workloads.CoreWorkload
readallfields=false
readproportion=0.5
updateproportion=0.5
scanproportion=0
insertproportion=0
requestdistribution=zipfian
</pre>
Creating a new file that changes any of these values will produce a new workload with different characteristics. The set of properties that can be specified is <a href="coreproperties.html">here</a>.
<P>
<h3>Option 2: new java class</h3>
<P>
The workload java class will be created by the YCSB Client at runtime, and will use an instance of the <a href="dblayer.html">DB interface layer</A>
to generate the actual operations against the database. Thus, the java class only needs to decide (based on settings in the parameter file) what records
to create for the data set, and what reads, updates etc. to generate for the transaction phase. The YCSB Client will take care of creating the workload java class,
passing it to a worker thread for executing, deciding how many records to create or how many operations to execute, and measuring the resulting
performance.
<P>
If the CoreWorkload (or some other existing package) does not have the ability to generate the workload you desire, you can create a new workload java class.
This is done using the following steps:
<H3>Step 1. Extend <a href="javadoc/com/yahoo/ycsb/Workload.html">com.yahoo.ycsb.Workload</A></H3>
The base class of all workload classes is com.yahoo.ycsb.Workload. This is an abstract class, so you create a new workload that extends this base class. Your
class must have a public no-argument constructor, because the workload will be created in a factory using the no-argument constructor. The YCSB Client will
create one Workload object for each worker thread, so if you run the Client with multiple threads, multiple workload objects will be created.
<H3>Step 2. Write code to initialize your workload class</H3>
The parameter fill will be passed to the workload object after the constructor has been called, so if you are using any parameter properties, you must
use them to initialize your workload using either the init() or initThread() methods.
<UL>
<LI>init() - called once for all workload instances. Used to initialize any objects shared by all threads.
<LI>initThread() - called once per workload instance in the context of the worker thread. Used to initialize any objects specific to a single Workload instance
and single worker thread.
</UL>
In either case, you can access the parameter properties using the Properties object passed in to both methods. These properties will include all properties defined
in any property file passed to the YCSB Client or defined on the client command line.
<H3>Step 3. Write any cleanup code</H3>
The cleanup() method is called once for all workload instances, after the workload has completed.
<H3>Step 4. Define the records to be inserted</H3>
The YCSB Client will call the doInsert() method once for each record to be inserted into the database. So you should implement this method
to create and insert a single record. The DB object you can use to perform the insert will be passed to the doInsert() method.
<H3>Step 5. Define the transactions</H3>
The YCSB Client will call the doTransaction() method once for every transaction that is to be executed. So you should implement this method to execute
a single transaction, using the DB object passed in to access the database. Your implementation of this method can choose between different types of
transactions, and can make multiple calls to the DB interface layer. However, each invocation of the method should be a logical transaction. In particular, when you run the client,
you'll specify the number of operations to execute; if you request 1000 operations then doTransaction() will be executed 1000 times.
<P>
Note that you do not have to do any throttling of your transactions (or record insertions) to achieve the target throughput. The YCSB Client will do the throttling
for you.
<P>
Note also that it is allowable to insert records inside the doTransaction() method. You might do this if you wish the database to grow during the workload. In this case,
the initial dataset will be constructed using calls to the doInsert() method, while additional records would be inserted using calls to the doTransaction() method.
<h3>Step 6 - Measure latency, if necessary</h3>
The YCSB client will automatically measure the latency and throughput of database operations, even for workloads that you define. However, the client will only measure
the latency of individual calls to the database, not of more complex transactions. Consider for example a workload that reads a record, modifies it, and writes
the changes back to the database. The YCSB client will automatically measure the latency of the read operation to the database; and separately will automatically measure the
latency of the update operation. However, if you would like to measure the latency of the entire read-modify-write transaction, you will need to add an additional timing step to your
code.
<P>
Measurements are gathered using the Measurements.measure() call. There is a singleton instance of Measurements, which can be obtained using the
Measurements.getMeasurements() static method. For each metric you are measuring, you need to assign a string tag; this tag will label the resulting
average, min, max, histogram etc. measurements output by the tool at the end of the workload. For example, consider the following code:
<pre>
long st=System.currentTimeMillis();
db.read(TABLENAME,keyname,fields,new HashMap<String,String>());
db.update(TABLENAME,keyname,values);
long en=System.currentTimeMillis();
Measurements.getMeasurements().measure("READ-MODIFY-WRITE", (int)(en-st));
</pre>
In this code, the calls to System.currentTimeMillis() are used to time the read and write transaction. Then, the call to measure() reports the latency to the
measurement component.
<p>
Using this pattern, your custom measurements will be gathered and aggregated using the same mechanism that is used to gather measurements for individual READ, UPDATE etc. operations.
<h3>Step 7 - Use it with the YCSB Client</h3>
Make sure that the classes for your implementation (or a jar containing those classes) are available on your CLASSPATH, as well as any libraries/jar files used
by your implementation. Now, when you run the YCSB Client, specify the "workload" property to provide the fully qualified classname of your
DB class. For example:
<pre>
workload=com.foo.YourWorkloadClass
</pre>
<HR>
YCSB - Yahoo! Research - Contact cooperb@yahoo-inc.com.
</body>
</html>

Просмотреть файл

@ -0,0 +1,270 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.HashMap;
import java.util.Properties;
import java.util.Set;
import java.util.Enumeration;
import java.util.Random;
import java.util.Vector;
/**
* Basic DB that just prints out the requested operations, instead of doing them against a database.
*/
public class BasicDB extends DB
{
public static final String VERBOSE="basicdb.verbose";
public static final String VERBOSE_DEFAULT="true";
public static final String SIMULATE_DELAY="basicdb.simulatedelay";
public static final String SIMULATE_DELAY_DEFAULT="0";
Random random;
boolean verbose;
int todelay;
public BasicDB()
{
random=new Random();
todelay=0;
}
void delay()
{
if (todelay>0)
{
try
{
Thread.sleep((long)random.nextInt(todelay));
}
catch (InterruptedException e)
{
//do nothing
}
}
}
/**
* Initialize any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
@SuppressWarnings("unchecked")
public void init()
{
verbose=Boolean.parseBoolean(getProperties().getProperty(VERBOSE, VERBOSE_DEFAULT));
todelay=Integer.parseInt(getProperties().getProperty(SIMULATE_DELAY, SIMULATE_DELAY_DEFAULT));
if (verbose)
{
System.out.println("***************** properties *****************");
Properties p=getProperties();
if (p!=null)
{
for (Enumeration e=p.propertyNames(); e.hasMoreElements(); )
{
String k=(String)e.nextElement();
System.out.println("\""+k+"\"=\""+p.getProperty(k)+"\"");
}
}
System.out.println("**********************************************");
}
}
/**
* Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param key The record key of the record to read.
* @param fields The list of fields to read, or null for all of them
* @param result A HashMap of field/value pairs for the result
* @return Zero on success, a non-zero error code on error
*/
public int read(String table, String key, Set<String> fields, HashMap<String,String> result)
{
delay();
if (verbose)
{
System.out.print("READ "+table+" "+key+" [ ");
if (fields!=null)
{
for (String f : fields)
{
System.out.print(f+" ");
}
}
else
{
System.out.print("<all fields>");
}
System.out.println("]");
}
return 0;
}
/**
* Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param startkey The record key of the first record to read.
* @param recordcount The number of records to read
* @param fields The list of fields to read, or null for all of them
* @param result A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
* @return Zero on success, a non-zero error code on error
*/
public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result)
{
delay();
if (verbose)
{
System.out.print("SCAN "+table+" "+startkey+" "+recordcount+" [ ");
if (fields!=null)
{
for (String f : fields)
{
System.out.print(f+" ");
}
}
else
{
System.out.print("<all fields>");
}
System.out.println("]");
}
return 0;
}
/**
* Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key, overwriting any existing values with the same field name.
*
* @param table The name of the table
* @param key The record key of the record to write.
* @param result A HashMap of field/value pairs to update in the record
* @return Zero on success, a non-zero error code on error
*/
public int update(String table, String key, HashMap<String,String> values)
{
delay();
if (verbose)
{
System.out.print("UPDATE "+table+" "+key+" [ ");
if (values!=null)
{
for (String k : values.keySet())
{
System.out.print(k+"="+values.get(k)+" ");
}
}
System.out.println("]");
}
return 0;
}
/**
* Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key.
*
* @param table The name of the table
* @param key The record key of the record to insert.
* @param result A HashMap of field/value pairs to insert in the record
* @return Zero on success, a non-zero error code on error
*/
public int insert(String table, String key, HashMap<String,String> values)
{
delay();
if (verbose)
{
System.out.print("INSERT "+table+" "+key+" [ ");
if (values!=null)
{
for (String k : values.keySet())
{
System.out.print(k+"="+values.get(k)+" ");
}
}
System.out.println("]");
}
return 0;
}
/**
* Delete a record from the database.
*
* @param table The name of the table
* @param key The record key of the record to delete.
* @return Zero on success, a non-zero error code on error
*/
public int delete(String table, String key)
{
delay();
if (verbose)
{
System.out.println("DELETE "+table+" "+key);
}
return 0;
}
/**
* Short test of BasicDB
*/
/*
public static void main(String[] args)
{
BasicDB bdb=new BasicDB();
Properties p=new Properties();
p.setProperty("Sky","Blue");
p.setProperty("Ocean","Wet");
bdb.setProperties(p);
bdb.init();
HashMap<String,String> fields=new HashMap<String,String>();
fields.put("A","X");
fields.put("B","Y");
bdb.read("table","key",null,null);
bdb.insert("table","key",fields);
fields=new HashMap<String,String>();
fields.put("C","Z");
bdb.update("table","key",fields);
bdb.delete("table","key");
}*/
}

Просмотреть файл

@ -0,0 +1,716 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.io.*;
import java.text.DecimalFormat;
import java.util.*;
//import org.apache.log4j.BasicConfigurator;
/**
* A thread to periodically show the status of the experiment, to reassure you that progress is being made.
*
* @author cooperb
*
*/
class StatusThread extends Thread
{
Vector<Thread> _threads;
String _label;
boolean _standardstatus;
/**
* The interval for reporting status.
*/
public static final long sleeptime=10000;
public StatusThread(Vector<Thread> threads, String label, boolean standardstatus)
{
_threads=threads;
_label=label;
_standardstatus=standardstatus;
}
/**
* Run and periodically report status.
*/
public void run()
{
long st=System.currentTimeMillis();
long lasten=st;
long lasttotalops=0;
boolean alldone;
do
{
alldone=true;
int totalops=0;
//terminate this thread when all the worker threads are done
for (Thread t : _threads)
{
if (t.getState()!=Thread.State.TERMINATED)
{
alldone=false;
}
ClientThread ct=(ClientThread)t;
totalops+=ct.getOpsDone();
}
long en=System.currentTimeMillis();
long interval=en-st;
//double throughput=1000.0*((double)totalops)/((double)interval);
double curthroughput=1000.0*(((double)(totalops-lasttotalops))/((double)(en-lasten)));
lasttotalops=totalops;
lasten=en;
DecimalFormat d = new DecimalFormat("#.##");
if (totalops==0)
{
System.err.println(_label+" "+(interval/1000)+" sec: "+totalops+" operations; "+Measurements.getMeasurements().getSummary());
}
else
{
System.err.println(_label+" "+(interval/1000)+" sec: "+totalops+" operations; "+d.format(curthroughput)+" current ops/sec; "+Measurements.getMeasurements().getSummary());
}
if (_standardstatus)
{
if (totalops==0)
{
System.out.println(_label+" "+(interval/1000)+" sec: "+totalops+" operations; "+Measurements.getMeasurements().getSummary());
}
else
{
System.out.println(_label+" "+(interval/1000)+" sec: "+totalops+" operations; "+d.format(curthroughput)+" current ops/sec; "+Measurements.getMeasurements().getSummary());
}
}
try
{
sleep(sleeptime);
}
catch (InterruptedException e)
{
//do nothing
}
}
while (!alldone);
}
}
/**
* A thread for executing transactions or data inserts to the database.
*
* @author cooperb
*
*/
class ClientThread extends Thread
{
static Random random=new Random();
DB _db;
boolean _dotransactions;
Workload _workload;
int _opcount;
double _target;
int _opsdone;
int _threadid;
int _threadcount;
Object _workloadstate;
Properties _props;
/**
* Constructor.
*
* @param db the DB implementation to use
* @param dotransactions true to do transactions, false to insert data
* @param workload the workload to use
* @param threadid the id of this thread
* @param threadcount the total number of threads
* @param props the properties defining the experiment
* @param opcount the number of operations (transactions or inserts) to do
* @param targetperthreadperms target number of operations per thread per ms
*/
public ClientThread(DB db, boolean dotransactions, Workload workload, int threadid, int threadcount, Properties props, int opcount, double targetperthreadperms)
{
//TODO: consider removing threadcount and threadid
_db=db;
_dotransactions=dotransactions;
_workload=workload;
_opcount=opcount;
_opsdone=0;
_target=targetperthreadperms;
_threadid=threadid;
_threadcount=threadcount;
_props=props;
//System.out.println("Interval = "+interval);
}
public int getOpsDone()
{
return _opsdone;
}
public void run()
{
try
{
_db.init();
}
catch (DBException e)
{
e.printStackTrace();
e.printStackTrace(System.out);
return;
}
try
{
_workloadstate=_workload.initThread(_props,_threadid,_threadcount);
}
catch (WorkloadException e)
{
e.printStackTrace();
e.printStackTrace(System.out);
return;
}
//spread the thread operations out so they don't all hit the DB at the same time
try
{
if (_target>0)
{
sleep(random.nextInt((int)(1.0/_target)));
}
}
catch (InterruptedException e)
{
//do nothing
}
try
{
if (_dotransactions)
{
long st=System.currentTimeMillis();
while ( (_opcount==0) || (_opsdone<_opcount) )
{
if (!_workload.doTransaction(_db,_workloadstate))
{
break;
}
_opsdone++;
//throttle the operations
if (_target>0)
{
//this is more accurate than other throttling approaches we have tried,
//like sleeping for (1/target throughput)-operation latency,
//because it smooths timing inaccuracies (from sleep() taking an int,
//current time in millis) over many operations
while (System.currentTimeMillis()-st<((double)_opsdone)/_target)
{
try
{
sleep(1);
}
catch (InterruptedException e)
{
//do nothing
}
}
}
}
}
else
{
long st=System.currentTimeMillis();
while ( (_opcount==0) || (_opsdone<_opcount) )
{
if (!_workload.doInsert(_db,_workloadstate))
{
break;
}
_opsdone++;
//throttle the operations
if (_target>0)
{
//this is more accurate than other throttling approaches we have tried,
//like sleeping for (1/target throughput)-operation latency,
//because it smooths timing inaccuracies (from sleep() taking an int,
//current time in millis) over many operations
while (System.currentTimeMillis()-st<((double)_opsdone)/_target)
{
try
{
sleep(1);
}
catch (InterruptedException e)
{
//do nothing
}
}
}
}
}
}
catch (Exception e)
{
e.printStackTrace();
e.printStackTrace(System.out);
System.exit(0);
}
try
{
_db.cleanup();
}
catch (DBException e)
{
e.printStackTrace();
e.printStackTrace(System.out);
return;
}
}
}
public class Client
{
public static final String OPERATION_COUNT_PROPERTY="operationcount";
public static final String RECORD_COUNT_PROPERTY="recordcount";
public static final String WORKLOAD_PROPERTY="workload";
/**
* Indicates how many inserts to do, if less than recordcount. Useful for partitioning
* the load among multiple servers, if the client is the bottleneck. Additionally, workloads
* should support the "insertstart" property, which tells them which record to start at.
*/
public static final String INSERT_COUNT_PROPERTY="insertcount";
public static void usageMessage()
{
System.out.println("Usage: java com.yahoo.ycsb.Client [options]");
System.out.println("Options:");
System.out.println(" -threads n: execute using n threads (default: 1) - can also be specified as the \n" +
" \"threadcount\" property using -p");
System.out.println(" -target n: attempt to do n operations per second (default: unlimited) - can also\n" +
" be specified as the \"target\" property using -p");
System.out.println(" -load: run the loading phase of the workload");
System.out.println(" -t: run the transactions phase of the workload (default)");
System.out.println(" -db dbname: specify the name of the DB to use (default: com.yahoo.ycsb.BasicDB) - \n" +
" can also be specified as the \"db\" property using -p");
System.out.println(" -P propertyfile: load properties from the given file. Multiple files can");
System.out.println(" be specified, and will be processed in the order specified");
System.out.println(" -p name=value: specify a property to be passed to the DB and workloads;");
System.out.println(" multiple properties can be specified, and override any");
System.out.println(" values in the propertyfile");
System.out.println(" -s: show status during run (default: no status)");
System.out.println(" -l label: use label for status (e.g. to label one experiment out of a whole batch)");
System.out.println("");
System.out.println("Required properties:");
System.out.println(" "+WORKLOAD_PROPERTY+": the name of the workload class to use (e.g. com.yahoo.ycsb.workloads.CoreWorkload)");
System.out.println("");
System.out.println("To run the transaction phase from multiple servers, start a separate client on each.");
System.out.println("To run the load phase from multiple servers, start a separate client on each; additionally,");
System.out.println("use the \"insertcount\" and \"insertstart\" properties to divide up the records to be inserted");
}
public static boolean checkRequiredProperties(Properties props)
{
if (props.getProperty(WORKLOAD_PROPERTY)==null)
{
System.out.println("Missing property: "+WORKLOAD_PROPERTY);
return false;
}
return true;
}
@SuppressWarnings("unchecked")
public static void main(String[] args)
{
String dbname;
Properties props=new Properties();
Properties fileprops=new Properties();
boolean dotransactions=true;
int threadcount=1;
int target=0;
PrintStream out=System.out;
boolean status=false;
String label="";
//parse arguments
int argindex=0;
if (args.length==0)
{
usageMessage();
System.exit(0);
}
while (args[argindex].startsWith("-"))
{
if (args[argindex].compareTo("-threads")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
int tcount=Integer.parseInt(args[argindex]);
props.setProperty("threadcount", tcount+"");
argindex++;
}
else if (args[argindex].compareTo("-target")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
int ttarget=Integer.parseInt(args[argindex]);
props.setProperty("target", ttarget+"");
argindex++;
}
else if (args[argindex].compareTo("-load")==0)
{
dotransactions=false;
argindex++;
}
else if (args[argindex].compareTo("-t")==0)
{
dotransactions=true;
argindex++;
}
else if (args[argindex].compareTo("-s")==0)
{
status=true;
argindex++;
}
else if (args[argindex].compareTo("-db")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
props.setProperty("db",args[argindex]);
argindex++;
}
else if (args[argindex].compareTo("-l")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
label=args[argindex];
argindex++;
}
else if (args[argindex].compareTo("-P")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
String propfile=args[argindex];
argindex++;
Properties myfileprops=new Properties();
try
{
myfileprops.load(new FileInputStream(propfile));
}
catch (IOException e)
{
System.out.println(e.getMessage());
System.exit(0);
}
for (String prop : myfileprops.stringPropertyNames())
{
fileprops.setProperty(prop,myfileprops.getProperty(prop));
}
}
else if (args[argindex].compareTo("-p")==0)
{
argindex++;
if (argindex>args.length)
{
usageMessage();
System.exit(0);
}
int eq=args[argindex].indexOf('=');
if (eq<0)
{
usageMessage();
System.exit(0);
}
String name=args[argindex].substring(0,eq);
String value=args[argindex].substring(eq+1);
props.put(name,value);
//System.out.println("["+name+"]=["+value+"]");
argindex++;
}
else
{
System.out.println("Unknown option "+args[argindex]);
usageMessage();
System.exit(0);
}
if (argindex>=args.length)
{
break;
}
}
if (argindex!=args.length)
{
usageMessage();
System.exit(0);
}
//set up logging
//BasicConfigurator.configure();
//overwrite file properties with properties from the command line
for (String prop : props.stringPropertyNames())
{
fileprops.setProperty(prop,props.getProperty(prop));
}
props=fileprops;
if (!checkRequiredProperties(props))
{
System.exit(0);
}
//get number of threads, target and db
threadcount=Integer.parseInt(props.getProperty("threadcount","1"));
dbname=props.getProperty("db","com.yahoo.ycsb.BasicDB");
target=Integer.parseInt(props.getProperty("target","0"));
//compute the target throughput
double targetperthreadperms=-1;
if (target>0)
{
double targetperthread=((double)target)/((double)threadcount);
targetperthreadperms=targetperthread/1000.0;
}
System.out.println("YCSB Client 0.1");
System.out.print("Command line:");
for (int i=0; i<args.length; i++)
{
System.out.print(" "+args[i]);
}
System.out.println();
System.err.println("Loading workload...");
//show a warning message that creating the workload is taking a while
//but only do so if it is taking longer than 2 seconds
//(showing the message right away if the setup wasn't taking very long was confusing people)
Thread warningthread=new Thread()
{
public void run()
{
try
{
sleep(2000);
}
catch (InterruptedException e)
{
return;
}
System.err.println(" (might take a few minutes for large data sets)");
}
};
warningthread.start();
//set up measurements
Measurements.setProperties(props);
//load the workload
ClassLoader classLoader = Client.class.getClassLoader();
Workload workload=null;
try
{
Class workloadclass = classLoader.loadClass(props.getProperty(WORKLOAD_PROPERTY));
workload=(Workload)workloadclass.newInstance();
}
catch (Exception e)
{
e.printStackTrace();
e.printStackTrace(System.out);
System.exit(0);
}
try
{
workload.init(props);
}
catch (WorkloadException e)
{
e.printStackTrace();
e.printStackTrace(System.out);
System.exit(0);
}
warningthread.interrupt();
//run the workload
System.err.println("Starting test.");
int opcount;
if (dotransactions)
{
opcount=Integer.parseInt(props.getProperty(OPERATION_COUNT_PROPERTY,"0"));
}
else
{
if (props.containsKey(INSERT_COUNT_PROPERTY))
{
opcount=Integer.parseInt(props.getProperty(INSERT_COUNT_PROPERTY,"0"));
}
else
{
opcount=Integer.parseInt(props.getProperty(RECORD_COUNT_PROPERTY,"0"));
}
}
Vector<Thread> threads=new Vector<Thread>();
for (int threadid=0; threadid<threadcount; threadid++)
{
DB db=null;
try
{
db=DBFactory.newDB(dbname,props);
}
catch (UnknownDBException e)
{
System.out.println("Unknown DB "+dbname);
System.exit(0);
}
Thread t=new ClientThread(db,dotransactions,workload,threadid,threadcount,props,opcount/threadcount,targetperthreadperms);
threads.add(t);
//t.start();
}
StatusThread statusthread=null;
if (status)
{
boolean standardstatus=false;
if (props.getProperty("measurementtype","").compareTo("timeseries")==0)
{
standardstatus=true;
}
statusthread=new StatusThread(threads,label,standardstatus);
statusthread.start();
}
long st=System.currentTimeMillis();
for (Thread t : threads)
{
t.start();
}
for (Thread t : threads)
{
try
{
t.join();
}
catch (InterruptedException e)
{
}
}
long en=System.currentTimeMillis();
if (status)
{
statusthread.interrupt();
}
try
{
workload.cleanup();
}
catch (WorkloadException e)
{
e.printStackTrace();
e.printStackTrace(System.out);
System.exit(0);
}
out.println("[OVERALL],RunTime(ms), "+(en-st));
double throughput=1000.0*((double)opcount)/((double)(en-st));
out.println("[OVERALL],Throughput(ops/sec), "+throughput);
Measurements.getMeasurements().printReport(out);
System.exit(0);
}
}

Просмотреть файл

@ -0,0 +1,49 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
/**
* Generates a sequence of integers 0, 1, ...
*/
public class CounterGenerator extends IntegerGenerator
{
int counter;
/**
* Create a counter that starts at countstart
*/
public CounterGenerator(int countstart)
{
counter=countstart;
setLastInt(countstart-1);
}
/**
* If the generator returns numeric (integer) values, return the next value as an int. Default is to return -1, which
* is appropriate for generators that do not return numeric values.
*/
public synchronized int nextInt()
{
int lastint=counter;
counter++;
setLastInt(lastint);
return lastint;
}
}

125
src/com/yahoo/ycsb/DB.java Normal file
Просмотреть файл

@ -0,0 +1,125 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.HashMap;
import java.util.Properties;
import java.util.Set;
import java.util.Vector;
/**
* A layer for accessing a database to be benchmarked. Each thread in the client
* will be given its own instance of whatever DB class is to be used in the test.
* This class should be constructed using a no-argument constructor, so we can
* load it dynamically. Any argument-based initialization should be
* done by init().
*/
public abstract class DB
{
/**
* Properties for configuring this DB.
*/
Properties _p=new Properties();
/**
* Set the properties for this DB.
*/
public void setProperties(Properties p)
{
_p=p;
}
/**
* Get the set of properties for this DB.
*/
public Properties getProperties()
{
return _p;
}
/**
* Initialize any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void init() throws DBException
{
}
/**
* Cleanup any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void cleanup() throws DBException
{
}
/**
* Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param key The record key of the record to read.
* @param fields The list of fields to read, or null for all of them
* @param result A HashMap of field/value pairs for the result
* @return Zero on success, a non-zero error code on error
*/
public abstract int read(String table, String key, Set<String> fields, HashMap<String,String> result);
/**
* Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param startkey The record key of the first record to read.
* @param recordcount The number of records to read
* @param fields The list of fields to read, or null for all of them
* @param result A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
* @return Zero on success, a non-zero error code on error
*/
public abstract int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result);
/**
* Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key, overwriting any existing values with the same field name.
*
* @param table The name of the table
* @param key The record key of the record to write.
* @param values A HashMap of field/value pairs to update in the record
* @return Zero on success, a non-zero error code on error
*/
public abstract int update(String table, String key, HashMap<String,String> values);
/**
* Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key.
*
* @param table The name of the table
* @param key The record key of the record to insert.
* @param values A HashMap of field/value pairs to insert in the record
* @return Zero on success, a non-zero error code on error
*/
public abstract int insert(String table, String key, HashMap<String,String> values);
/**
* Delete a record from the database.
*
* @param table The name of the table
* @param key The record key of the record to delete.
* @return Zero on success, a non-zero error code on error
*/
public abstract int delete(String table, String key);
}

Просмотреть файл

@ -0,0 +1,47 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class DBException extends Exception
{
/**
*
*/
private static final long serialVersionUID = 6646883591588721475L;
public DBException(String message)
{
super(message);
}
public DBException()
{
super();
}
public DBException(String message, Throwable cause)
{
super(message,cause);
}
public DBException(Throwable cause)
{
super(cause);
}
}

Просмотреть файл

@ -0,0 +1,65 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Properties;
public class DBFactory
{
@SuppressWarnings("unchecked")
public static DB newDB(String dbname, Properties properties) throws UnknownDBException
{
ClassLoader classLoader = DBFactory.class.getClassLoader();
DB ret=null;
try
{
Class dbclass = classLoader.loadClass(dbname);
//System.out.println("dbclass.getName() = " + dbclass.getName());
ret=(DB)dbclass.newInstance();
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
ret.setProperties(properties);
return new DBWrapper(ret);
/*
DB ret;
if (dbname.compareTo("BasicDB")==0)
{
ret=new BasicDB();
}
else
{
throw new UnknownDBException(dbname);
}
ret.setProperties(properties);
return ret;
*/
}
}

Просмотреть файл

@ -0,0 +1,166 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.HashMap;
import java.util.Properties;
import java.util.Set;
import java.util.Vector;
/**
* Wrapper around a "real" DB that measures latencies and counts return codes.
*/
public class DBWrapper extends DB
{
DB _db;
Measurements _measurements;
public DBWrapper(DB db)
{
_db=db;
_measurements=Measurements.getMeasurements();
}
/**
* Set the properties for this DB.
*/
public void setProperties(Properties p)
{
_db.setProperties(p);
}
/**
* Get the set of properties for this DB.
*/
public Properties getProperties()
{
return _db.getProperties();
}
/**
* Initialize any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void init() throws DBException
{
_db.init();
}
/**
* Cleanup any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void cleanup() throws DBException
{
_db.cleanup();
}
/**
* Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param key The record key of the record to read.
* @param fields The list of fields to read, or null for all of them
* @param result A HashMap of field/value pairs for the result
* @return Zero on success, a non-zero error code on error
*/
public int read(String table, String key, Set<String> fields, HashMap<String,String> result)
{
long st=System.currentTimeMillis();
int res=_db.read(table,key,fields,result);
long en=System.currentTimeMillis();
_measurements.measure("READ",(int)(en-st));
_measurements.reportReturnCode("READ",res);
return res;
}
/**
* Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param startkey The record key of the first record to read.
* @param recordcount The number of records to read
* @param fields The list of fields to read, or null for all of them
* @param result A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
* @return Zero on success, a non-zero error code on error
*/
public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result)
{
long st=System.currentTimeMillis();
int res=_db.scan(table,startkey,recordcount,fields,result);
long en=System.currentTimeMillis();
_measurements.measure("SCAN",(int)(en-st));
_measurements.reportReturnCode("SCAN",res);
return res;
}
/**
* Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key, overwriting any existing values with the same field name.
*
* @param table The name of the table
* @param key The record key of the record to write.
* @param values A HashMap of field/value pairs to update in the record
* @return Zero on success, a non-zero error code on error
*/
public int update(String table, String key, HashMap<String,String> values)
{
long st=System.currentTimeMillis();
int res=_db.update(table,key,values);
long en=System.currentTimeMillis();
_measurements.measure("UPDATE",(int)(en-st));
_measurements.reportReturnCode("UPDATE",res);
return res;
}
/**
* Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key.
*
* @param table The name of the table
* @param key The record key of the record to insert.
* @param values A HashMap of field/value pairs to insert in the record
* @return Zero on success, a non-zero error code on error
*/
public int insert(String table, String key, HashMap<String,String> values)
{
long st=System.currentTimeMillis();
int res=_db.insert(table,key,values);
long en=System.currentTimeMillis();
_measurements.measure("INSERT",(int)(en-st));
_measurements.reportReturnCode("INSERT",res);
return res;
}
/**
* Delete a record from the database.
*
* @param table The name of the table
* @param key The record key of the record to delete.
* @return Zero on success, a non-zero error code on error
*/
public int delete(String table, String key)
{
long st=System.currentTimeMillis();
int res=_db.delete(table,key);
long en=System.currentTimeMillis();
_measurements.measure("DELETE",(int)(en-st));
_measurements.reportReturnCode("DELETE",res);
return res;
}
}

Просмотреть файл

@ -0,0 +1,110 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Vector;
import java.util.Random;
public class DiscreteGenerator extends Generator
{
class Pair
{
public double _weight;
public String _value;
Pair(double weight, String value)
{
_weight=weight;
_value=value;
}
}
Vector<Pair> _values;
Random _random;
String _lastvalue;
public DiscreteGenerator()
{
_values=new Vector<Pair>();
_random=new Random();
_lastvalue=null;
}
/**
* Generate the next string in the distribution.
*/
public String nextString()
{
double sum=0;
for (Pair p : _values)
{
sum+=p._weight;
}
double val=_random.nextDouble();
for (Pair p : _values)
{
if (val<p._weight/sum)
{
return p._value;
}
val-=p._weight/sum;
}
//should never get here.
System.out.println("oops. should not get here.");
System.exit(0);
return null;
}
/**
* If the generator returns numeric (integer) values, return the next value as an int. Default is to return -1, which
* is appropriate for generators that do not return numeric values.
*
* @throws WorkloadException if this generator does not support integer values
*/
public int nextInt() throws WorkloadException
{
throw new WorkloadException("DiscreteGenerator does not support nextInt()");
}
/**
* Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
* Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
* been called, lastString() should return something reasonable.
*/
public String lastString()
{
if (_lastvalue==null)
{
_lastvalue=nextString();
}
return _lastvalue;
}
public void addValue(double weight, String value)
{
_values.add(new Pair(weight,value));
}
}

Просмотреть файл

@ -0,0 +1,131 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
public class FindGoodAB {
static final int[] scramblevector={251, 37, 147, 110, 233, 38, 225, 244, 17, 31, 231, 33, 249, 93, 229, 177, 47, 142, 55, 65, 106, 104, 178, 61, 182, 89, 222, 51, 108, 165, 100, 111, 113, 195, 197, 102, 35, 88, 9, 184, 128, 239, 240, 90, 92, 98, 78, 158, 219, 16, 112, 121, 13, 56, 236, 58, 82, 73, 167, 216, 224, 223, 14, 39, 175, 70, 203, 83, 50, 238, 139, 125, 211, 12, 141, 63, 237, 152, 135, 144, 48, 138, 213, 21, 97, 53, 245, 172, 166, 114, 194, 94, 198, 127, 191, 36, 148, 67, 30, 4, 71, 27, 221, 173, 72, 143, 80, 202, 181, 160, 159, 86, 201, 188, 59, 105, 25, 11, 57, 156, 24, 149, 183, 241, 18, 161, 124, 234, 176, 41, 133, 136, 122, 218, 10, 210, 45, 77, 116, 42, 206, 120, 29, 115, 180, 235, 81, 7, 163, 205, 22, 187, 107, 199, 32, 8, 227, 129, 19, 5, 190, 130, 209, 212, 243, 146, 99, 119, 169, 60, 68, 254, 52, 40, 255, 134, 96, 79, 192, 189, 101, 20, 226, 164, 2, 217, 207, 3, 91, 137, 252, 247, 117, 15, 118, 109, 230, 170, 44, 66, 200, 140, 84, 154, 215, 62, 196, 157, 153, 123, 150, 174, 208, 248, 145, 95, 1, 85, 193, 103, 204, 131, 186, 49, 168, 253, 132, 220, 242, 214, 162, 228, 74, 179, 232, 34, 75, 151, 246, 69, 23, 6, 126, 76, 0, 185, 46, 87, 64, 54, 26, 43, 28, 155, 171, 250};
static final int[] scramblevector2={35, 210, 27, 178, 218, 165, 145, 87, 10, 133, 134, 127, 92, 205, 96, 250, 136, 59, 84, 248, 19, 20, 147, 125, 89, 180, 246, 12, 137, 168, 142, 69, 130, 199, 150, 223, 0, 26, 14, 57, 155, 236, 204, 195, 66, 97, 56, 230, 159, 253, 229, 52, 182, 39, 189, 255, 44, 71, 139, 5, 3, 63, 121, 60, 135, 193, 8, 51, 49, 75, 76, 129, 6, 38, 33, 46, 80, 24, 103, 249, 251, 94, 32, 162, 161, 131, 225, 34, 149, 203, 211, 170, 93, 74, 109, 36, 45, 101, 124, 13, 65, 41, 128, 98, 148, 233, 112, 156, 85, 146, 81, 172, 219, 100, 240, 17, 18, 23, 202, 220, 239, 169, 68, 115, 143, 48, 47, 77, 58, 7, 241, 244, 173, 164, 151, 167, 70, 254, 181, 194, 191, 132, 227, 28, 158, 171, 30, 166, 72, 200, 64, 79, 163, 108, 104, 25, 42, 126, 153, 54, 11, 198, 119, 221, 187, 228, 120, 207, 122, 176, 222, 208, 16, 113, 102, 185, 116, 242, 86, 105, 234, 217, 157, 206, 154, 238, 174, 190, 209, 144, 37, 2, 9, 55, 15, 247, 83, 183, 188, 152, 50, 231, 43, 212, 184, 245, 232, 177, 214, 224, 111, 114, 243, 197, 235, 140, 21, 61, 29, 62, 40, 160, 186, 138, 118, 67, 196, 110, 237, 53, 82, 175, 107, 73, 213, 123, 95, 117, 192, 201, 215, 216, 78, 226, 91, 106, 141, 90, 4, 99, 252, 179, 88, 1, 22, 31};
static final int[] scramblevector3={208, 11, 56, 253, 167, 174, 228, 75, 251, 5, 227, 198, 57, 120, 103, 169, 218, 76, 24, 45, 170, 83, 55, 139, 40, 20, 87, 192, 21, 188, 200, 63, 13, 143, 99, 144, 96, 6, 36, 244, 176, 175, 59, 118, 67, 155, 195, 121, 77, 220, 101, 60, 235, 163, 212, 116, 78, 153, 216, 23, 219, 8, 138, 126, 136, 47, 217, 85, 247, 34, 50, 7, 252, 221, 64, 209, 22, 206, 110, 157, 249, 193, 199, 236, 30, 25, 89, 245, 182, 124, 154, 242, 43, 141, 80, 62, 201, 4, 51, 16, 254, 1, 186, 191, 86, 137, 100, 106, 91, 10, 215, 223, 95, 164, 129, 71, 246, 239, 127, 190, 39, 93, 119, 151, 210, 184, 28, 224, 202, 123, 72, 108, 146, 12, 27, 204, 73, 90, 179, 66, 84, 237, 65, 173, 158, 37, 105, 194, 178, 159, 230, 148, 35, 42, 131, 140, 15, 94, 250, 48, 180, 203, 166, 0, 88, 49, 171, 29, 122, 205, 111, 185, 107, 160, 189, 14, 98, 69, 46, 3, 31, 168, 241, 26, 225, 145, 156, 234, 243, 135, 214, 54, 109, 70, 248, 233, 161, 17, 222, 196, 183, 115, 41, 232, 213, 9, 134, 211, 58, 181, 113, 172, 132, 150, 79, 255, 114, 165, 152, 112, 33, 97, 44, 207, 147, 177, 197, 61, 2, 149, 82, 162, 38, 231, 92, 32, 128, 226, 52, 238, 125, 117, 68, 102, 142, 74, 53, 240, 19, 18, 187, 104, 229, 130, 133, 81};
static final int[][] scramblevectors={scramblevector,scramblevector2,scramblevector3};
static final int scrambles=3;
public static int scramble(int val)
{
int ret=0;
for (int s=0; s<scrambles; s++)
{
for (int i = 3; i >=0; i--)
{
int tval=val>>(8*i);
int octet=tval&0x00ff;
ret<<=8;
ret+=scramblevectors[s][octet];
}
}
return ret;
}
/*
public static int hash(int val, int itemcount)
{
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
int ret=val;
ret=Math.abs(Utils.scramble(ret));
return ret%itemcount;
}
*/
public static int a;
public static int b;
public static int hash(int val, int itemcount)
{
return Math.abs(val*a+b)%itemcount;
}
public static void main(String[] args)
{
int itemcount=100000;
int iterations=0;
Random r=new Random();
int bestcount=0;
int besta=0,bestb=0;
while (true)
{
a=r.nextInt();
b=r.nextInt();
int count=testVector(itemcount);
iterations++;
if (count>bestcount)
{
bestcount=count;
besta=a;
bestb=b;
}
if (iterations%1000==0)
{
System.out.println(bestcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"% a="+besta+" b="+bestb);
}
}
}
public static int testVector(int itemcount)
{
int[] countarray=new int[itemcount];
for (int i=0; i<itemcount; i++)
{
countarray[i]=0;
}
for (int i=0; i<itemcount; i++)
{
countarray[hash(i,itemcount)]++;
}
int count=0;
for (int i=0; i<itemcount; i++)
{
if (countarray[i]>0)
{
count++;
}
}
return count;
}
}

Просмотреть файл

@ -0,0 +1,146 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
public class FindGoodScrambleVector {
static Random r=new Random();
static final int permutations=2;
static final int scrambles=3;
static int[] scramblevector=null;
static int[] bestscramblevector=null;
static int bestcount=0;
public static int[] scrambleArray()
{
int[] arr=new int[256];
for (int i=0; i<256; i++)
{
arr[i]=i;
}
for (int p=0; p<permutations; p++)
{
for (int i=255; i>=1; i--)
{
int index=r.nextInt(256);
int swp=arr[i];
arr[i]=arr[index];
arr[index]=swp;
}
}
return arr;
}
public static int scramble(int val)
{
int ret=0;
for (int i = 3; i >=0; i--)
{
int tval=val>>(8*i);
int octet=tval&0x00ff;
ret<<=8;
ret+=scramblevector[octet];
}
return ret;
}
public static int hash(int val, int itemcount)
{
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
int ret=val;
for (int i=0; i<scrambles; i++)
{
ret=Math.abs(scramble(ret));
//ret=scramble(ret);
}
//ret=Math.abs(ret);
return ret%itemcount;
}
/**
* @param args
*/
public static void main(String[] args) {
int items=100000;
int iterations=0;
while (true)
{
scramblevector=scrambleArray();
//one iteration
int[] count=new int[items];
for (int i=0; i<items; i++)
{
count[i]=0;
}
for (int i=0; i<items; i++)
{
count[hash(i,items)]++;
}
int itemsleft=0;
for (int i=0; i<items; i++)
{
if (count[i]>0)
{
itemsleft++;
}
}
if (itemsleft>bestcount)
{
bestscramblevector=scramblevector;
bestcount=itemsleft;
}
iterations++;
if (iterations%1000==0)
{
System.out.println(iterations+". "+bestcount);
System.out.print(" ");
for (int i=0; i<256; i++)
{
System.out.print(bestscramblevector[i]+", ");
}
System.out.println();
}
}
}
}

Просмотреть файл

@ -0,0 +1,37 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
/**
* An expression that generates a sequence of string values, following some distribution (Uniform, Zipfian, Sequential, etc.)
*/
public abstract class Generator
{
/**
* Generate the next string in the distribution.
*/
public abstract String nextString();
/**
* Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
* Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
* been called, lastString() should return something reasonable.
*/
public abstract String lastString();
}

Просмотреть файл

@ -0,0 +1,70 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
/**
* A generator that is capable of generating ints as well as strings
*
* @author cooperb
*
*/
public abstract class IntegerGenerator extends Generator
{
int lastint;
/**
* Set the last value generated. IntegerGenerator subclasses must use this call
* to properly set the last string value, or the lastString() and lastInt() calls won't work.
*/
public void setLastInt(int last)
{
lastint=last;
}
/**
* Return the next value as an int. When overriding this method, be sure to call setLastString() properly, or the lastString() call won't work.
*/
public abstract int nextInt();
/**
* Generate the next string in the distribution.
*/
public String nextString()
{
return ""+nextInt();
}
/**
* Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
* Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
* been called, lastString() should return something reasonable.
*/
public String lastString()
{
return ""+lastint;
}
/**
* Return the previous int generated by the distribution. This call is unique to IntegerGenerator subclasses, and assumes
* IntegerGenerator subclasses always return ints for nextInt() (e.g. not arbitrary strings).
*/
public int lastInt()
{
return lastint;
}
}

Просмотреть файл

@ -0,0 +1,144 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.io.PrintStream;
import java.util.HashMap;
import java.util.Properties;
/**
* Collects latency measurements, and reports them when requested.
*
* @author cooperb
*
*/
public class Measurements
{
private static final String MEASUREMENT_TYPE = "measurementtype";
private static final String MEASUREMENT_TYPE_DEFAULT = "histogram";
static Measurements singleton=null;
static Properties measurementproperties=null;
public static void setProperties(Properties props)
{
measurementproperties=props;
}
public synchronized static Measurements getMeasurements()
{
if (singleton==null)
{
singleton=new Measurements(measurementproperties);
}
return singleton;
}
HashMap<String,OneMeasurement> data;
boolean histogram=true;
private Properties _props;
public Measurements(Properties props)
{
data=new HashMap<String,OneMeasurement>();
_props=props;
if (_props.getProperty(MEASUREMENT_TYPE, MEASUREMENT_TYPE_DEFAULT).compareTo("histogram")==0)
{
histogram=true;
}
else
{
histogram=false;
}
}
OneMeasurement constructOneMeasurement(String name)
{
if (histogram)
{
return new OneMeasurementHistogram(name,_props);
}
else
{
return new OneMeasurementTimeSeries(name,_props);
}
}
public synchronized void measure(String operation, int latency)
{
if (!data.containsKey(operation))
{
synchronized(this)
{
if (!data.containsKey(operation))
{
data.put(operation,constructOneMeasurement(operation));
}
}
}
try
{
data.get(operation).measure(latency);
}
catch (java.lang.ArrayIndexOutOfBoundsException e)
{
System.out.println("ERROR: java.lang.ArrayIndexOutOfBoundsException - ignoring and continuing");
e.printStackTrace();
e.printStackTrace(System.out);
}
}
public void reportReturnCode(String operation, int code)
{
if (!data.containsKey(operation))
{
synchronized(this)
{
if (!data.containsKey(operation))
{
data.put(operation,constructOneMeasurement(operation));
}
}
}
data.get(operation).reportReturnCode(code);
}
public void printReport(PrintStream out)
{
for (OneMeasurement m : data.values())
{
m.printReport(out);
}
}
public String getSummary()
{
String ret="";
for (OneMeasurement m : data.values())
{
ret+=m.getSummary()+" ";
}
return ret;
}
}

Просмотреть файл

@ -0,0 +1,44 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.io.PrintStream;
public abstract class OneMeasurement {
String _name;
public String getName() {
return _name;
}
/**
* @param _name
*/
public OneMeasurement(String _name) {
this._name = _name;
}
public abstract void reportReturnCode(int code);
public abstract void measure(int latency);
public abstract void printReport(PrintStream out);
public abstract String getSummary();
}

Просмотреть файл

@ -0,0 +1,164 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.io.PrintStream;
import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Properties;
/**
* Take measurements and maintain a histogram of latencies.
*
* @author cooperb
*
*/
public class OneMeasurementHistogram extends OneMeasurement
{
public static final String BUCKETS="histogram.buckets";
public static final String BUCKETS_DEFAULT="1000";
int _buckets;
int[] histogram;
int histogramoverflow;
int operations;
long totallatency;
//keep a windowed version of these stats for printing status
int windowoperations;
long windowtotallatency;
int min;
int max;
HashMap<Integer,int[]> returncodes;
public OneMeasurementHistogram(String name, Properties props)
{
super(name);
_buckets=Integer.parseInt(props.getProperty(BUCKETS, BUCKETS_DEFAULT));
histogram=new int[_buckets];
histogramoverflow=0;
operations=0;
totallatency=0;
windowoperations=0;
windowtotallatency=0;
min=-1;
max=-1;
returncodes=new HashMap<Integer,int[]>();
}
/* (non-Javadoc)
* @see com.yahoo.ycsb.OneMeasurement#reportReturnCode(int)
*/
public synchronized void reportReturnCode(int code)
{
Integer Icode=code;
if (!returncodes.containsKey(Icode))
{
int[] val=new int[1];
val[0]=0;
returncodes.put(Icode,val);
}
returncodes.get(Icode)[0]++;
}
/* (non-Javadoc)
* @see com.yahoo.ycsb.OneMeasurement#measure(int)
*/
public synchronized void measure(int latency)
{
if (latency>=_buckets)
{
histogramoverflow++;
}
else
{
histogram[latency]++;
}
operations++;
totallatency+=latency;
windowoperations++;
windowtotallatency+=latency;
if ( (min<0) || (latency<min) )
{
min=latency;
}
if ( (max<0) || (latency>max) )
{
max=latency;
}
}
/* (non-Javadoc)
* @see com.yahoo.ycsb.OneMeasurement#printReport(java.io.PrintStream)
*/
public void printReport(PrintStream out)
{
out.println("["+getName()+"], Operations, "+operations);
out.println("["+getName()+"], AverageLatency(ms), "+(((double)totallatency)/((double)operations)));
out.println("["+getName()+"], MinLatency(ms), "+min);
out.println("["+getName()+"], MaxLatency(ms), "+max);
int opcounter=0;
boolean done95th=false;
for (int i=0; i<_buckets; i++)
{
opcounter+=histogram[i];
if ( (!done95th) && (((double)opcounter)/((double)operations)>=0.95) )
{
out.println("["+getName()+"], 95thPercentileLatency(ms), "+i);
done95th=true;
}
if (((double)opcounter)/((double)operations)>=0.99)
{
out.println("["+getName()+"], 99thPercentileLatency(ms), "+i);
break;
}
}
for (Integer I : returncodes.keySet())
{
int[] val=returncodes.get(I);
out.println("["+getName()+"], Return="+I+", "+val[0]);
}
for (int i=0; i<_buckets; i++)
{
out.println("["+getName()+"], "+i+", "+histogram[i]);
}
out.println("["+getName()+"], >"+_buckets+", "+histogramoverflow);
}
@Override
public String getSummary() {
if (windowoperations==0)
{
return "";
}
DecimalFormat d = new DecimalFormat("#.##");
double report=((double)windowtotallatency)/((double)windowoperations);
windowtotallatency=0;
windowoperations=0;
return "["+getName()+" AverageLatency(ms)="+d.format(report)+"]";
}
}

Просмотреть файл

@ -0,0 +1,172 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.io.PrintStream;
import java.text.DecimalFormat;
import java.util.HashMap;
import java.util.Properties;
import java.util.Vector;
class SeriesUnit
{
/**
* @param time
* @param average
*/
public SeriesUnit(long time, double average) {
this.time = time;
this.average = average;
}
public long time;
public double average;
}
public class OneMeasurementTimeSeries extends OneMeasurement
{
/**
* Granularity for time series; measurements will be averaged in chunks of this granularity. Units are milliseconds.
*/
public static final String GRANULARITY="timeseries.granularity";
public static final String GRANULARITY_DEFAULT="1000";
int _granularity;
Vector<SeriesUnit> _measurements;
long start=-1;
long currentunit=-1;
int count=0;
int sum=0;
int operations=0;
long totallatency=0;
//keep a windowed version of these stats for printing status
int windowoperations=0;
long windowtotallatency=0;
int min=-1;
int max=-1;
private HashMap<Integer, int[]> returncodes;
public OneMeasurementTimeSeries(String name, Properties props)
{
super(name);
_granularity=Integer.parseInt(props.getProperty(GRANULARITY,GRANULARITY_DEFAULT));
_measurements=new Vector<SeriesUnit>();
returncodes=new HashMap<Integer,int[]>();
}
void checkEndOfUnit(boolean forceend)
{
long now=System.currentTimeMillis();
if (start<0)
{
currentunit=0;
start=now;
}
long unit=((now-start)/_granularity)*_granularity;
if ( (unit>currentunit) || (forceend) )
{
double avg=((double)sum)/((double)count);
_measurements.add(new SeriesUnit(currentunit,avg));
currentunit=unit;
count=0;
sum=0;
}
}
@Override
public void measure(int latency)
{
checkEndOfUnit(false);
count++;
sum+=latency;
totallatency+=latency;
operations++;
windowoperations++;
windowtotallatency+=latency;
if (latency>max)
{
max=latency;
}
if ( (latency<min) || (min<0) )
{
min=latency;
}
}
@Override
public void printReport(PrintStream out) {
checkEndOfUnit(true);
out.println("["+getName()+"], Operations, "+operations);
out.println("["+getName()+"], AverageLatency(ms), "+(((double)totallatency)/((double)operations)));
out.println("["+getName()+"], MinLatency(ms), "+min);
out.println("["+getName()+"], MaxLatency(ms), "+max);
//TODO: 95th and 99th percentile latency
for (Integer I : returncodes.keySet())
{
int[] val=returncodes.get(I);
out.println("["+getName()+"], Return="+I+", "+val[0]);
}
for (SeriesUnit unit : _measurements)
{
out.println("["+getName()+"], "+unit.time+", "+unit.average);
}
}
@Override
public void reportReturnCode(int code) {
Integer Icode=code;
if (!returncodes.containsKey(Icode))
{
int[] val=new int[1];
val[0]=0;
returncodes.put(Icode,val);
}
returncodes.get(Icode)[0]++;
}
@Override
public String getSummary() {
if (windowoperations==0)
{
return "";
}
DecimalFormat d = new DecimalFormat("#.##");
double report=((double)windowtotallatency)/((double)windowoperations);
windowtotallatency=0;
windowoperations=0;
return "["+getName()+" AverageLatency(ms)="+d.format(report)+"]";
}
}

Просмотреть файл

@ -0,0 +1,117 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
/**
* A generator of a zipfian distribution. It produces a sequence of items, such that some items are more popular than others, according
* to a zipfian distribution. When you construct an instance of this class, you specify the number of items in the set to draw from, either
* by specifying an itemcount (so that the sequence is of items from 0 to itemcount-1) or by specifying a min and a max (so that the sequence is of
* items from min to max inclusive). After you construct the instance, you can change the number of items by calling nextInt(itemcount) or nextLong(itemcount).
*
* Unlike @ZipfianGenerator, this class scatters the "popular" items across the itemspace. Use this, instead of @ZipfianGenerator, if you
* don't want the head of the distribution (the popular items) clustered together.
*/
public class ScrambledZipfianGenerator extends IntegerGenerator
{
public static final double ZETAN=52.93805640344461;
public static final long ITEM_COUNT=10000000000L;
ZipfianGenerator gen;
long _min,_max,_itemcount;
/******************************* Constructors **************************************/
/**
* Create a zipfian generator for the specified number of items.
* @param _items The number of items in the distribution.
*/
public ScrambledZipfianGenerator(long _items)
{
this(0,_items-1);
}
/**
* Create a zipfian generator for items between min and max.
* @param min The smallest integer to generate in the sequence.
* @param max The largest integer to generate in the sequence.
*/
public ScrambledZipfianGenerator(long _min, long _max)
{
this(_min,_max,ZipfianGenerator.ZIPFIAN_CONSTANT);
}
/**
* Create a zipfian generator for the specified number of items using the specified zipfian constant.
*
* @param _items The number of items in the distribution.
* @param _zipfianconstant The zipfian constant to use.
*/
/*
// not supported, as the value of zeta depends on the zipfian constant, and we have only precomputed zeta for one zipfian constant
public ScrambledZipfianGenerator(long _items, double _zipfianconstant)
{
this(0,_items-1,_zipfianconstant);
}
*/
/**
* Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant.
* @param min The smallest integer to generate in the sequence.
* @param max The largest integer to generate in the sequence.
* @param _zipfianconstant The zipfian constant to use.
*/
ScrambledZipfianGenerator(long min, long max, double _zipfianconstant)
{
//not public as we only support one value of zipfianconstant for which we have precomputed zeta
_min=min;
_max=max;
_itemcount=_max-_min+1;
gen=new ZipfianGenerator(0,ITEM_COUNT,_zipfianconstant,ZETAN);
}
/**************************************************************************************************/
/**
* Return the next int in the sequence.
*/
@Override
public int nextInt() {
return (int)nextLong();
}
/**
* Return the next long in the sequence.
*/
public long nextLong()
{
long ret=gen.nextLong();
ret=_min+Utils.FNVhash64(ret)%_itemcount;
setLastInt((int)ret);
return ret;
}
public static void main(String[] args)
{
ScrambledZipfianGenerator gen=new ScrambledZipfianGenerator(10000);
for (int i=0; i<1000000; i++)
{
System.out.println(""+gen.nextInt());
}
}
}

Просмотреть файл

@ -0,0 +1,53 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class SkewedLatestGenerator extends IntegerGenerator
{
CounterGenerator _basis;
ZipfianGenerator _zipfian;
public SkewedLatestGenerator(CounterGenerator basis)
{
_basis=basis;
_zipfian=new ZipfianGenerator(Integer.parseInt(_basis.lastString()));
nextInt();
}
/**
* Generate the next string in the distribution, skewed Zipfian favoring the items most recently returned by the basis generator.
*/
public int nextInt()
{
int max=Integer.parseInt(_basis.lastString());
int nextint=max-_zipfian.nextInt(max);
setLastInt(nextint);
return nextint;
}
public static void main(String[] args)
{
SkewedLatestGenerator gen=new SkewedLatestGenerator(new CounterGenerator(1000));
for (int i=0; i<Integer.parseInt(args[0]); i++)
{
System.out.println(gen.nextString());
}
}
}

Просмотреть файл

@ -0,0 +1,142 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
public class TestCollisions {
static final int[] scramblevector={251, 37, 147, 110, 233, 38, 225, 244, 17, 31, 231, 33, 249, 93, 229, 177, 47, 142, 55, 65, 106, 104, 178, 61, 182, 89, 222, 51, 108, 165, 100, 111, 113, 195, 197, 102, 35, 88, 9, 184, 128, 239, 240, 90, 92, 98, 78, 158, 219, 16, 112, 121, 13, 56, 236, 58, 82, 73, 167, 216, 224, 223, 14, 39, 175, 70, 203, 83, 50, 238, 139, 125, 211, 12, 141, 63, 237, 152, 135, 144, 48, 138, 213, 21, 97, 53, 245, 172, 166, 114, 194, 94, 198, 127, 191, 36, 148, 67, 30, 4, 71, 27, 221, 173, 72, 143, 80, 202, 181, 160, 159, 86, 201, 188, 59, 105, 25, 11, 57, 156, 24, 149, 183, 241, 18, 161, 124, 234, 176, 41, 133, 136, 122, 218, 10, 210, 45, 77, 116, 42, 206, 120, 29, 115, 180, 235, 81, 7, 163, 205, 22, 187, 107, 199, 32, 8, 227, 129, 19, 5, 190, 130, 209, 212, 243, 146, 99, 119, 169, 60, 68, 254, 52, 40, 255, 134, 96, 79, 192, 189, 101, 20, 226, 164, 2, 217, 207, 3, 91, 137, 252, 247, 117, 15, 118, 109, 230, 170, 44, 66, 200, 140, 84, 154, 215, 62, 196, 157, 153, 123, 150, 174, 208, 248, 145, 95, 1, 85, 193, 103, 204, 131, 186, 49, 168, 253, 132, 220, 242, 214, 162, 228, 74, 179, 232, 34, 75, 151, 246, 69, 23, 6, 126, 76, 0, 185, 46, 87, 64, 54, 26, 43, 28, 155, 171, 250};
static final int[] scramblevector2={35, 210, 27, 178, 218, 165, 145, 87, 10, 133, 134, 127, 92, 205, 96, 250, 136, 59, 84, 248, 19, 20, 147, 125, 89, 180, 246, 12, 137, 168, 142, 69, 130, 199, 150, 223, 0, 26, 14, 57, 155, 236, 204, 195, 66, 97, 56, 230, 159, 253, 229, 52, 182, 39, 189, 255, 44, 71, 139, 5, 3, 63, 121, 60, 135, 193, 8, 51, 49, 75, 76, 129, 6, 38, 33, 46, 80, 24, 103, 249, 251, 94, 32, 162, 161, 131, 225, 34, 149, 203, 211, 170, 93, 74, 109, 36, 45, 101, 124, 13, 65, 41, 128, 98, 148, 233, 112, 156, 85, 146, 81, 172, 219, 100, 240, 17, 18, 23, 202, 220, 239, 169, 68, 115, 143, 48, 47, 77, 58, 7, 241, 244, 173, 164, 151, 167, 70, 254, 181, 194, 191, 132, 227, 28, 158, 171, 30, 166, 72, 200, 64, 79, 163, 108, 104, 25, 42, 126, 153, 54, 11, 198, 119, 221, 187, 228, 120, 207, 122, 176, 222, 208, 16, 113, 102, 185, 116, 242, 86, 105, 234, 217, 157, 206, 154, 238, 174, 190, 209, 144, 37, 2, 9, 55, 15, 247, 83, 183, 188, 152, 50, 231, 43, 212, 184, 245, 232, 177, 214, 224, 111, 114, 243, 197, 235, 140, 21, 61, 29, 62, 40, 160, 186, 138, 118, 67, 196, 110, 237, 53, 82, 175, 107, 73, 213, 123, 95, 117, 192, 201, 215, 216, 78, 226, 91, 106, 141, 90, 4, 99, 252, 179, 88, 1, 22, 31};
static final int[] scramblevector3={208, 11, 56, 253, 167, 174, 228, 75, 251, 5, 227, 198, 57, 120, 103, 169, 218, 76, 24, 45, 170, 83, 55, 139, 40, 20, 87, 192, 21, 188, 200, 63, 13, 143, 99, 144, 96, 6, 36, 244, 176, 175, 59, 118, 67, 155, 195, 121, 77, 220, 101, 60, 235, 163, 212, 116, 78, 153, 216, 23, 219, 8, 138, 126, 136, 47, 217, 85, 247, 34, 50, 7, 252, 221, 64, 209, 22, 206, 110, 157, 249, 193, 199, 236, 30, 25, 89, 245, 182, 124, 154, 242, 43, 141, 80, 62, 201, 4, 51, 16, 254, 1, 186, 191, 86, 137, 100, 106, 91, 10, 215, 223, 95, 164, 129, 71, 246, 239, 127, 190, 39, 93, 119, 151, 210, 184, 28, 224, 202, 123, 72, 108, 146, 12, 27, 204, 73, 90, 179, 66, 84, 237, 65, 173, 158, 37, 105, 194, 178, 159, 230, 148, 35, 42, 131, 140, 15, 94, 250, 48, 180, 203, 166, 0, 88, 49, 171, 29, 122, 205, 111, 185, 107, 160, 189, 14, 98, 69, 46, 3, 31, 168, 241, 26, 225, 145, 156, 234, 243, 135, 214, 54, 109, 70, 248, 233, 161, 17, 222, 196, 183, 115, 41, 232, 213, 9, 134, 211, 58, 181, 113, 172, 132, 150, 79, 255, 114, 165, 152, 112, 33, 97, 44, 207, 147, 177, 197, 61, 2, 149, 82, 162, 38, 231, 92, 32, 128, 226, 52, 238, 125, 117, 68, 102, 142, 74, 53, 240, 19, 18, 187, 104, 229, 130, 133, 81};
static final int[][] scramblevectors={scramblevector,scramblevector2,scramblevector3};
static final int scrambles=3;
public static int scramble(int val)
{
int ret=0;
for (int s=0; s<scrambles; s++)
{
for (int i = 3; i >=0; i--)
{
int tval=val>>(8*i);
int octet=tval&0x00ff;
ret<<=8;
ret+=scramblevectors[s][octet];
}
}
return ret;
}
/*
public static int hash(int val, int itemcount)
{
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
//return Math.abs(Utils.scramble(Utils.scramble(val)))%itemcount;
int ret=val;
ret=Math.abs(Utils.scramble(ret));
return ret%itemcount;
}
*/
public static int a=787690635;
public static int b=-1147376859;
public static int hash(int val, int itemcount)
{
return Math.abs((val*a+b)%itemcount);
}
public static void main(String[] args)
{
Random r=new Random();
for (int itemcount=1000000; itemcount<500000000; itemcount+=1000000)
{
int bestcount=0;
int besta=0;
int bestb=0;
int iterations=0;
while (true)
{
a=r.nextInt(itemcount);
b=r.nextInt(itemcount);
int count=testVector(itemcount);
if (count>bestcount)
{
bestcount=count;
besta=a;
bestb=b;
}
iterations++;
if (iterations%1000==0)
{
System.err.println(" "+itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
}
if (((double)bestcount)/((double)itemcount)>0.9)
{
break;
}
}
System.err.println(itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
System.out.println(itemcount+" - "+(100.0*((double)bestcount)/((double)itemcount))+"(a="+besta+", b="+bestb+")");
}
}
public static int testVector(int itemcount)
{
int[] countarray=new int[itemcount];
for (int i=0; i<itemcount; i++)
{
countarray[i]=0;
}
for (int i=0; i<itemcount; i++)
{
countarray[hash(i,itemcount)]++;
}
int count=0;
for (int i=0; i<itemcount; i++)
{
if (countarray[i]>0)
{
count++;
}
}
/*
for (int i=0; i<itemcount; i++)
{
System.out.println(i+", "+hash(i,itemcount));
}
*/
return count;
}
}

Просмотреть файл

@ -0,0 +1,63 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class TestExpandedZipfian {
public static void main(String[] args) {
int itemcount=10000000;
int scalefactor=10;
int opcount=itemcount*100;
System.err.println("Initializing...");
ZipfianGenerator gen=new ZipfianGenerator(itemcount*scalefactor);
System.err.println("Running...");
int[] count=new int[itemcount];
for (int i=0; i<itemcount; i++)
{
count[i]=0;
}
for (int i=0; i<opcount; i++)
{
if (i%1000000==0)
{
System.err.println(" "+i+" operations");
}
int pick=Utils.hash(gen.nextInt())%itemcount;
count[pick]++;
}
int hits=0;
for (int i=0; i<itemcount; i++)
{
if (count[i]>0)
{
hits++;
}
System.out.println(count[i]+", "+i);
}
System.err.println(hits+", "+(100.0*((double)hits)/((double)itemcount))+" %");
}
}

Просмотреть файл

@ -0,0 +1,79 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class TestZipfian {
public static void main(String[] args) {
int itemcount=100000;
int operationcount=10000000;
IntegerGenerator gen=new ZipfianGenerator(itemcount);
int[] counter=new int[itemcount];
for (int i=0; i<itemcount; i++)
{
counter[i]=0;
}
for (int i=0; i<operationcount; i++)
{
counter[gen.nextInt()]++;
}
for (int i=0; i<itemcount; i++)
{
System.out.println(i+", "+counter[i]);
}
/*
int maxcount=0;
for (int i=0; i<itemcount; i++)
{
if (counter[i]>maxcount)
{
maxcount=counter[i];
}
}
int[] buckets=new int[maxcount+1];
for (int i=0; i<maxcount+1; i++)
{
buckets[i]=0;
}
for (int i=0; i<itemcount; i++)
{
buckets[counter[i]]++;
}
for (int i=0; i<maxcount+1; i++)
{
if (buckets[i]>0)
{
System.out.println(i+", "+buckets[i]);
}
}
*/
}
}

Просмотреть файл

@ -0,0 +1,67 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Vector;
/**
* An expression that generates a random integer in the specified range
*/
public class UniformGenerator extends Generator
{
Vector<String> _values;
String _laststring;
UniformIntegerGenerator _gen;
/**
* Creates a generator that will return strings from the specified set uniformly randomly
*/
@SuppressWarnings( "unchecked" )
public UniformGenerator(Vector<String> values)
{
_values=(Vector<String>)values.clone();
_laststring=null;
_gen=new UniformIntegerGenerator(0,values.size()-1);
}
/**
* Generate the next string in the distribution.
*/
public String nextString()
{
_laststring=_values.elementAt(_gen.nextInt());
return _laststring;
}
/**
* Return the previous string generated by the distribution; e.g., returned from the last nextString() call.
* Calling lastString() should not advance the distribution or have any side effects. If nextString() has not yet
* been called, lastString() should return something reasonable.
*/
public String lastString()
{
if (_laststring==null)
{
nextString();
}
return _laststring;
}
}

Просмотреть файл

@ -0,0 +1,50 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
public class UniformIntegerGenerator extends IntegerGenerator
{
Random _random;
int _lb,_ub,_interval;
/**
* Creates a generator that will return integers uniformly randomly from the interval [lb,ub] inclusive (that is, lb and ub are possible values)
*
* @param lb the lower bound (inclusive) of generated values
* @param ub the upper bound (inclusive) of generated values
*/
public UniformIntegerGenerator(int lb, int ub)
{
_random=new Random();
_lb=lb;
_ub=ub;
_interval=_ub-_lb+1;
}
@Override
public int nextInt()
{
int ret=_random.nextInt(_interval)+_lb;
setLastInt(ret);
return ret;
}
}

Просмотреть файл

@ -0,0 +1,47 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class UnknownDBException extends Exception
{
/**
*
*/
private static final long serialVersionUID = 459099842269616836L;
public UnknownDBException(String message)
{
super(message);
}
public UnknownDBException()
{
super();
}
public UnknownDBException(String message, Throwable cause)
{
super(message,cause);
}
public UnknownDBException(Throwable cause)
{
super(cause);
}
}

Просмотреть файл

@ -0,0 +1,116 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
public class Utils
{
static Random random=new Random();
public static String ASCIIString(int length)
{
int interval='~'-' '+1;
StringBuilder str=new StringBuilder();
for (int i=0; i<length; i++)
{
char c=(char)(random.nextInt(interval)+' ');
str.append(c);
}
return str.toString();
}
public static int hash(int val)
{
//return JenkinsHash(val);
return FNVhash32(val);
}
public static int JenkinsHash(int val)
{
//from http://en.wikipedia.org/wiki/Jenkins_hash_function
int hash = 0;
for (int i = 0; i < 4; i++) {
int octet=val&0x00ff;
val=val>>8;
hash += octet;
hash += (hash << 10);
hash ^= (hash >> 6);
}
hash += (hash << 3);
hash ^= (hash >> 11);
hash += (hash << 15);
return Math.abs(hash);
}
public static final int FNV_offset_basis_32=0x811c9dc5;
public static final int FNV_prime_32=16777619;
/**
* 32 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
*
* @param val The value to hash.
* @return
*/
public static int FNVhash32(int val)
{
//from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
int hashval = FNV_offset_basis_32;
for (int i=0; i<4; i++)
{
int octet=val&0x00ff;
val=val>>8;
hashval = hashval ^ octet;
hashval = hashval * FNV_prime_32;
//hashval = hashval ^ octet;
}
return Math.abs(hashval);
}
public static final long FNV_offset_basis_64=0xCBF29CE484222325L;
public static final long FNV_prime_64=1099511628211L;
/**
* 64 bit FNV hash. Produces more "random" hashes than (say) String.hashCode().
*
* @param val The value to hash.
* @return
*/
public static long FNVhash64(long val)
{
//from http://en.wikipedia.org/wiki/Fowler_Noll_Vo_hash
long hashval = FNV_offset_basis_64;
for (int i=0; i<8; i++)
{
long octet=val&0x00ff;
val=val>>8;
hashval = hashval ^ octet;
hashval = hashval * FNV_prime_64;
//hashval = hashval ^ octet;
}
return Math.abs(hashval);
}
}

Просмотреть файл

@ -0,0 +1,93 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Properties;
/**
* One experiment scenario. One object of this type will
* be instantiated and shared among all client threads. This class
* should be constructed using a no-argument constructor, so we can
* load it dynamically. Any argument-based initialization should be
* done by init().
*
* If you extend this class, you should support the "insertstart" property. This
* allows the load phase to proceed from multiple clients on different machines, in case
* the client is the bottleneck. For example, if we want to load 1 million records from
* 2 machines, the first machine should have insertstart=0 and the second insertstart=500000. Additionally,
* the "insertcount" property, which is interpreted by Client, can be used to tell each instance of the
* client how many inserts to do. In the example above, both clients should have insertcount=500000.
*/
public abstract class Workload
{
public static final String INSERT_START_PROPERTY="insertstart";
public static final String INSERT_START_PROPERTY_DEFAULT="0";
/**
* Initialize the scenario. Create any generators and other shared objects here.
* Called once, in the main client thread, before any operations are started.
*/
public void init(Properties p) throws WorkloadException
{
}
/**
* Initialize any state for a particular client thread. Since the scenario object
* will be shared among all threads, this is the place to create any state that is specific
* to one thread. To be clear, this means the returned object should be created anew on each
* call to initThread(); do not return the same object multiple times.
* The returned object will be passed to invocations of doInsert() and doTransaction()
* for this thread. There should be no side effects from this call; all state should be encapsulated
* in the returned object. If you have no state to retain for this thread, return null. (But if you have
* no state to retain for this thread, probably you don't need to override initThread().)
*
* @return false if the workload knows it is done for this thread. Client will terminate the thread. Return true otherwise. Return true for workloads that rely on operationcount. For workloads that read traces from a file, return true when there are more to do, false when you are done.
*/
public Object initThread(Properties p, int mythreadid, int threadcount) throws WorkloadException
{
return null;
}
/**
* Cleanup the scenario. Called once, in the main client thread, after all operations have completed.
*/
public void cleanup() throws WorkloadException
{
}
/**
* Do one insert operation. Because it will be called concurrently from multiple client threads, this
* function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
* other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
* effects other than DB operations and mutations on threadstate. Mutations to threadstate do not need to be
* synchronized, since each thread has its own threadstate instance.
*/
public abstract boolean doInsert(DB db, Object threadstate);
/**
* Do one transaction operation. Because it will be called concurrently from multiple client threads, this
* function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
* other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
* effects other than DB operations and mutations on threadstate. Mutations to threadstate do not need to be
* synchronized, since each thread has its own threadstate instance.
*
* @return false if the workload knows it is done for this thread. Client will terminate the thread. Return true otherwise. Return true for workloads that rely on operationcount. For workloads that read traces from a file, return true when there are more to do, false when you are done.
*/
public abstract boolean doTransaction(DB db, Object threadstate);
}

Просмотреть файл

@ -0,0 +1,47 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
public class WorkloadException extends Exception
{
/**
*
*/
private static final long serialVersionUID = 8844396756042772132L;
public WorkloadException(String message)
{
super(message);
}
public WorkloadException()
{
super();
}
public WorkloadException(String message, Throwable cause)
{
super(message,cause);
}
public WorkloadException(Throwable cause)
{
super(cause);
}
}

Просмотреть файл

@ -0,0 +1,317 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb;
import java.util.Random;
/**
* A generator of a zipfian distribution. It produces a sequence of items, such that some items are more popular than others, according
* to a zipfian distribution. When you construct an instance of this class, you specify the number of items in the set to draw from, either
* by specifying an itemcount (so that the sequence is of items from 0 to itemcount-1) or by specifying a min and a max (so that the sequence is of
* items from min to max inclusive). After you construct the instance, you can change the number of items by calling nextInt(itemcount) or nextLong(itemcount).
*
* Note that the popular items will be clustered together, e.g. item 0 is the most popular, item 1 the second most popular, and so on (or min is the most
* popular, min+1 the next most popular, etc.) If you don't want this clustering, and instead want the popular items scattered throughout the
* item space, then use ScrambledZipfianGenerator instead.
*
* Be aware: initializing this generator may take a long time if there are lots of items to choose from (e.g. over a minute
* for 100 million objects). This is because certain mathematical values need to be computed to properly generate a zipfian skew, and one of those
* values (zeta) is a sum sequence from 1 to n, where n is the itemcount. Note that if you increase the number of items in the set, we can compute
* a new zeta incrementally, so it should be fast unless you have added millions of items. However, if you decrease the number of items, we recompute
* zeta from scratch, so this can take a long time.
*/
public class ZipfianGenerator extends IntegerGenerator
{
public static final double ZIPFIAN_CONSTANT=0.99;
/**
* Number of items.
*/
long items;
/**
* Min item to generate.
*/
long base;
/**
* The zipfian constant to use.
*/
double zipfianconstant;
/**
* Computed parameters for generating the distribution.
*/
double alpha,zetan,eta,theta,zeta2theta;
Random random;
/**
* The number of items used to compute zetan the last time.
*/
long countforzeta;
/**
* Flag to prevent problems. If you increase the number of items the zipfian generator is allowed to choose from, this code will incrementally compute a new zeta
* value for the larger itemcount. However, if you decrease the number of items, the code computes zeta from scratch; this is expensive for large itemsets.
* Usually this is not intentional; e.g. one thread thinks the number of items is 1001 and calls "nextLong()" with that item count; then another thread who thinks the
* number of items is 1000 calls nextLong() with itemcount=1000 triggering the expensive recomputation. (It is expensive for 100 million items, not really for 1000 items.) Why
* did the second thread think there were only 1000 items? maybe it read the item count before the first thread incremented it. So this flag allows you to say if you really do
* want that recomputation. If true, then the code will recompute zeta if the itemcount goes down. If false, the code will assume itemcount only goes up, and never recompute.
*/
boolean allowitemcountdecrease=false;
/******************************* Constructors **************************************/
/**
* Create a zipfian generator for the specified number of items.
* @param _items The number of items in the distribution.
*/
public ZipfianGenerator(long _items)
{
this(0,_items-1);
}
/**
* Create a zipfian generator for items between min and max.
* @param min The smallest integer to generate in the sequence.
* @param max The largest integer to generate in the sequence.
*/
public ZipfianGenerator(long _min, long _max)
{
this(_min,_max,ZIPFIAN_CONSTANT);
}
/**
* Create a zipfian generator for the specified number of items using the specified zipfian constant.
*
* @param _items The number of items in the distribution.
* @param _zipfianconstant The zipfian constant to use.
*/
public ZipfianGenerator(long _items, double _zipfianconstant)
{
this(0,_items-1,_zipfianconstant);
}
/**
* Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant.
* @param min The smallest integer to generate in the sequence.
* @param max The largest integer to generate in the sequence.
* @param _zipfianconstant The zipfian constant to use.
*/
public ZipfianGenerator(long min, long max, double _zipfianconstant)
{
this(min,max,_zipfianconstant,zetastatic(max-min+1,_zipfianconstant));
}
/**
* Create a zipfian generator for items between min and max (inclusive) for the specified zipfian constant, using the precomputed value of zeta.
*
* @param min The smallest integer to generate in the sequence.
* @param max The largest integer to generate in the sequence.
* @param _zipfianconstant The zipfian constant to use.
* @param _zetan The precomputed zeta constant.
*/
public ZipfianGenerator(long min, long max, double _zipfianconstant, double _zetan)
{
items=max-min+1;
base=min;
zipfianconstant=_zipfianconstant;
random=new Random();
theta=zipfianconstant;
zeta2theta=zeta(2,theta);
alpha=1.0/(1.0-theta);
//zetan=zeta(items,theta);
zetan=_zetan;
countforzeta=items;
eta=(1-Math.pow(2.0/items,1-theta))/(1-zeta2theta/zetan);
//System.out.println("XXXX 3 XXXX");
nextInt();
//System.out.println("XXXX 4 XXXX");
}
/**************************************************************************/
/**
* Compute the zeta constant needed for the distribution. Do this from scratch for a distribution with n items, using the
* zipfian constant theta. Remember the value of n, so if we change the itemcount, we can recompute zeta.
*
* @param n The number of items to compute zeta over.
* @param theta The zipfian constant.
*/
double zeta(long n, double theta)
{
countforzeta=n;
return zetastatic(n,theta);
}
/**
* Compute the zeta constant needed for the distribution. Do this from scratch for a distribution with n items, using the
* zipfian constant theta. This is a static version of the function which will not remember n.
* @param n The number of items to compute zeta over.
* @param theta The zipfian constant.
*/
static double zetastatic(long n, double theta)
{
return zetastatic(0,n,theta,0);
}
/**
* Compute the zeta constant needed for the distribution. Do this incrementally for a distribution that
* has n items now but used to have st items. Use the zipfian constant theta. Remember the new value of
* n so that if we change the itemcount, we'll know to recompute zeta.
*
* @param st The number of items used to compute the last initialsum
* @param n The number of items to compute zeta over.
* @param theta The zipfian constant.
* @param initialsum The value of zeta we are computing incrementally from.
*/
double zeta(long st, long n, double theta, double initialsum)
{
countforzeta=n;
return zetastatic(st,n,theta,initialsum);
}
/**
* Compute the zeta constant needed for the distribution. Do this incrementally for a distribution that
* has n items now but used to have st items. Use the zipfian constant theta. Remember the new value of
* n so that if we change the itemcount, we'll know to recompute zeta.
* @param st The number of items used to compute the last initialsum
* @param n The number of items to compute zeta over.
* @param theta The zipfian constant.
* @param initialsum The value of zeta we are computing incrementally from.
*/
static double zetastatic(long st, long n, double theta, double initialsum)
{
double sum=initialsum;
for (long i=st; i<n; i++)
{
sum+=1/(Math.pow(i+1,theta));
}
//System.out.println("countforzeta="+countforzeta);
return sum;
}
/****************************************************************************************/
/**
* Generate the next item. this distribution will be skewed toward lower integers; e.g. 0 will
* be the most popular, 1 the next most popular, etc.
* @param itemcount The number of items in the distribution.
* @return The next item in the sequence.
*/
public int nextInt(int itemcount)
{
return (int)nextLong(itemcount);
}
/**
* Generate the next item as a long.
*
* @param itemcount The number of items in the distribution.
* @return The next item in the sequence.
*/
public long nextLong(long itemcount)
{
//from "Quickly Generating Billion-Record Synthetic Databases", Jim Gray et al, SIGMOD 1994
if (itemcount!=countforzeta)
{
//have to recompute zetan and eta, since they depend on itemcount
synchronized(this)
{
if (itemcount>countforzeta)
{
//System.err.println("WARNING: Incrementally recomputing Zipfian distribtion. (itemcount="+itemcount+" countforzeta="+countforzeta+")");
//we have added more items. can compute zetan incrementally, which is cheaper
zetan=zeta(countforzeta,itemcount,theta,zetan);
eta=(1-Math.pow(2.0/items,1-theta))/(1-zeta2theta/zetan);
}
else if ( (itemcount<countforzeta) && (allowitemcountdecrease) )
{
//have to start over with zetan
//note : for large itemsets, this is very slow. so don't do it!
//TODO: can also have a negative incremental computation, e.g. if you decrease the number of items, then just subtract
//the zeta sequence terms for the items that went away. This would be faster than recomputing from scratch when the number of items
//decreases
System.err.println("WARNING: Recomputing Zipfian distribtion. This is slow and should be avoided. (itemcount="+itemcount+" countforzeta="+countforzeta+")");
zetan=zeta(itemcount,theta);
eta=(1-Math.pow(2.0/items,1-theta))/(1-zeta2theta/zetan);
}
}
}
double u=random.nextDouble();
double uz=u*zetan;
if (uz<1.0)
{
return 0;
}
if (uz<1.0+Math.pow(0.5,theta))
{
return 1;
}
long ret=base+(long)((itemcount) * Math.pow(eta*u - eta + 1, alpha));
setLastInt((int)ret);
return ret;
}
/**
* Return the next value, skewed by the Zipfian distribution. The 0th item will be the most popular, followed by the 1st, followed
* by the 2nd, etc. (Or, if min != 0, the min-th item is the most popular, the min+1th item the next most popular, etc.) If you want the
* popular items scattered throughout the item space, use ScrambledZipfianGenerator instead.
*/
@Override
public int nextInt()
{
return (int)nextLong(items);
}
/**
* Return the next value, skewed by the Zipfian distribution. The 0th item will be the most popular, followed by the 1st, followed
* by the 2nd, etc. (Or, if min != 0, the min-th item is the most popular, the min+1th item the next most popular, etc.) If you want the
* popular items scattered throughout the item space, use ScrambledZipfianGenerator instead.
*/
public long nextLong()
{
return nextLong(items);
}
public static void main(String[] args)
{
new ZipfianGenerator(ScrambledZipfianGenerator.ITEM_COUNT);
}
}

Просмотреть файл

@ -0,0 +1,496 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb.db;
import com.yahoo.ycsb.*;
import java.util.List;
import java.util.Set;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Vector;
import java.util.Random;
import java.util.Properties;
import org.apache.thrift.transport.TTransport;
import org.apache.thrift.transport.TSocket;
import org.apache.thrift.protocol.TProtocol;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.cassandra.service.*;
/**
* XXXX if we do replication, fix the consistency levels
*/
public class CassandraClient extends DB
{
static Random random=new Random();
public static final int Ok=0;
public static final int Error=-1;
public int ConnectionRetries;
public int OperationRetries;
public static final String CONNECTION_RETRY_PROPERTY="cassandra.connectionretries";
public static final String CONNECTION_RETRY_PROPERTY_DEFAULT="300";
public static final String OPERATION_RETRY_PROPERTY="cassandra.operationretries";
public static final String OPERATION_RETRY_PROPERTY_DEFAULT="300";
TTransport tr;
Cassandra.Client client;
boolean _debug=false;
/**
* Initialize any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void init() throws DBException
{
String hosts=getProperties().getProperty("hosts");
if (hosts==null)
{
throw new DBException("Required property \"hosts\" missing for CassandraClient");
}
ConnectionRetries=Integer.parseInt(getProperties().getProperty(CONNECTION_RETRY_PROPERTY,CONNECTION_RETRY_PROPERTY_DEFAULT));
OperationRetries=Integer.parseInt(getProperties().getProperty(OPERATION_RETRY_PROPERTY,OPERATION_RETRY_PROPERTY_DEFAULT));
_debug=Boolean.parseBoolean(getProperties().getProperty("debug","false"));
String[] allhosts=hosts.split(",");
String myhost=allhosts[random.nextInt(allhosts.length)];
//System.out.println("My host: ["+myhost+"]");
//System.exit(0);
Exception connectexception=null;
for (int retry=0; retry<ConnectionRetries; retry++)
{
tr = new TSocket(myhost, 9160);
TProtocol proto = new TBinaryProtocol(tr);
client = new Cassandra.Client(proto);
try
{
tr.open();
connectexception=null;
break;
}
catch (Exception e)
{
connectexception=e;
}
try
{
Thread.sleep(1000);
}
catch (InterruptedException e)
{}
}
if (connectexception!=null)
{
System.err.println("Unable to connect to "+myhost+" after "+ConnectionRetries+" tries");
System.out.println("Unable to connect to "+myhost+" after "+ConnectionRetries+" tries");
throw new DBException(connectexception);
}
}
/**
* Cleanup any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void cleanup() throws DBException
{
tr.close();
}
/**
* Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param key The record key of the record to read.
* @param fields The list of fields to read, or null for all of them
* @param result A HashMap of field/value pairs for the result
* @return Zero on success, a non-zero error code on error
*/
public int read(String table, String key, Set<String> fields, HashMap<String,String> result)
{
Exception errorexception=null;
for (int i=0; i<OperationRetries; i++)
{
try
{
SlicePredicate predicate;
if (fields==null)
{
predicate = new SlicePredicate(null,new SliceRange(new byte[0], new byte[0],false,1000000));
}
else
{
Vector<byte[]> fieldlist=new Vector<byte[]>();
for (String s : fields)
{
fieldlist.add(s.getBytes("UTF-8"));
}
predicate = new SlicePredicate(fieldlist,null);
}
ColumnParent parent = new ColumnParent("data", null);
List<ColumnOrSuperColumn> results = client.get_slice(table, key, parent, predicate, ConsistencyLevel.ONE);
if (_debug)
{
System.out.print("READ: ");
}
for (ColumnOrSuperColumn oneresult : results)
{
Column column=oneresult.column;
result.put(new String(column.name),new String(column.value));
if (_debug)
{
System.out.print("("+new String(column.name)+"="+new String(column.value)+")");
}
}
if (_debug)
{
System.out.println("");
}
return Ok;
}
catch (Exception e)
{
errorexception=e;
}
try
{
Thread.sleep(500);
}
catch (InterruptedException e)
{
}
}
errorexception.printStackTrace();
errorexception.printStackTrace(System.out);
return Error;
}
/**
* Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param startkey The record key of the first record to read.
* @param recordcount The number of records to read
* @param fields The list of fields to read, or null for all of them
* @param result A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
* @return Zero on success, a non-zero error code on error
*/
public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result)
{
Exception errorexception=null;
for (int i=0; i<OperationRetries; i++)
{
try
{
SlicePredicate predicate;
if (fields==null)
{
predicate = new SlicePredicate(null,new SliceRange(new byte[0], new byte[0],false,1000000));
}
else
{
Vector<byte[]> fieldlist=new Vector<byte[]>();
for (String s : fields)
{
fieldlist.add(s.getBytes("UTF-8"));
}
predicate = new SlicePredicate(fieldlist,null);
}
ColumnParent parent = new ColumnParent("data", null);
List<KeySlice> results = client.get_range_slice(table,parent,predicate,startkey,"",recordcount,ConsistencyLevel.ONE);
if (_debug)
{
System.out.println("SCAN:");
}
for (KeySlice oneresult : results)
{
HashMap<String,String> tuple = new HashMap<String, String>();
for (ColumnOrSuperColumn onecol : oneresult.columns)
{
Column column=onecol.column;
tuple.put(new String(column.name),new String(column.value));
if (_debug)
{
System.out.print("("+new String(column.name)+"="+new String(column.value)+")");
}
}
result.add(tuple);
if (_debug)
{
System.out.println();
}
}
return Ok;
}
catch (Exception e)
{
errorexception=e;
}
try
{
Thread.sleep(500);
}
catch (InterruptedException e)
{
}
}
errorexception.printStackTrace();
errorexception.printStackTrace(System.out);
return Error;
}
/**
* Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key, overwriting any existing values with the same field name.
*
* @param table The name of the table
* @param key The record key of the record to write.
* @param values A HashMap of field/value pairs to update in the record
* @return Zero on success, a non-zero error code on error
*/
public int update(String table, String key, HashMap<String,String> values)
{
return insert(table,key,values);
}
/**
* Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key.
*
* @param table The name of the table
* @param key The record key of the record to insert.
* @param values A HashMap of field/value pairs to insert in the record
* @return Zero on success, a non-zero error code on error
*/
public int insert(String table, String key, HashMap<String,String> values)
{
Exception errorexception=null;
for (int i=0; i<OperationRetries; i++)
{
// insert data
long timestamp = System.currentTimeMillis();
HashMap<String, List<ColumnOrSuperColumn>> batch_mutation=new HashMap<String, List<ColumnOrSuperColumn>>();
Vector<ColumnOrSuperColumn> v=new Vector<ColumnOrSuperColumn>();
batch_mutation.put("data",v);
try
{
for (String field : values.keySet())
{
String val=values.get(field);
Column col=new Column(field.getBytes("UTF-8"),val.getBytes("UTF-8"),timestamp);
ColumnOrSuperColumn c=new ColumnOrSuperColumn();
c.setColumn(col);
c.unsetSuper_column();
v.add(c);
}
client.batch_insert(table,
key,
batch_mutation,
ConsistencyLevel.ONE);
if (_debug)
{
System.out.println("INSERT");
}
return Ok;
}
catch (Exception e)
{
errorexception=e;
}
try
{
Thread.sleep(500);
}
catch (InterruptedException e)
{
}
}
errorexception.printStackTrace();
errorexception.printStackTrace(System.out);
return Error;
}
/**
* Delete a record from the database.
*
* @param table The name of the table
* @param key The record key of the record to delete.
* @return Zero on success, a non-zero error code on error
*/
public int delete(String table, String key)
{
Exception errorexception=null;
for (int i=0; i<OperationRetries; i++)
{
try
{
client.remove(table,key,new ColumnPath("data", null, null),System.currentTimeMillis(),ConsistencyLevel.ONE);
if (_debug)
{
System.out.println("DELETE");
}
return Ok;
}
catch (Exception e)
{
errorexception=e;
}
try
{
Thread.sleep(500);
}
catch (InterruptedException e)
{
}
}
errorexception.printStackTrace();
errorexception.printStackTrace(System.out);
return Error;
}
public static void main(String[] args)
{
CassandraClient cli=new CassandraClient();
Properties props=new Properties();
props.setProperty("hosts",args[0]);
cli.setProperties(props);
try
{
cli.init();
}
catch (Exception e)
{
e.printStackTrace();
System.exit(0);
}
HashMap<String,String> vals=new HashMap<String,String>();
vals.put("age","57");
vals.put("middlename","bradley");
vals.put("favoritecolor","blue");
int res=cli.insert("usertable","BrianFrankCooper",vals);
System.out.println("Result of insert: "+res);
HashMap<String,String> result=new HashMap<String,String>();
HashSet<String> fields=new HashSet<String>();
fields.add("middlename");
fields.add("age");
fields.add("favoritecolor");
res=cli.read("usertable", "BrianFrankCooper", null, result);
System.out.println("Result of read: "+res);
for (String s: result.keySet())
{
System.out.println("["+s+"]=["+result.get(s)+"]");
}
res=cli.delete("usertable","BrianFrankCooper");
System.out.println("Result of delete: "+res);
}
/*
public static void main(String[] args)
throws TException, InvalidRequestException, UnavailableException, UnsupportedEncodingException, NotFoundException
{
String key_user_id = "1";
client.insert("Keyspace1",
key_user_id,
new ColumnPath("Standard1", null, "age".getBytes("UTF-8")),
"24".getBytes("UTF-8"),
timestamp,
ConsistencyLevel.ONE);
// read single column
ColumnPath path = new ColumnPath("Standard1", null, "name".getBytes("UTF-8"));
System.out.println(client.get("Keyspace1", key_user_id, path, ConsistencyLevel.ONE));
// read entire row
SlicePredicate predicate = new SlicePredicate(null, new SliceRange(new byte[0], new byte[0], false, 10));
ColumnParent parent = new ColumnParent("Standard1", null);
List<ColumnOrSuperColumn> results = client.get_slice("Keyspace1", key_user_id, parent, predicate, ConsistencyLevel.ONE);
for (ColumnOrSuperColumn result : results)
{
Column column = result.column;
System.out.println(new String(column.name, "UTF-8") + " -> " + new String(column.value, "UTF-8"));
}
}
*/
}

Просмотреть файл

@ -0,0 +1,518 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb.db;
import com.yahoo.ycsb.DBException;
import java.io.IOException;
import java.util.*;
//import java.util.HashMap;
//import java.util.Properties;
//import java.util.Set;
//import java.util.Vector;
import org.apache.hadoop.hbase.client.HTable;
//import org.apache.hadoop.hbase.client.Scanner;
import org.apache.hadoop.hbase.client.Get;
import org.apache.hadoop.hbase.client.Put;
import org.apache.hadoop.hbase.client.Delete;
import org.apache.hadoop.hbase.client.Scan;
import org.apache.hadoop.hbase.client.Result;
import org.apache.hadoop.hbase.client.ResultScanner;
//import org.apache.hadoop.hbase.io.Cell;
//import org.apache.hadoop.hbase.io.RowResult;
import org.apache.hadoop.hbase.util.Bytes;
import org.apache.hadoop.hbase.HBaseConfiguration;
public class HBaseClient extends com.yahoo.ycsb.DB
{
public boolean _debug=false;
public String _table="";
public HTable _hTable=null;
public String _columnFamily="";
public static final int Ok=0;
public static final int ServerError=-1;
public static final int HttpError=-2;
public static final int NoMatchingRecord=-3;
public static Object tableLock = new Object();
/**
* Initialize any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void init() throws DBException
{
if ( (getProperties().getProperty("debug")!=null) &&
(getProperties().getProperty("debug").compareTo("true")==0) )
{
_debug=true;
}
_columnFamily = getProperties().getProperty("columnfamily");
if (_columnFamily == null)
{
System.err.println("Error, must specify a columnfamily for HBase table");
throw new DBException("No columnfamily specified");
}
}
/**
* Cleanup any state for this DB.
* Called once per DB instance; there is one DB instance per client thread.
*/
public void cleanup() throws DBException
{
}
public void getHTable(String table) throws IOException
{
synchronized (tableLock) {
HBaseConfiguration config = new HBaseConfiguration();
_hTable = new HTable(config, table);
//2 suggestions from http://ryantwopointoh.blogspot.com/2009/01/performance-of-hbase-importing.html
_hTable.setAutoFlush(false);
_hTable.setWriteBufferSize(1024*1024*12);
//return hTable;
}
}
/**
* Read a record from the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param key The record key of the record to read.
* @param fields The list of fields to read, or null for all of them
* @param result A HashMap of field/value pairs for the result
* @return Zero on success, a non-zero error code on error
*/
public int read(String table, String key, Set<String> fields, HashMap<String,String> result)
{
//if this is a "new" table, init HTable object. Else, use existing one
if (!_table.equals(table)) {
_hTable = null;
try
{
getHTable(table);
_table = table;
}
catch (IOException e)
{
System.err.println("Error accessing HBase table: "+e);
return ServerError;
}
}
Result r = null;
try
{
if (_debug) {
System.out.println("Doing read from HBase columnfamily "+_columnFamily);
System.out.println("Doing read for key: "+key);
}
Get g = new Get(Bytes.toBytes(key));
r = _hTable.get(g);
}
catch (IOException e)
{
System.err.println("Error doing get: "+e);
return ServerError;
}
catch (ConcurrentModificationException e)
{
//do nothing for now...need to understand HBase concurrency model better
return ServerError;
}
//now parse out all desired fields
if (fields != null) {
for (String field : fields) {
byte[] value = r.getValue(Bytes.toBytes(_columnFamily),Bytes.toBytes(field));
result.put(field,Bytes.toString(value));
if (_debug) {
System.out.println("Result for field: "+field+" is: "+Bytes.toString(value));
}
}
}
return Ok;
}
/**
* Perform a range scan for a set of records in the database. Each field/value pair from the result will be stored in a HashMap.
*
* @param table The name of the table
* @param startkey The record key of the first record to read.
* @param recordcount The number of records to read
* @param fields The list of fields to read, or null for all of them
* @param result A Vector of HashMaps, where each HashMap is a set field/value pairs for one record
* @return Zero on success, a non-zero error code on error
*/
public int scan(String table, String startkey, int recordcount, Set<String> fields, Vector<HashMap<String,String>> result)
{
//if this is a "new" table, init HTable object. Else, use existing one
if (!_table.equals(table)) {
_hTable = null;
try
{
getHTable(table);
_table = table;
}
catch (IOException e)
{
System.err.println("Error accessing HBase table: "+e);
return ServerError;
}
}
Scan s = new Scan(Bytes.toBytes(startkey));
//HBase has no record limit. Here, assume recordcount is small enough to bring back in one call.
//We get back recordcount records
s.setCaching(recordcount);
//add specified fields or else all fields
if (fields == null)
{
s.addFamily(Bytes.toBytes(_columnFamily));
}
else
{
for (String field : fields)
{
s.addColumn(Bytes.toBytes(_columnFamily),Bytes.toBytes(field));
}
}
//get results
ResultScanner scanner = null;
try {
scanner = _hTable.getScanner(s);
int numResults = 0;
for (Result rr = scanner.next(); rr != null; rr = scanner.next())
{
//get row key
String key = Bytes.toString(rr.getRow());
if (_debug)
{
System.out.println("Got scan result for key: "+key);
}
HashMap<String,String> rowResult = new HashMap<String, String>();
//parse row
if (fields != null) //parse specified field list
{
for (String field : fields) {
byte[] value = rr.getValue(Bytes.toBytes(_columnFamily),Bytes.toBytes(field));
rowResult.put(field,Bytes.toString(value));
if (_debug)
{
System.out.println("Result for field: "+field+" is: "+Bytes.toString(value));
}
}
}
else //get all fields
{
//HBase can return a mapping for all columns in a column family
NavigableMap<byte[], byte[]> scanMap = rr.getFamilyMap(Bytes.toBytes(_columnFamily));
for (byte[] fieldkey : scanMap.keySet())
{
String value = Bytes.toString(scanMap.get(fieldkey));
rowResult.put(Bytes.toString(fieldkey),value);
if (_debug)
{
System.out.println("Result for field: "+Bytes.toString(fieldkey)+" is: "+value);
}
}
}
//add rowResult to result vector
result.add(rowResult);
numResults++;
if (numResults >= recordcount) //if hit recordcount, bail out
{
break;
}
} //done with row
}
catch (IOException e) {
if (_debug)
{
System.out.println("Error in getting/parsing scan result: "+e);
}
return ServerError;
}
finally {
scanner.close();
}
return Ok;
}
/**
* Update a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key, overwriting any existing values with the same field name.
*
* @param table The name of the table
* @param key The record key of the record to write
* @param values A HashMap of field/value pairs to update in the record
* @return Zero on success, a non-zero error code on error
*/
public int update(String table, String key, HashMap<String,String> values)
{
//if this is a "new" table, init HTable object. Else, use existing one
if (!_table.equals(table)) {
_hTable = null;
try
{
getHTable(table);
_table = table;
}
catch (IOException e)
{
System.err.println("Error accessing HBase table: "+e);
return ServerError;
}
}
if (_debug) {
System.out.println("Setting up put for key: "+key);
}
Put p = new Put(Bytes.toBytes(key));
for (String fieldkey : values.keySet())
{
String value = values.get(fieldkey);
if (_debug) {
System.out.println("Adding field/value " + fieldkey + "/"+value+" to put request");
}
p.add(Bytes.toBytes(_columnFamily),Bytes.toBytes(fieldkey),Bytes.toBytes(value));
}
try
{
_hTable.put(p);
}
catch (IOException e)
{
if (_debug) {
System.err.println("Error doing put: "+e);
}
return ServerError;
}
catch (ConcurrentModificationException e)
{
//do nothing for now...hope this is rare
return ServerError;
}
return Ok;
}
/**
* Insert a record in the database. Any field/value pairs in the specified values HashMap will be written into the record with the specified
* record key.
*
* @param table The name of the table
* @param key The record key of the record to insert.
* @param values A HashMap of field/value pairs to insert in the record
* @return Zero on success, a non-zero error code on error
*/
public int insert(String table, String key, HashMap<String,String> values)
{
return update(table,key,values);
}
/**
* Delete a record from the database.
*
* @param table The name of the table
* @param key The record key of the record to delete.
* @return Zero on success, a non-zero error code on error
*/
public int delete(String table, String key)
{
//if this is a "new" table, init HTable object. Else, use existing one
if (!_table.equals(table)) {
_hTable = null;
try
{
getHTable(table);
_table = table;
}
catch (IOException e)
{
System.err.println("Error accessing HBase table: "+e);
return ServerError;
}
}
if (_debug) {
System.out.println("Doing delete for key: "+key);
}
Delete d = new Delete(Bytes.toBytes(key));
try
{
_hTable.delete(d);
}
catch (IOException e)
{
if (_debug) {
System.err.println("Error doing delete: "+e);
}
return ServerError;
}
return Ok;
}
public static void main(String[] args)
{
if (args.length!=3)
{
System.out.println("Please specify a threadcount, columnfamily and operation count");
System.exit(0);
}
final int keyspace=10000; //120000000;
final int threadcount=Integer.parseInt(args[0]);
final String columnfamily=args[1];
final int opcount=Integer.parseInt(args[2])/threadcount;
Vector<Thread> allthreads=new Vector<Thread>();
for (int i=0; i<threadcount; i++)
{
Thread t=new Thread()
{
public void run()
{
try
{
Random random=new Random();
HBaseClient cli=new HBaseClient();
Properties props=new Properties();
props.setProperty("columnfamily",columnfamily);
props.setProperty("debug","true");
cli.setProperties(props);
cli.init();
//HashMap<String,String> result=new HashMap<String,String>();
long accum=0;
for (int i=0; i<opcount; i++)
{
int keynum=random.nextInt(keyspace);
String key="user"+keynum;
long st=System.currentTimeMillis();
int rescode;
/*
HashMap hm = new HashMap();
hm.put("field1","value1");
hm.put("field2","value2");
hm.put("field3","value3");
rescode=cli.insert("table1",key,hm);
HashSet<String> s = new HashSet();
s.add("field1");
s.add("field2");
rescode=cli.read("table1", key, s, result);
//rescode=cli.delete("table1",key);
rescode=cli.read("table1", key, s, result);
*/
HashSet<String> scanFields = new HashSet<String>();
scanFields.add("field1");
scanFields.add("field3");
Vector<HashMap<String,String>> scanResults = new Vector<HashMap<String,String>>();
rescode = cli.scan("table1","user2",20,null,scanResults);
long en=System.currentTimeMillis();
accum+=(en-st);
if (rescode!=Ok)
{
System.out.println("Error "+rescode+" for "+key);
}
if (i%1==0)
{
System.out.println(i+" operations, average latency: "+(((double)accum)/((double)i)));
}
}
//System.out.println("Average latency: "+(((double)accum)/((double)opcount)));
//System.out.println("Average get latency: "+(((double)cli.TotalGetTime)/((double)cli.TotalGetOps)));
}
catch (Exception e)
{
e.printStackTrace();
}
}
};
allthreads.add(t);
}
long st=System.currentTimeMillis();
for (Thread t: allthreads)
{
t.start();
}
for (Thread t: allthreads)
{
try
{
t.join();
}
catch (InterruptedException e)
{
}
}
long en=System.currentTimeMillis();
System.out.println("Throughput: "+((1000.0)*(((double)(opcount*threadcount))/((double)(en-st))))+" ops/sec");
}
}
/* For customized vim control
* set autoindent
* set si
* set shiftwidth=4
*/

Просмотреть файл

@ -0,0 +1,41 @@
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
/**
* Copyright 2009 The Apache Software Foundation
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-->
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://<HBASE_MASTER_SERVER>:20001/hbase</value>
<description>The directory shared by region servers.
</description>
</property>
<property>
<name>hbase.master</name>
<value><HBASE_MASTER_SERVER>:60000</value>
<description>The host and port that the HBase master runs at.
</description>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value><HBASE_MASTER_SERVER></value>
</property>
</configuration>

Просмотреть файл

@ -0,0 +1,517 @@
/**
* Copyright (c) 2010 Yahoo! Inc. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you
* may not use this file except in compliance with the License. You
* may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
* implied. See the License for the specific language governing
* permissions and limitations under the License. See accompanying
* LICENSE file.
*/
package com.yahoo.ycsb.workloads;
import java.util.Properties;
import com.yahoo.ycsb.*;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Vector;
/**
* The core benchmark scenario. Represents a set of clients doing simple CRUD operations. The relative
* proportion of different kinds of operations, and other properties of the workload, are controlled
* by parameters specified at runtime.
*
* Properties to control the client:
* <UL>
* <LI><b>fieldcount</b>: the number of fields in a record (default: 10)
* <LI><b>fieldlength</b>: the size of each field (default: 100)
* <LI><b>readallfields</b>: should reads read all fields (true) or just one (false) (default: true)
* <LI><b>readproportion</b>: what proportion of operations should be reads (default: 0.95)
* <LI><b>updateproportion</b>: what proportion of operations should be updates (default: 0.05)
* <LI><b>insertproportion</b>: what proportion of operations should be inserts (default: 0)
* <LI><b>scanproportion</b>: what proportion of operations should be scans (default: 0)
* <LI><b>readmodifywriteproportion</b>: what proportion of operations should be read a record, modify it, write it back (default: 0)
* <LI><b>requestdistribution</b>: what distribution should be used to select the records to operate on - uniform, zipfian or latest (default: uniform)
* <LI><b>maxscanlength</b>: for scans, what is the maximum number of records to scan (default: 1000)
* <LI><b>scanlengthdistribution</b>: for scans, what distribution should be used to choose the number of records to scan, for each scan, between 1 and maxscanlength (default: uniform)
* <LI><b>insertorder</b>: should records be inserted in order by key ("ordered"), or in hashed order ("hashed") (default: hashed)
* </ul>
*/
public class CoreWorkload extends Workload
{
/**
* The name of the database table to run queries against.
*/
public static final String TABLENAME="usertable";
/**
* The name of the property for the number of fields in a record.
*/
public static final String FIELD_COUNT_PROPERTY="fieldcount";
/**
* Default number of fields in a record.
*/
public static final String FIELD_COUNT_PROPERTY_DEFAULT="10";
int fieldcount;
/**
* The name of the property for the length of a field in bytes.
*/
public static final String FIELD_LENGTH_PROPERTY="fieldlength";
/**
* The default length of a field in bytes.
*/
public static final String FIELD_LENGTH_PROPERTY_DEFAULT="100";
int fieldlength;
/**
* The name of the property for deciding whether to read one field (false) or all fields (true) of a record.
*/
public static final String READ_ALL_FIELDS_PROPERTY="readallfields";
/**
* The default value for the readallfields property.
*/
public static final String READ_ALL_FIELDS_PROPERTY_DEFAULT="true";
boolean readallfields;
/**
* The name of the property for the proportion of transactions that are reads.
*/
public static final String READ_PROPORTION_PROPERTY="readproportion";
/**
* The default proportion of transactions that are reads.
*/
public static final String READ_PROPORTION_PROPERTY_DEFAULT="0.95";
/**
* The name of the property for the proportion of transactions that are updates.
*/
public static final String UPDATE_PROPORTION_PROPERTY="updateproportion";
/**
* The default proportion of transactions that are updates.
*/
public static final String UPDATE_PROPORTION_PROPERTY_DEFAULT="0.05";
/**
* The name of the property for the proportion of transactions that are inserts.
*/
public static final String INSERT_PROPORTION_PROPERTY="insertproportion";
/**
* The default proportion of transactions that are inserts.
*/
public static final String INSERT_PROPORTION_PROPERTY_DEFAULT="0.0";
/**
* The name of the property for the proportion of transactions that are scans.
*/
public static final String SCAN_PROPORTION_PROPERTY="scanproportion";
/**
* The default proportion of transactions that are scans.
*/
public static final String SCAN_PROPORTION_PROPERTY_DEFAULT="0.0";
/**
* The name of the property for the proportion of transactions that are read-modify-write.
*/
public static final String READMODIFYWRITE_PROPORTION_PROPERTY="readmodifywriteproportion";
/**
* The default proportion of transactions that are scans.
*/
public static final String READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT="0.0";
/**
* The name of the property for the the distribution of requests across the keyspace. Options are "uniform", "zipfian" and "latest"
*/
public static final String REQUEST_DISTRIBUTION_PROPERTY="requestdistribution";
/**
* The default distribution of requests across the keyspace
*/
public static final String REQUEST_DISTRIBUTION_PROPERTY_DEFAULT="uniform";
/**
* The name of the property for the max scan length (number of records)
*/
public static final String MAX_SCAN_LENGTH_PROPERTY="maxscanlength";
/**
* The default max scan length.
*/
public static final String MAX_SCAN_LENGTH_PROPERTY_DEFAULT="1000";
/**
* The name of the property for the scan length distribution. Options are "uniform" and "zipfian" (favoring short scans)
*/
public static final String SCAN_LENGTH_DISTRIBUTION_PROPERTY="scanlengthdistribution";
/**
* The default max scan length.
*/
public static final String SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT="uniform";
/**
* The name of the property for the order to insert records. Options are "ordered" or "hashed"
*/
public static final String INSERT_ORDER_PROPERTY="insertorder";
/**
* Default insert order.
*/
public static final String INSERT_ORDER_PROPERTY_DEFAULT="hashed";
IntegerGenerator keysequence;
DiscreteGenerator operationchooser;
IntegerGenerator keychooser;
Generator fieldchooser;
CounterGenerator transactioninsertkeysequence;
IntegerGenerator scanlength;
boolean orderedinserts;
int recordcount;
/**
* Initialize the scenario.
* Called once, in the main client thread, before any operations are started.
*/
public void init(Properties p) throws WorkloadException
{
fieldcount=Integer.parseInt(p.getProperty(FIELD_COUNT_PROPERTY,FIELD_COUNT_PROPERTY_DEFAULT));
fieldlength=Integer.parseInt(p.getProperty(FIELD_LENGTH_PROPERTY,FIELD_LENGTH_PROPERTY_DEFAULT));
double readproportion=Double.parseDouble(p.getProperty(READ_PROPORTION_PROPERTY,READ_PROPORTION_PROPERTY_DEFAULT));
double updateproportion=Double.parseDouble(p.getProperty(UPDATE_PROPORTION_PROPERTY,UPDATE_PROPORTION_PROPERTY_DEFAULT));
double insertproportion=Double.parseDouble(p.getProperty(INSERT_PROPORTION_PROPERTY,INSERT_PROPORTION_PROPERTY_DEFAULT));
double scanproportion=Double.parseDouble(p.getProperty(SCAN_PROPORTION_PROPERTY,SCAN_PROPORTION_PROPERTY_DEFAULT));
double readmodifywriteproportion=Double.parseDouble(p.getProperty(READMODIFYWRITE_PROPORTION_PROPERTY,READMODIFYWRITE_PROPORTION_PROPERTY_DEFAULT));
recordcount=Integer.parseInt(p.getProperty(Client.RECORD_COUNT_PROPERTY));
String requestdistrib=p.getProperty(REQUEST_DISTRIBUTION_PROPERTY,REQUEST_DISTRIBUTION_PROPERTY_DEFAULT);
int maxscanlength=Integer.parseInt(p.getProperty(MAX_SCAN_LENGTH_PROPERTY,MAX_SCAN_LENGTH_PROPERTY_DEFAULT));
String scanlengthdistrib=p.getProperty(SCAN_LENGTH_DISTRIBUTION_PROPERTY,SCAN_LENGTH_DISTRIBUTION_PROPERTY_DEFAULT);
int insertstart=Integer.parseInt(p.getProperty(INSERT_START_PROPERTY,INSERT_START_PROPERTY_DEFAULT));
readallfields=Boolean.parseBoolean(p.getProperty(READ_ALL_FIELDS_PROPERTY,READ_ALL_FIELDS_PROPERTY_DEFAULT));
if (p.getProperty(INSERT_ORDER_PROPERTY,INSERT_ORDER_PROPERTY_DEFAULT).compareTo("hashed")==0)
{
orderedinserts=false;
}
else
{
orderedinserts=true;
}
keysequence=new CounterGenerator(insertstart);
operationchooser=new DiscreteGenerator();
if (readproportion>0)
{
operationchooser.addValue(readproportion,"READ");
}
if (updateproportion>0)
{
operationchooser.addValue(updateproportion,"UPDATE");
}
if (insertproportion>0)
{
operationchooser.addValue(insertproportion,"INSERT");
}
if (scanproportion>0)
{
operationchooser.addValue(scanproportion,"SCAN");
}
if (readmodifywriteproportion>0)
{
operationchooser.addValue(readmodifywriteproportion,"READMODIFYWRITE");
}
transactioninsertkeysequence=new CounterGenerator(recordcount);
if (requestdistrib.compareTo("uniform")==0)
{
keychooser=new UniformIntegerGenerator(0,recordcount-1);
}
else if (requestdistrib.compareTo("zipfian")==0)
{
//it does this by generating a random "next key" in part by taking the modulus over the number of keys
//if the number of keys changes, this would shift the modulus, and we don't want that to change which keys are popular
//so we'll actually construct the scrambled zipfian generator with a keyspace that is larger than exists at the beginning
//of the test. that is, we'll predict the number of inserts, and tell the scrambled zipfian generator the number of existing keys
//plus the number of predicted keys as the total keyspace. then, if the generator picks a key that hasn't been inserted yet, will
//just ignore it and pick another key. this way, the size of the keyspace doesn't change from the perspective of the scrambled zipfian generator
int opcount=Integer.parseInt(p.getProperty(Client.OPERATION_COUNT_PROPERTY));
int expectednewkeys=(int)(((double)opcount)*insertproportion*2.0); //2 is fudge factor
keychooser=new ScrambledZipfianGenerator(recordcount+expectednewkeys);
}
else if (requestdistrib.compareTo("latest")==0)
{
keychooser=new SkewedLatestGenerator(transactioninsertkeysequence);
}
else
{
throw new WorkloadException("Unknown distribution \""+requestdistrib+"\"");
}
fieldchooser=new UniformIntegerGenerator(0,fieldcount-1);
if (scanlengthdistrib.compareTo("uniform")==0)
{
scanlength=new UniformIntegerGenerator(1,maxscanlength);
}
else if (scanlengthdistrib.compareTo("zipfian")==0)
{
scanlength=new ZipfianGenerator(1,maxscanlength);
}
else
{
throw new WorkloadException("Distribution \""+scanlengthdistrib+"\" not allowed for scan length");
}
}
/**
* Do one insert operation. Because it will be called concurrently from multiple client threads, this
* function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
* other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
* effects other than DB operations.
*/
public boolean doInsert(DB db, Object threadstate)
{
int keynum=keysequence.nextInt();
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String dbkey="user"+keynum;
HashMap<String,String> values=new HashMap<String,String>();
for (int i=0; i<fieldcount; i++)
{
String fieldkey="field"+i;
String data=Utils.ASCIIString(fieldlength);
values.put(fieldkey,data);
}
db.insert(TABLENAME,dbkey,values);
return true;
}
/**
* Do one transaction operation. Because it will be called concurrently from multiple client threads, this
* function must be thread safe. However, avoid synchronized, or the threads will block waiting for each
* other, and it will be difficult to reach the target throughput. Ideally, this function would have no side
* effects other than DB operations.
*/
public boolean doTransaction(DB db, Object threadstate)
{
String op=operationchooser.nextString();
if (op.compareTo("READ")==0)
{
doTransactionRead(db);
}
else if (op.compareTo("UPDATE")==0)
{
doTransactionUpdate(db);
}
else if (op.compareTo("INSERT")==0)
{
doTransactionInsert(db);
}
else if (op.compareTo("SCAN")==0)
{
doTransactionScan(db);
}
else
{
doTransactionReadModifyWrite(db);
}
return true;
}
public void doTransactionRead(DB db)
{
//choose a random key
int keynum;
do
{
keynum=keychooser.nextInt();
}
while (keynum>transactioninsertkeysequence.lastInt());
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String keyname="user"+keynum;
HashSet<String> fields=null;
if (!readallfields)
{
//read a random field
String fieldname="field"+fieldchooser.nextString();
fields=new HashSet<String>();
fields.add(fieldname);
}
db.read(TABLENAME,keyname,fields,new HashMap<String,String>());
}
public void doTransactionReadModifyWrite(DB db)
{
//choose a random key
int keynum;
do
{
keynum=keychooser.nextInt();
}
while (keynum>transactioninsertkeysequence.lastInt());
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String keyname="user"+keynum;
HashSet<String> fields=null;
if (!readallfields)
{
//read a random field
String fieldname="field"+fieldchooser.nextString();
fields=new HashSet<String>();
fields.add(fieldname);
}
//update a random field
String fieldname="field"+fieldchooser.nextString();
String data=Utils.ASCIIString(fieldlength);
HashMap<String,String> values=new HashMap<String,String>();
values.put(fieldname,data);
//do the transaction
long st=System.currentTimeMillis();
db.read(TABLENAME,keyname,fields,new HashMap<String,String>());
db.update(TABLENAME,keyname,values);
long en=System.currentTimeMillis();
Measurements.getMeasurements().measure("READ-MODIFY-WRITE", (int)(en-st));
}
public void doTransactionScan(DB db)
{
//choose a random key
int keynum;
do
{
keynum=keychooser.nextInt();
}
while (keynum>transactioninsertkeysequence.lastInt());
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String startkeyname="user"+keynum;
//choose a random scan length
int len=scanlength.nextInt();
HashSet<String> fields=null;
if (!readallfields)
{
//read a random field
String fieldname="field"+fieldchooser.nextString();
fields=new HashSet<String>();
fields.add(fieldname);
}
db.scan(TABLENAME,startkeyname,len,fields,new Vector<HashMap<String,String>>());
}
public void doTransactionUpdate(DB db)
{
//choose a random key
int keynum;
do
{
keynum=keychooser.nextInt();
}
while (keynum>transactioninsertkeysequence.lastInt());
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String keyname="user"+keynum;
//update a random field
String fieldname="field"+fieldchooser.nextString();
String data=Utils.ASCIIString(fieldlength);
HashMap<String,String> values=new HashMap<String,String>();
values.put(fieldname,data);
db.update(TABLENAME,keyname,values);
}
public void doTransactionInsert(DB db)
{
//choose the next key
int keynum=transactioninsertkeysequence.nextInt();
if (!orderedinserts)
{
keynum=Utils.hash(keynum);
}
String dbkey="user"+keynum;
HashMap<String,String> values=new HashMap<String,String>();
for (int i=0; i<fieldcount; i++)
{
String fieldkey="field"+i;
String data=Utils.ASCIIString(fieldlength);
values.put(fieldkey,data);
}
db.insert(TABLENAME,dbkey,values);
}
}

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше