64 lines
3.1 KiB
HTML
64 lines
3.1 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
|
<title>Module machi_basho_bench_driver</title>
|
|
<link rel="stylesheet" type="text/css" href="stylesheet.css" title="EDoc">
|
|
</head>
|
|
<body bgcolor="white">
|
|
<div class="navbar"><a name="#navbar_top"></a><table width="100%" border="0" cellspacing="0" cellpadding="2" summary="navigation bar"><tr><td><a href="overview-summary.html" target="overviewFrame">Overview</a></td><td><a href="http://www.erlang.org/"><img src="erlang.png" align="right" border="0" alt="erlang logo"></a></td></tr></table></div>
|
|
<hr>
|
|
|
|
<h1>Module machi_basho_bench_driver</h1>
|
|
<ul class="index"><li><a href="#description">Description</a></li><li><a href="#index">Function Index</a></li><li><a href="#functions">Function Details</a></li></ul>A simple basho_bench driver for Machi.
|
|
|
|
|
|
<h2><a name="description">Description</a></h2><p>A simple basho_bench driver for Machi</p>
|
|
|
|
<p>Basho_bench was originally developed to stress test key-value
|
|
stores (as was YCSB and several other mechmarking tools). A person
|
|
can consider the UNIX file system to be a key-value store and thus
|
|
use basho_bench to measure its performance under a certain
|
|
workload. Machi is a bit different than most KV stores in that the
|
|
client has no direct control over the keys -- Machi servers always
|
|
assign the keys. The schemes typically used by basho_bench & YCSB
|
|
to use/mimic key naming conventions used internally ... are
|
|
difficult to adapt to Machi.</p>
|
|
|
|
<p>So, we'll try to manage key reading by using a common ETS table
|
|
that is populated with:</p>
|
|
|
|
<p>1. Key: <code>non_neg_integer()`
|
|
2. Value: The `{File,Offset,Size}` for a chunk previously written.
|
|
|
|
At startup time, basho_bench can use the `list_files</code> and
|
|
<code>checksum_list</code> API operations to fetch all of the
|
|
<code>{File,Offset,Size}` tuples that currently reside in the cluster.
|
|
Also, optionally (?), each new `append</code> operation by the b_b driver
|
|
could add new entries to this ETS table.</p>
|
|
|
|
Now we can use various integer-centric key generators that are
|
|
already bundled with basho_bench.
|
|
|
|
<h2><a name="index">Function Index</a></h2>
|
|
<table width="100%" border="1" cellspacing="0" cellpadding="2" summary="function index"><tr><td valign="top"><a href="#new-1">new/1</a></td><td></td></tr>
|
|
<tr><td valign="top"><a href="#run-4">run/4</a></td><td></td></tr>
|
|
</table>
|
|
|
|
<h2><a name="functions">Function Details</a></h2>
|
|
|
|
<h3 class="function"><a name="new-1">new/1</a></h3>
|
|
<div class="spec">
|
|
<p><tt>new(Id) -> any()</tt></p>
|
|
</div>
|
|
|
|
<h3 class="function"><a name="run-4">run/4</a></h3>
|
|
<div class="spec">
|
|
<p><tt>run(X1, KeyGen, ValueGen, M) -> any()</tt></p>
|
|
</div>
|
|
<hr>
|
|
|
|
<div class="navbar"><a name="#navbar_bottom"></a><table width="100%" border="0" cellspacing="0" cellpadding="2" summary="navigation bar"><tr><td><a href="overview-summary.html" target="overviewFrame">Overview</a></td><td><a href="http://www.erlang.org/"><img src="erlang.png" align="right" border="0" alt="erlang logo"></a></td></tr></table></div>
|
|
<p><i>Generated by EDoc, Jul 1 2015, 18:32:19.</i></p>
|
|
</body>
|
|
</html>
|