Splitting posts+pages and attachments into separate tables
|Reported by:||dtorbert||Owned by:||ryan|
|Component:||Database||Keywords:||wp_posts attachments partition|
Right now, every post, page, or attachment is stored in the wp_posts table. This means that if you have 10,000 images and 50 posts+pages, every time you go to view a post or a page, it's querying a 10,000-row table instead of a 50-row table.
The table could be split into wp_posts and wp_attachments, then if a query needed to be run that really did require searching both, you would use a view instead.
Written correctly, the schema could be written to allow other kinds of logical partitioning (eg, partitioning post tables by year).