List:Cluster« Previous MessageNext Message »
From:Alex Wheeler Date:August 13 2004 1:07pm
Subject:Performance
View as plain text  
I have a 4 node, 4 computer setup, 2 of the nodes having an API, each
computer having 1GB RAM, and using GigE.

Here's my create table statement:

CREATE TABLE `http_auth` (

  `username` char(8) NOT NULL default '',

  `uid` int(11) NOT NULL default '0',

  PRIMARY KEY  (`username`)

) ENGINE=ndbcluster

 

Running the following 'gen-data' command:

gen-data -n 500000 -f "INSERT INTO http_auth VALUES (' %8-8s',%n),...,
(' %8-8s',%n);"

(where the ... represents 18 more value pairs, for  a total of 20
pairs.)

piped through 'mysql', I get about 11,000 inserts/second, for a total of
10,000,000 rows.

 

If I run the same test with 2 clients on 1 mysqld instance, dividing the
number of inserts for each client by 2, I get an average of 14,000.

If I run the same test, but with 2 instances of mysqld, running on 2
different computers, I get about 22,000.  Effectively double what I got
with 1 client.

 

Can I safely presume that by using 3 instances, I'd get around 33,000,
and with 4 around 44,000 given that the average CPU load for 1 client is
about 20% utilization, and with 2 clients about 40% utilization?

 

Is this how the cluster is supposed to work, or is this what the
mysqld-to-ndb optimizations would address?

 

 

--

Alex Wheeler

 


Thread
PerformanceAlex Wheeler13 Aug
  • Re: PerformanceMagnus Svensson16 Aug
  • Re: PerformanceMikael Ronström16 Aug
RE: PerformanceAlex Wheeler17 Aug