For the sake of expediency I’ll keep this post short and sweet.
Over the last few days I’ve been working pretty heavily with the back-end of WordPress in an effort to relieve some of the bloating that I’ve seen take place and it got me to thinking: why not just create a new database structure?
Looking at the API and how several of the database calls are made, it seems to be (theoretically) possible to remove the existing database and drop in another with a completely different schema, so long as the varying calls are updated to look at the new tables. One of the things that has been bugging the heck out of me on some of the WordPress forums is the number of people that bitch and moan about how bloated the database has become and how slow many of the queries are. While this might be true for people who are making use of horribly-designed themes and an excessive amount of plugins, most of us tend to have pretty snappy response times. That said, I have found a few ways to streamline the queries used by WordPress in order to eliminate excessive database calls, while still returning the same amount of data.
But now the hard part: making a new schema that will be compatible with existing versions of WordPress (well … 2.7+).
In the next few days I’ll be testing out some new schema designs and updating the 2.7 core files (using the beta) to see how well it can handle some loads, and perhaps then I’ll make the modifications available to anyone that wants to try something a little bit different. One thing is for certain, though … MySQL 5.0 or higher will be required in order for it to work.
It’s a shame that I can’t just update it to make use of Microsoft’s SQL Server … at least then I’d be playing with some home field advantage :P