Giter Site home page Giter Site logo

Comments (7)

priitj avatar priitj commented on September 23, 2024

Sure, that would be nice.

  1. get YCSB (https://github.com/brianfrankcooper/YCSB) and set it up with the engines you intend to benchmark
  2. read java/jni/Readme.txt in WhiteDB repo on how to compile the Java wrapper (not present in the distribution)
  3. get the YCSB wrapper for WhiteDB (http://whitedb.org/code/WhiteDBClient.java). It has some instructions inside on how to compile and run it. Note that "-p whitedb.shmsize=xxxxxx" is probably needed (xxxxxx is segment size in bytes, 500M was used for the benchmark published on the site).
  4. all the rest of the details (what workloads, db sizes, throughputs etc) should be included in the benchmark report PDF on the whitedb site.

from whitedb.

thedrow avatar thedrow commented on September 23, 2024

Could you please make a script that allows me to focus on the benchmarking itself?

from whitedb.

tammet avatar tammet commented on September 23, 2024

Drow, two small remarks. First, we are unlikely to start programming specific scripts or tools simply to help people interested in one issue or another: if we did, we had no time left for developing the system itself. Second, if you look at the simple one-core benchmarks, you notice that the speed of whitedb operations is rather high, which translates to the observation that the number of processes in a parallel scenario is likely to be much lower than, say, for conventional relational bases: the database ops of these parallel processes will be executed very quickly and they will be left doing all kinds of additional work outside whitedb.

from whitedb.

thedrow avatar thedrow commented on September 23, 2024

You have a benchmark script for a single core. I don't see a reason why there shouldn't be one for multiple cores.

from whitedb.

tammet avatar tammet commented on September 23, 2024

You mean the simple single-core speed tests or the multi-core Yahoo benchmarks Priit comments on above?

from whitedb.

priitj avatar priitj commented on September 23, 2024

The scripts do exist, I've put them here: http://whitedb.org/code/ycsbwrappers.tgz.

Now, to clear up some misconceptions.

First, the benchmark wasn't run on a single core. It was run on 4 cores, it says so plainly in the report. What Tanel meant was the single-thread tests which obviously run on a single core effectively.

Second, the throughput graph in the last part of the report, over number of threads isn't necessarily representative of a webserver load. It's 2x the number of available cores threads, hammering away at full throttle. It is clear that all of the tested engines are overloaded under these conditions. If it isn't clear than consider this: while the number of attempted requests INCREASES, the number of actually serviced requests DECREASES. This reported issue was helpful in that I've realized that this part might be misleading for people - in a webserver scenario this would mean clients are timing out already.

I suggest to try something like 2-64 threads, with lowered throughput, such as 100 ops per second (or whatever is representative of the webserver you're considering a typical target, keeping in mind the overhead created by YCSB itself).

from whitedb.

thedrow avatar thedrow commented on September 23, 2024

@priitj Great! Thanks. I'll create a pull request that will add this link to the documentation.
Can you describe what exactly needs to be done to run these scripts (except installing YCSB) or should I figure this out myself?

from whitedb.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.