Mise à l'échelle à moindre coût: MySQL et MS SQL

À quel point MySQL peut-il être comparé à MS SQL quand vous avez des tonnes de données (et joint / search)? Considérons un site comme stackoverflow plein de questions et réponses déjà et après avoir été bousculé.

Mes sites ASP.NET sont actuellement sur SQL Server Express, donc je n'ai aucune idée de la façon dont les coûts se comparent à long terme. Bien qu'après une search rapide, je commence à envier les économies que les gens de MySQL obtiennent.

MSSQL Standard Edition (32 ou 64 bits) coûtera environ 5K $ par socket CPU . 64 bit vous permettra d'utiliser autant de RAM que nécessaire. Enterprise Edition n'est pas vraiment nécessaire pour la plupart des deployments, alors ne vous inquiétez pas des 20K $ dont vous auriez besoin pour cette licence.

MySQL n'est gratuit que si vous renoncez à un grand nombre des outils utiles offerts avec les licences, et c'est probablement (au less à partir de 2008) qu'il faudra travailler un peu plus pour le faire évoluer comme Sql Server.

À long terme, je pense que vous dépenserez beaucoup plus pour le matériel et les gens que pour les licences. Si vous avez besoin de l'échelle, alors vous aurez probablement les stream de trésorerie pour gérer 5K $ ici et là.

Les avantages des performances de MS SQL par rapport à MySQL sont assez négligeables, surtout si vous les atténuez avec des optimizations côté server et client telles que la caching du server (en RAM), la caching client (cache et expiration des en-têtes) et la compression gzip.

Je sais que stackoverflow a eu des problèmes avec des blocages de lectures / écritures arrivant à des intervalles impairs, mais ils prétendent que leur architecture (MSSQL) tient bien. C'était avant la bêta publique bien sûr et selon le twitter de Jeff plus tôt aujourd'hui:

la plage des 32 questions les plus récentes / modifiées était d'environ 20 minutes dans la version bêta privée; maintenant c'est environ 2 minutes.

Que le site n'a pas encore planté est un témoignage de la database (ainsi que de bons encodings et tests).

Mais pourquoi ne pas postr des numbers spécifiques sur votre site?

MySQL est extrêmement bon marché quand vous avez la dissortingbution (ou le personnel à build) qui supporte l'édition MySQL Enterprise. C'est une version à haute disponibilité qui offre une réplication multi-maître sur de nombreux servers.

Les avantages sont faibles (licence) coûts après l'achat initial de matériel (Gigs de RAM nécessaire!) Et le time de mettre en place.

Les inconvénients sont des performances sous-optimales avec de nombreuses jointures, pas d'indexing de text intégral, des process stockés (je pense) et un besoin de répliquer des allocations à chaque nœud maître.

Pourtant, il est plus facile à exécuter que l'installation de réplication / équilibrage de proxy disponible pour PostgreSQL.