0
votes

I have several tens of thousands of related small entities (NDB atop of Master-Slave, will have to move to HRD one day..), which I'd like to put in the same entity group to enable transactions.

Small subsets of those entities will be updated by transactions.

What are the performance implications of this setup?

Does it mean the whole group gets locked during the update? I.e. one transaction at a time.

Thanks!

1

1 Answers

1
votes

There's an approximate performance limit of 1 write transaction per second to an entity group. The whole group does get locked for the update. A subsequent transaction will fail and retry.

10k entities in an entity group sounds like a lot, but it really depends on your write patterns. For example, if only a few entities in the group are ever updated, it may not be a big issue. However, if random users are constantly updating random entities in the group, you'll want to split it up into more entity groups.