Monday, April 30, 2007

Fun, NewMySQL Storage Engine

In the spirit of the recent MySQL Conference, I decided to have some fun and make a MySQL Storage Engine that would be of practical use. My idea is that so, so much information is available through, say, /proc on Linux and FreeBSD that it is a shame there isn't a convenient way to get to it short of ssh or (shudder) snmp. So, I made a little storage engine that turns arbitrary files into MySQL tables. It supports basic things like space separation to derive columns, etc. Pretty simple, but I'm amazed how easy it was and how useful it could be.

Enjoy!

http://code.google.com/p/mysql-filesystem-engine/

Ideas for files to watch:


  • /proc/mdstat - how is your software RAID array doing? any bad disks?

  • /proc/megaraid/* - how is your hardware RAID controller?

  • /proc/meminfo - watch memory on your MySQL in depth

  • /etc/lsb-release - identify your server's OS easily



As an upshot, it gives me a chance to play more with Project Hosting on code.google.com; it's come a long way, and it really made getting code out there much easier than manually setting up SVN, a web site, etc would have.

2 comments:

burtonator said...

This is actually an interesting idea. With the lbpool driver I needed a solid way to get IO and system load information to handle rebalancing the cluster.

With a new storage engine I could easily get hte information instead of having to make a guess.....

Chris said...

Neato... also an actual post... I'm stunned! --stick