Video: Azure Friday | Introducing Azure DB for PostgreSQL 2024
AWS RDS supporta un numero di motori di database. Ovviamente, il supporto di un singolo RDBMS potrebbe a prima vista sembrare un trucco, perché in sostanza fanno la stessa cosa. Tuttavia, è necessario considerare una serie di fattori quando si sceglie un motore di database. Questi fattori includono (in ordine di importanza):
- L'RDBMS attualmente utilizzato per la maggior parte dei progetti esistenti
- Esigenze di codifica, come la capacità di eseguire script in modi specifici
- Necessità di interoperabilità, specialmente quando si lavora con altri organizzazioni
- Esigenze di automazione, come la capacità di eseguire script in risposta a eventi o in un momento specifico
- Problemi di sicurezza che potrebbero ignorare altre esigenze di archiviazione dei dati
- Requisiti di dimensione o tipo di memoria dati
- Requisiti di gestione
Per gli sviluppatori, la travolgente prima priorità nella scelta di un RDBMS sta utilizzando lo stesso database utilizzato dall'organizzazione per garantire una transizione graduale dal test all'ambiente di produzione. Un'eccezione a questa regola si verifica quando l'organizzazione prevede di consolidare i prodotti RDBMS e si sta quindi spostando verso un nuovo prodotto per soddisfare esigenze specifiche. Dato che il numero di motori RDBMS disponibili oggi è enorme, è improbabile che RDS li supporti mai tutti. Al momento della stesura di questo documento, RDS supporta sei motori di database, ognuno dei quali ha caratteristiche a suo favore, come spiegato nel seguente elenco:
- Amazon Aurora: Questo prodotto è essenzialmente un clone MySQL. Se ti piace MySQL, probabilmente ami anche Amazon Aurora. Tuttavia, in base a numerosi siti, Amazon è riuscita a rendere Aurora più veloce, più scalabile e inclusivo di una serie di interessanti funzionalità aggiuntive. Ovviamente, paghi anche un prezzo più alto per Amazon Aurora, quindi se non hai bisogno di funzionalità extra, usare MySQL è probabilmente una scelta migliore. Gli articoli di 2ndWatch e di Ivan Zoratti forniscono un confronto più dettagliato di Amazon Aurora con MySQL.
- MariaDB: Questo è un altro clone MySQL, ma ha anche un numero significativo di funzionalità aggiuntive. È necessario considerare alcune importanti differenze quando si sceglie questo prodotto. Per prima cosa, MariaDB è puro open source, il che significa che utilizza un'unica licenza che è più facile da gestire rispetto a MySQL. Tuttavia, a causa delle licenze, i clienti aziendali gestiscono implementazioni open source equivalenti in MariaDB (come il pool di thread), invece delle implementazioni originali di MySQL, che possono causare problemi di compatibilità. MariaDB è attualmente bloccata su MySQL 5. 5 livello, quindi potresti non avere accesso alle funzionalità MySQL più recenti necessarie per far funzionare la tua applicazione.
- MySQL: Questo prodotto non è vecchio come alcune delle altre offerte RDBMS supportate da Amazon, ma serve come standard per la valutazione di altri prodotti. Il problema di essere il leader è che tutti ti prendono a pugni e cerca di destabilizzare i tuoi clienti, il che è esattamente ciò che sta succedendo a MySQL. Puoi leggere alcuni dei pro e contro della scelta di MySQL. Il fatto è che MySQL definisce lo standard, quindi probabilmente fornisce la piattaforma più stabile e affidabile che è possibile scegliere quando questi problemi sono la preoccupazione principale.
- Oracle: Questo prodotto esiste da anni, quindi ha una lunga storia di supporto e flessibilità. Ciò che distingue Oracle da alcuni altri prodotti, come MySQL e SQL Server, è che gli amministratori e gli sviluppatori di Linux tendono a preferirlo. Come con MySQL, Oracle è uno standard setter che a tutti piace confrontare con altri prodotti, anche quando questi confronti non sono una buona corrispondenza. A differenza di altri prodotti in questo elenco, la visualizzazione di Oracle Cloud come prodotto separato dalla configurazione aziendale è essenziale; i due prodotti non sono completamente compatibili e hanno diversi set di funzionalità. Puoi trovare alcuni pro e contro dell'utilizzo di Oracle Cloud.
- PostgreSQL: Questo è un prodotto combinato in quanto la maggior parte delle persone lo vede come una versione open source di Oracle ma fa anche di tutto per compararlo con MySQL. Sviluppatori come PostgreSQL perché forniscono un numero significativo di funzionalità che MySQL non tende a supportare. Inoltre, la transizione per gli sviluppatori da Oracle o SQL Server è relativamente facile perché PostgreSQL tende a seguire il loro esempio. Tuttavia, MySQL tende a fornire una migliore facilità d'uso ed è un po 'più veloce di PostgreSQL. Puoi trovare alcuni pro e contro interessanti su questo prodotto a Anchor e DigitalOcean.
- SQL Server: Questo prodotto fornisce funzionalità RDBMS essenziali con un numero considerevole di componenti aggiuntivi. La cosa importante da ricordare su SQL Server è che Microsoft lo ha creato per Windows, e tutto ciò che riguarda questo prodotto riflette quell'inizio. In generale, gli amministratori ritengono che lavorare con SQL Server sia relativamente facile a meno che non debbano utilizzare una vasta gamma di tali componenti aggiuntivi. Sviluppatori come SQL Server perché si integra bene con i prodotti in lingua Microsoft. Puoi leggere pro e contro su questo prodotto su InfoWorld, The Register e SQLServerF1.
Anche con questa breve panoramica delle varie scelte, è possibile vedere la necessità di ricercare completamente la propria scelta RDS prima di impegnarsi in una particolare opzione. In alcuni casi, potrebbe essere necessario configurare una configurazione fittizia ed eseguire test per vedere quale opzione funziona meglio per la tua particolare applicazione. Dopo aver iniziato a riempire l'RDBMS con dati del mondo reale, passare a un altro motore di database è in genere un'attività costosa, soggetta a errori e dispendiosa in termini di tempo. Lo sviluppatore intelligente impiega più tempo a fare una buona scelta all'inizio, piuttosto che scoprire che una particolare scelta è un errore dopo che l'applicazione si è spostata nelle fasi di sviluppo (o, peggio ancora, di produzione).