Hello Anthony,
> applications with pgbench under different real-life-like load. So that
> they will be able to see what's going to happen on production.
>
> YCSB (Yahoo! Cloud Serving Benchmark) was taken as a concept. YCSB tests
> were originally designed to facilitate performance comparisons of
> different cloud data serving systems and it takes into account different
> application workloads like:
> workload A - assumes that application do a lot of reads(50%) and
> updates(50%).
> workload B - case when application do 95% of cases reads
> and 5% updates
> workload C - models behavior of read-only application.
> workload E - the workload of the applications which in 95% of cases
> requests for several neighboring tuples and in 5% of cases - does
> updates.
>
> In the patch those workloads were implemented to be executed by pgbench:
> pgbench -b ycsb-A
Could you provide a link to the specification?
I cannot find something simple, and I was kind of hoping to avoid diving
into the source code of the java tool on github:-) In particular, I'm
looking for a description of the expected underlying schema and its size
(scale) parameters.
Patch does not include any documentation, nor help, nor tests. It should.
+ "\\set write_weight 0\n"
+ "\\set operation random(1,:total_weight)\n"
+ "\\if (:operation < :write_weight)\n"
This is dead code:-( A lot of copy-paste between the cases, that should be
avoided if possible.
Note that pgbench already has a builtin weight management. I'd suggest
that the implementation could reuse it instead of reimplementing them
within these duplicated scripts.
Maybe add simple builtins (eg ycsb-read/write/...) for individual
transactions and a new --load=ycsb-A which would set the various
transactions with their expected weights.
A, B, C, E... What is missing to get the D bench as well?
--
Fabien.