È passato un po 'di tempo da quando ho esaminato tutte queste cose, quindi le cose potrebbero essere cambiate negli ultimi 3 o 4 mesi.
RDS è fondamentalmente una versione preconfezionata di MySQL su servizi Amazon. Non è necessario preoccuparsi di alcuna configurazione o manutenzione del server; si prendono cura di tutto questo per te. Puoi acquistare/affittare lo spazio/le prestazioni in base alle tue esigenze e ti vengono date le garanzie di uptime da Amazon e si prendono cura della sicurezza dei dati (ad esempio: replica, backup, ecc.). Vorrei comunque raccomandare che tu faccia i tuoi discarichi per i tuoi scopi di backup, a meno che non sei disposto a riporre tutta la tua fiducia in Amazon Cloud (immagino dipenda dal tipo di informazioni che hai intenzione di archiviare)
EC2, d'altra parte, è un server vergine, con qualsiasi sistema operativo (sono dotati di appliance preconfezionate con CentOS/Win disponibili). Qui, sei da solo con qualunque cosa tu faccia. Se si desidera eseguire MySQL, è necessario installarlo, configurarlo e gestirlo autonomamente. Se si desiderano dati replicati, è necessario creare una seconda istanza come slave e verificare che lo slave sia sincronizzato. Si potrebbe, a tutti gli effetti, installare MySQL Enterprise se si desidera ottenere alcuni dei benefici Enterprise, ma non è necessario farlo. I vantaggi di seguire la rotta EC2 è che si ha il pieno controllo sulla configurazione del DB, compresi eventuali miglioramenti delle prestazioni che si desidera eseguire. Inoltre, è possibile installare il cluster MySQL se necessario. Lo svantaggio è che si deve eseguire da soli l'amministrazione completa del sistema, inclusi manutenzione del sistema operativo, sicurezza, patch, ecc.
C'è anche un differenziale di costo tra i due. Se è necessario migrare su un DB di grandi dimensioni (spazio su disco o prestazioni), è più semplice apportare piccole modifiche incrementali a livello di EC2 rispetto a RDS.
Con EC2, esistono raccomandazioni per eseguire il backup di tutto per l'archiviazione S3 in quanto non è garantito che l'archiviazione EC2 venga mantenuta in tutti i casi. Non ricordo dove ho letto/visto quell'oscura informazione, ma qualcosa che ho sempre ricordato. Quindi c'è anche un costo aggiuntivo se si vuole costruire una solida infrastruttura.
Alla fine, si tratta di se si vuole fare da soli ed essere responsabili di tutto tranne l'hardware stesso, o si vuole che qualcun altro si preoccupi di tutte le configurazioni del software/backup/etc, ma si usa semplicemente il DB.
Spero che questo aiuti.
Alcune correzioni: (1) RDS non è un "server DB condiviso"; ottieni un'istanza dedicata della dimensione specificata. (2) RDS fornisce la possibilità di eseguire ripristini da un'istantanea specifica o da un punto temporale basato su istantanee e registri delle transazioni. (3) È facile creare il tipo di istanza e le modifiche alle dimensioni del disco in RDS. (4) Lo storage EC2 è persistente se si utilizzano i volumi EBS per il proprio database come Amazon fa con RDS. –
Grazie. Dobbiamo utilizzare il datapipe per il servizio gestito, ma cercare di capire l'opzione migliore. Abbiamo alcuni requisiti di configurazione per mysql, my.cnf vuol dire che con rds non siamo in grado di farlo? – flyclassic
@EricHammond: è facile apportare modifiche all'istanza, tuttavia si è limitati alle relative definizioni di istanza. Non è possibile scegliere casualmente qualcosa che non rientra nei loro criteri di dimensionamento "piccolo/medio/grande/ecc." (Non ricordo i difetti di dimensionamento esatti). Non mi ero reso conto che avevi la tua istanza dedicata; Sono sempre stato d'accordo (non ho mai trovato alcuna informazione per confermare o dissipare l'idea) che tu fossi abbinato a un'istanza esistente. D'accordo - lo storage EC2 è persistente con EBS; tuttavia, devi sapere e capire come configurare tutto te stesso in modo appropriato. –