Scalabilità economica:MySQL e MSSQL
-
09-06-2019 - |
Domanda
Quanto può essere economico MySQL rispetto a MS SQL quando hai tonnellate di dati (e join/ricerche)?Considera un sito come StackOverflow pieno di domande e risposte già e dopo essere stato scavato.
I miei siti ASP.NET sono attualmente su SQL Server Express, quindi non ho idea di come si possano confrontare i costi a lungo termine.Anche se, dopo una rapida ricerca, sto iniziando a invidiare i risparmi ottenuti da MySQL.
Soluzione
MSSQL Standard Edition (32 o 64 bit) costerà circa $ 5.000 per socket della CPU.64 bit ti consentirà di utilizzare tutta la RAM di cui hai bisogno.L'edizione Enterprise non è realmente necessaria per la maggior parte delle distribuzioni, quindi non preoccuparti dei $ 20.000 necessari per quella licenza.
MySQL è gratuito solo se si rinuncia a molti degli strumenti utili offerti con le licenze, e probabilmente (almeno a partire dal 2008) ci vorrà un po' più di lavoro per farlo scalare come SQL Server.
A lungo termine penso che spenderai molto di più in hardware e persone che solo nelle licenze.Se hai bisogno di crescere, probabilmente avrai il flusso di cassa per gestire $ 5.000 qua e là.
Altri suggerimenti
I vantaggi in termini di prestazioni di MS SQL rispetto a MySQL sono abbastanza trascurabili, soprattutto se li si mitiga con ottimizzazioni lato server e client come la memorizzazione nella cache del server (nella RAM), la memorizzazione nella cache del client (cache e intestazioni di scadenza) e la compressione gzip.
So che StackOverflow ha avuto problemi con deadlock dovuti a letture/scritture che arrivano a intervalli strani, ma sostengono che la loro architettura (MSSQL) regge bene.Questo ovviamente prima della beta pubblica e secondo il Twitter di Jeff oggi:
La gamma delle prime 32 domande più nuove/modificate è stata di circa 20 minuti nella beta privata;Ora sono circa 2 minuti.
Il fatto che il sito non si sia ancora bloccato è una testimonianza del database (oltre che della buona codifica e dei test).
Ma perché non pubblicare alcuni numeri specifici sul tuo sito?
MySQL è estremamente economico quando si dispone della distribuzione (o dello staff da creare) che supporta l'edizione MySQL Enterprise.Questa è una versione ad alta disponibilità che offre la replica multi-master su più server.
I vantaggi sono i bassi costi (di licenza) dopo l'acquisto iniziale dell'hardware (sono necessari giga di RAM!) e il tempo per la configurazione.
Gli svantaggi sono prestazioni non ottimali con molti join, nessuna indicizzazione del testo completo, procedure memorizzate (credo) e la necessità di replicare le sovvenzioni su ogni nodo master.
Tuttavia è più semplice da eseguire rispetto alla configurazione di replica/bilanciamento proxy disponibile per PostgreSQL.