Pop Quiz: MySQL Cluster
March 15th, 2008 - by Sheeri CabralIf you have a 12-server MySQL Cluster with:
1 Management Node
3 SQL Nodes
2 Data Node Groups, 4 Data Nodes per group
And each machine is configured to allocate 1G of memory for its function, how much data (data + indexes) can you store in total in your cluster?
You can guess, but you get bonus points if you explain why and the explanation is correct.
Tags: cluster • memory • MySQL • mysql cluster







March 15th, 2008 at 3:43 pm
Slightly less than 2GB of usable DataMemory+IndexMemory
All nodes in a node group will be identical replicas. So each node group will only hold 1GB. Your usable memory is limited by the number of node groups you have. You will also use some memory for operation records and log buffers (MaxNoOfConcurrentOperations, RedoBuffer, UndoDataBuffer, etc…)
p.s. 4 nodes per node group is not so thoroughly tested and just plain silly.
[[Matthew — you’re right! BTW, I only used 4 nodes per node group so I could have a 2,3,4 pattern — easier to understand if it’s something multiplied or divided by 2, 3 or 4 then it relates to that. I could have said 4 node groups with 2 nodes in each group instead.]]
March 16th, 2008 at 1:14 am
2GB? Each node group would have 1GB of memory since they share the same data and there’s 2 of them?
[[Artem — you are correct!]]
March 16th, 2008 at 3:52 am
4GB. Data is stored in data nodes (8 nodes total). Each node has 1/2 of memory dedicated to live dataset and the other half to redundant dataset.
March 18th, 2008 at 10:49 pm
Matic — nope, that’s not it. See the other 2 comments before yours for the correct answer, and why.
March 19th, 2008 at 7:16 pm
Hehe, it looks as if I just copied the answer above mine, but in reality it’s because none of the comments were visible at the time :-]
March 21st, 2008 at 11:55 am
[…] the MySQL world, Sheeri Cabral challenges anyone who thinks they know MySQL to a pop-quiz. She asks, “If you have a 12-server MySQL Cluster with: 1 Management Node, 3 SQL Nodes, 2 […]