Tuesday, March 10, 2009

Jquery meeting tomorrow/mysql yesterday

I was yesterday at Mysql meetup in Cambridge (mit campus) and was great (free pizza and coke)
http://www.meetup.com/mysqlbos/calendar/9675782/

I wish I had some code/presentation to do but my ideas are in the pre alpha stage
and had a lot of very long fights with configure scripts (not quite ready to the general public)
While there i could at last compile and setup the example_engine from mysql 5.1.x source so i will add the notes here on my blog.Also the skeleton engine now compiles fine (Yesterday I couldn't do configure on my jaunty )


In rest one talk was about java and converting xml message files to an mysql db and how to do that in real-time
He was using mysql on linux with some tips but i told him that for him is best if skips the all xml -> db transformation and it should
write data in mysql directly with simple inserts (100x times more efficient) sometimes too much orm/xml takes too much overhead
My summary and ideas that can be applied to firebird database too: avoid xml and orm if you want performance also avoid java too :)
also changing the Linux IO scheduler /file system cache can affect the performance and benchmarks and sometimes results can be weird
I would recommend for performance ext4 and for IO Scheduler to start tweaking and change it (do some benchmarks with each of them), If you have UPS and you trust it then disabling the ext4 journal would bring you more performance (not much)


The other presentation was an storage engine that is quite fast it seems to be done parts of it in memory but I guess that we need more details about that engine (source code)
http://blogs.tokutek.com/tokuview/2009/01/

My opinion after meetup:
at least if we don't care too much for transactions or advanced features then a memcache storage engine would beat anything but not all apps are the same
or there are benchmarks and benchmarks also usually people use myisam by default it's fast but no integrity - forget about ACID http://en.wikipedia.org/wiki/MyISAM, innodb is worse in performance and usually it takes a lot space (double than myisam)
if you want to do an snapshot for database you should use their tools or lvm , usually is not much better than myisam but at least you don't loose data
and you can do rollback , oh also for performance you have to tweak a lot of parameters and know the engine internals (good money for consultants this is the oracle way)
also if you have more that 8 cpus you are out of luck it doesn't scale as good as Falcon (Jim's words) and hard facts




Tomorrow I will attend to the jquery talk (free)
http://php.meetup.com/29/
and after that i will go to the python meeting (free)
http://python.meetup.com/181/


Also I have already donated 60$ to the Free Software Foundation and I will be at the conference
http://www.meetup.com/Libre-Planet-Boston-Free-Software/

No comments: