MySQL ndbcluster - Man, why is it so slow!
Posted by:
Robert Dye
Date: April 09, 2009 09:06PM
Hello,
I am evaluating the possible use of NDB in a very write intensive environment. I need to sustain 4,000 writes per second, and be able to handle peaks of 20,000. In testing a multi-threaded Perl application, I noticed a really slow response time for every test I did! In comparison, MyISAM was more than twice as fast with the same amount of simple insert queries. Let me describe my test environment:
-Ubuntu LTS 8.04 64bit
-sysctl Optimized for Network Throughput
-my.cnf Optimized for High Connection count
config.ini - Not sure what to put in here except basic datamemory options. . .
----------------------
test1.domain (1-Quad Core - 4G RAM - 72 Raid(1))
- /mysql/bin/mysqld_safe
- /mysql/bin/ndb_mgmd
test2.domain (1-Quad Core - 4G RAM - 72 Raid(1))
- /mysql/bin/ndbd
test3.domain (1-Quad Core - 4G RAM - 72 Raid(1))
- /mysql/bin/ndbd
create table testTable(uid BIGINT primary key, data BLOB(8192)) engine=ndbcluster;
Test Query:
insert into testTable(uid, data) VALUES(?,?)
The test query will run in parallel with approximately 8 total threads, hammering the single MySQLd node with multiple insert queries. The end result: Approx 1,500 writes per second. . . MyISAM I was able to acheive 3,500+
So! The question - I hear of people getting 20,000 writes per second, but from my testing that sounds near impossible. Any ideas/suggestions/config.ini options....anything to speed this thing up? I need to handle as many writes per second as possible.
P.S: I need this to work with 8K blob columns, and handle as many as 30million total records in one table.....It's part of the design requirement on my end.
Edited 1 time(s). Last edit at 04/09/2009 09:11PM by Robert Dye.