Embora essa questão pareça contrariar o princípio "Evite fazer perguntas subjetivas ou argumentativas" do site, não resisto a uma resposta.
Depende.
Estão falando sobre uma configuração de servidor único que é dimensionada para conjuntos de dados muito grandes?
Ambos podem funcionar nessa situação, dependendo do conjunto de dados, mas nenhum deles provavelmente terá um desempenho muito bom sem configuração personalizada e planejamento adequado. Na minha experiência ao trabalhar em grandes conjuntos de dados com muitas gravações, descobri que o Postgres tem menos condições que causam bloqueio e o desempenho geral é melhor.
Você está falando sobre configurações multi-servidor que escalam para muitos escravos para muitos leitores?
O MySQL tem sido historicamente considerado o líder neste espaço, já que ele vem com replicação assíncrona embutida. Isso não é mais o caso se você não se opuser a usar o mais novo software de banco de dados; O Postgres agora também está integrado com o lançamento do 9.0. Minhas experiências com a replicação do MySQL foram mais que adequadas a este ponto.
Você está falando sobre configurações de vários servidores que são escaladas para muitos mestres para muitos escritores?
Essa é, de longe, a maneira mais difícil de dimensionar o produto e, muitas vezes, pode ser evitada com o uso de servidores de failover. Se você realmente precisa escalar para alta disponibilidade de servidores master, addons / instalações alternativas não podem ser evitados. Para o MySQL existe o MySQL Cluster NDB que tem uma opção de código aberto ou um versão comercial . Para o Postgres, existem muitos addons que podem obter níveis variados de HA e pooling
A longo prazo, o escalonamento de seu banco de dados geralmente se resume ao planejamento de projetos. Se o seu aplicativo for projetado tendo em mente a escala, o sistema de banco de dados que melhor corresponda aos seus desenvolvedores é geralmente a melhor opção.