In ignite with mostly insert heavy work load, does adding nodes increase transaction throughput or decrease it?
Assuming that the caches are PARTIONED with Primary Sync.
I believe one of the important distinctions between ignite and RDBMS should be that Ignite should scale horizantally, whereas RDBMS for the most parts scales vertically.
Any tips on scaling out ignite transaction performance?
Your understanding is correct. The overall throughput should grow if you scale horizontally.
However in case of distributed transactions many factors can be a reason of why the performance doesn't grow significantly:
- the same locks are held by multiple pessimistic transactions;
- CacheConfiguration.setMaxConcurrentAsyncOperations is reached;
- transactions are mostly executed on a subset of nodes;
CacheConfiguration.setMaxConcurrentAsyncOperations :- Is it set per cache or in Ignite-Config on Node startup? I saw the defeault is 500, is it recommended that we use more in case we havent reached our CPU limit?