REPLICATED caches network overhead?

classic Classic list List threaded Threaded
3 messages Options
steve.hostettler steve.hostettler
Reply | Threaded
Open this post in threaded view
|

REPLICATED caches network overhead?

This post was updated on .
Hello,

first let me wish you a happy new Year!

I am currently working with replicated and local caches and I observe a
strange behavior in my application. I do not know whether it is related to
my application or to ignite at this point and thus looking for information.

I have a REPLICATED cache (no backup) that is loaded once and for all and then have a
job running on the partitions and filling in a LOCAL cache.

On one K8S node, it takes 61s but when I add a second node it goes up to
168s for the same amount of work. These number are not significant in itself
but I fail to understand why it would be case. If anything I expected a
speedup since I double the number of cores and consume locally (because
replicated) and put locally (because LOCAL).

Interestingly enough, with one node the CPU is at 100% and with 2 it goes
down to 30% which is usually the sign for IOs.


Could you please:
1)Confirm that my assumption is correct and that reading from a replicated
cache that is not modified after loading and writing to a LOCAL cache should
be pretty linearly scalable to the number of nodes (ignoring the initial
rebalancing of the partitions)

2) someone tell me if we expect a lot of (technical) messages exchanged
between the nodes in this configuration.

Thanks a lot for your help


Edit:

Actually the cluster statistics show me the following:

sentMessagesCount: 13047193,
sentBytesCount: 3920278143,
receivedMessagesCount: 13047193,
receivedBytesCount: 3920278157

so 4GB of bytes with only replicated read only and local caches??????
Any idea from where this is coming from?

--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
steve.hostettler steve.hostettler
Reply | Threaded
Open this post in threaded view
|

Re: REPLICATED caches network overhead?

So in the mean time, I was able to confirm that there are messages sent to
another node about queries on replicated caches?

I get the following messages sent from node
1509c11f-c627-4696-a508-6b2c6bc99904 to 6b3b721d-611b-488e-bdbf-35a9dc16b8f0

GridH2QueryRequest [reqId=663310, caches=[-912644195],
topVer=AffinityTopologyVersion [topVer=2, minorTopVer=6], parts=null,
qryParts=null, pageSize=1024, qrys=[GridCacheSqlQuery [qry=SELECT
"XXX:0:XXX::5:20170430".__Z0._KEY __C0_0,
"DXX:0:XXX::5:20170430".__Z0._VAL __C0_1
FROM "XXX:0:XXX::5:20170430"."Entity_0" __Z0
WHERE (..... , mvccSnapshot=null, txReq=null]


That sounds extremely counter-intuitive to me. What would a sql query need
to send a message to another node for a replicated cache.

Does anyone have an idea?



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/
steve.hostettler steve.hostettler
Reply | Threaded
Open this post in threaded view
|

Re: REPLICATED caches network overhead?

So to close this one, the problem was because I did not set the
replicatedOnly flag on the query.



--
Sent from: http://apache-ignite-users.70518.x6.nabble.com/