[mongo_bench] Building a set of perf tools

26 views
Skip to first unread message

Justin

unread,
Sep 5, 2010, 2:49:35 PM9/5/10
to mongodb-user
This has come up a few times in discussions, we need a good way to run
simulations/benchmarks against MongoDB. I have taken upon myself to
start laying the groundwork for such a tool. I am calling it
"mongo_bench" at the moment (modeled after apache bench - ab).

Its posted on github: http://github.com/jsmestad/mongo_bench and is
free for anyone to contribute. There is also a pledgie link to donate
to the development of the project if thats your thing.

The idea is to have a command line tool that would be executed like:

mongo_bench --threads 5 --databases 6 [set_of_scenario_files_to_use]

This would mean that there would be 5 threads running on each database
with 6 db's in total (30 connections total) running from a set of
scenarios. These scenarios are things like a read-heavy database,
large datasets, etc. The scenarios is where this library will
hopefully really shine with community contributions.

Currently you can write the scripts in JS or Ruby.

Any feedback or comments is greatly appreciated.

Justin
mongo machine

Eliot Horowitz

unread,
Sep 5, 2010, 10:51:01 PM9/5/10
to mongod...@googlegroups.com
One thing I would be careful of is slow clients.
We know that the database is often faster than a single js or ruby client can handle for example.
So just want to make sure you're benchmarking the db and not the driver.


--
You received this message because you are subscribed to the Google Groups "mongodb-user" group.
To post to this group, send email to mongod...@googlegroups.com.
To unsubscribe from this group, send email to mongodb-user...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/mongodb-user?hl=en.


Justin

unread,
Sep 6, 2010, 1:22:38 PM9/6/10
to mongodb-user
Any recommendations on how to do that? My main concern is actually
getting a good baseline, not a peak / optimal performance benchmark
(in order to compare various configurations)

Justin

On Sep 5, 8:51 pm, Eliot Horowitz <eliothorow...@gmail.com> wrote:
> One thing I would be careful of is slow clients.
> We know that the database is often faster than a single js or ruby client
> can handle for example.
> So just want to make sure you're benchmarking the db and not the driver.
>
>
>
>
>
>
>
> On Sun, Sep 5, 2010 at 2:49 PM, Justin <justin.smes...@gmail.com> wrote:
> > This has come up a few times in discussions, we need a good way to run
> > simulations/benchmarks against MongoDB. I have taken upon myself to
> > start laying the groundwork for such a tool. I am calling it
> > "mongo_bench" at the moment (modeled after apache bench - ab).
>
> > Its posted on github:http://github.com/jsmestad/mongo_benchand is
> > free for anyone to contribute. There is also a pledgie link to donate
> > to the development of the project if thats your thing.
>
> > The idea is to have a command line tool that would be executed like:
>
> > mongo_bench --threads 5 --databases 6 [set_of_scenario_files_to_use]
>
> > This would mean that there would be 5 threads running on each database
> > with 6 db's in total (30 connections total) running from a set of
> > scenarios. These scenarios are things like a read-heavy database,
> > large datasets, etc. The scenarios is where this library will
> > hopefully really shine with community contributions.
>
> > Currently you can write the scripts in JS or Ruby.
>
> > Any feedback or comments is greatly appreciated.
>
> > Justin
> > mongo machine
>
> > --
> > You received this message because you are subscribed to the Google Groups
> > "mongodb-user" group.
> > To post to this group, send email to mongod...@googlegroups.com.
> > To unsubscribe from this group, send email to
> > mongodb-user...@googlegroups.com<mongodb-user%2Bunsubscribe@google groups.com>
> > .

Eliot Horowitz

unread,
Sep 6, 2010, 1:31:29 PM9/6/10
to mongod...@googlegroups.com
Easy to check to see if your'e client or db bounce.  If the driver is at 100% cpu, that's probably the bottleneck and you won't get great numbers.

You also may want to take a look at this:

We use that internally and it does a lot of similar things.

To unsubscribe from this group, send email to mongodb-user...@googlegroups.com.

Justin

unread,
Sep 6, 2010, 3:32:47 PM9/6/10
to mongodb-user
Getting an error ' Error: can't find library: mongoclient '

Eliot Horowitz

unread,
Sep 6, 2010, 10:36:12 PM9/6/10
to mongod...@googlegroups.com
You have to build and install the c++ driver to use this.

To unsubscribe from this group, send email to mongodb-user...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages