Thank you. A DS made a huge difference. Now I have 8 nodes with a cache
configured for one backup and it takes abut 15 seconds to load the 100k
records. Not perfect but much better than minutes. Regarding transactions, I
presume that wrapping the whole put operation in a tx.begin() and
tx.commit() will make those nodes visible only after txn commit.
IgniteTransactions transactions = ignite.transactions();
try (Transaction tx = transactions.txStart()) {
try (IgniteDataStreamer<PIDDetailsKey, PIDDetails> ds =
ignite.dataStreamer(CACHE_NAME)) {
for (PIDDetails details : details.values()) {
ds.addData(details.getKey(), details);
}
}
tx.commit();
}
and it seems to work. My use case is as follows:
1) For a given account, load transaction details and create the proper
PIDDetails
2) Load all the PIDDetails into the cache
3) Commit the transaction to make visible to all
There can only be account loader for a given account Id which I am planning
to use an account lock for enforcement.
--
View this message in context:
http://apache-ignite-users.70518.x6.nabble.com/Performance-Degredation-when-adding-more-nodes-tp5575p5615.html
Sent from the Apache Ignite Users mailing list archive at Nabble.com.