REALLYLINUX: Mike, can you perhaps speak to the specific critical facets you see for effectively scaling the mid-tier (database) for web sites?
Mike O’Connor: While Postgres is our typical choice for a database back end component, we also use Mysql for some Drupal deployments.
However with respect to scaling a database layer, in both cases the task comes down to careful choice of appropriate hardware (amount of memory, cpu cores, IO subsystem type and layout), followed by tuning various parameters for the database product concerned. Both Mysql and Postgres scale very well with the usual number of cpu cores available in mainstream hardware.
A limited degree of scale-out is possible by means of replication to one or more additional nodes, but currently neither of the two database products above have true “cloudy” – multi master sharded or single master self managing sharded configurations that we can generally use (note our applications are typically not certified with Mysql cluster).