You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Semen Boikov (JIRA)" <ji...@apache.org> on 2016/04/06 10:01:25 UTC

[jira] [Created] (IGNITE-2952) Add yardstick benchmark for cache load testing

Semen Boikov created IGNITE-2952:
------------------------------------

             Summary: Add yardstick benchmark for cache load testing
                 Key: IGNITE-2952
                 URL: https://issues.apache.org/jira/browse/IGNITE-2952
             Project: Ignite
          Issue Type: Test
            Reporter: Semen Boikov


Need implement yardstick benchmark which will be used for cache load testing (add it in 'yardstick' module).

For this load testing nodes will be started with several pre-configured caches. Benchmark on each call of 'test' method should iterate over all configured caches (can get list of caches using Ignite.cacheNames) and execute some random operations:
- put(All)
- get(All)
- invoke(All)
- remove(All)
- putIfAbsent
- replace
- scan query

If cache is transaction also should execute cache operations inside explicitly start transaction with random concurrency/isolation mode.

It can run in scenario when server nodes are restarted, so for explicit transaction need use method IgniteBenchmarkUtils.doInTransaction which has logic for exception handling.

It should be possible to pre-load some cache data before starting test , there should be special benchmark parameter which specifies how many entries load in caches on start (see IgniteSqlQueryBenchmark.setUp as example of benchmark doing preloading)

Also it should use non-primitives objects as cache keys/values. Value class should have String, int, long, double, byte[] fields.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)