Looks like MySQL 5.1 has some great "Horizontal Partitioning" (which if done across systems = sharding). Here is a great article showing how much it can help: http://dev.mysql.com/tech-resources/articles/performance-partitioning.html
In anticipation of larger databases I am looking into sharding (splitting bigger databases into smaller databases based on an index, like last names starting with A-F on server-1, G-L on server-2, etc...). Has anyone implemented anything like this in Rails?
Ideally there would be a gem or plugin that would allow total transparency of this in the code, with some sort of YML config file explaining shard preferences. If only I was a better coder! Anyone up to it? Does anything like this exist?