2012-01-22 8 views

risposta

146

Questo è indirizzata dal rispettivo FAQ Q: How does Amazon DynamoDB differ from Amazon SimpleDB? Which should I use? (link hash non funziona più, ma l'uso in-page Trova per individuare domanda all'interno della pagina) in una certa misura già, con il riassunto più compatto alla fine del paragrafo:

Mentre SimpleDB presenta limitazioni di ridimensionamento, può essere adatto per carichi di lavoro più piccoli che richiedono flessibilità di query. Amazon SimpleDB indicizza automaticamente tutti gli attributi degli articoli e supporta quindi la flessibilità della query al costo delle prestazioni e della scala.

quindi è un compromesso tra prestazioni/scalabilità e semplicità/flessibilità, vale a dire per gli scenari più semplici si potrebbe essere ancora più semplice Come iniziare con SimpleDB per evitare le complessità di ARCHITETTIAMO la vostra domanda di DynamoDB (vedi sotto per una prospettiva diversa).

la FAQ collegato riferimento Werner Vogel di Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications pure, che è davvero una lettura elaborata e quindi altamente consigliato relativo alla Storia della NoSQL su Amazon in generale e Dinamo in particolare; contiene molti altri approfondimenti che affrontano anche la tua domanda, ad es.

è diventato evidente che il controllo sviluppatori [anche gli ingegneri di Amazon] semplicità fortemente preferito a grana fine, come hanno votato "con i piedi" e hanno adottato soluzioni AWS cloud-based, come Amazon S3 e Amazon SimpleDB , oltre Dinamo. [miniera di oltre]

Ovviamente DynamoDB è stata introdotta per affrontare questo e potrebbe quindi essere qualificato come successore di SimpleDB piuttosto che 'solo' che modifica la loro attuale NoSQL offerta:

Abbiamo concluso che una soluzione ideale combinerebbe le parti migliori di design originale Dynamo (scalabilità incrementale, prestazioni elevate elevate) con le migliori parti di SimpleDB (facilità di amministrazione di un servizio cloud, coerenza e un modello di dati basato su tabella che è più ricco di un semplice archivio di valori-chiave).

di Sommario suggerisce DynamoDB per essere una buona misura per applicazioni di ogni dimensione ormai di conseguenza Werner:

Amazon DynamoDB è stato progettato per mantenere prevedibile alte prestazioni e di essere altamente costo efficace per i carichi di lavoro di qualsiasi scala, dalla alla più piccola delle applicazioni su scala Internet.

20

utilizzare SimpleDB o DynamoDB, dipende dal vostro caso d'uso, ho condiviso alcune delle mie esperienze usando SimpleDB in some cases instead of DynamoDB. In un altro prodotto, ho utilizzato sia SimpleDB che DynamoDB per archiviare dati diversi.

+13

è piaciuto il post - non sarebbe male per riassumerla qui –

+0

è piaciuto il post pure. @Mason, quali sono i tuoi pensieri su come SimpleDCB è lentamente scomparso dalla console del prodotto AWS? Stai ancora utilizzando SimpleDB o sei migrato? –

+1

@DavidRobbins SimpleDB potrebbe essere stato deprecato da AWS, ma è ancora lì e si adatta perfettamente ai miei dati modali. Non ho ancora eseguito la migrazione del mio codice e non ho intenzione di farlo. Ma per i nuovi prodotti, scelgo altri database come dynamodb o mysql. –

4

Una delle differenze era (indicando @Mason Zhang nel suo articolo precedente) nell'indicizzazione. DynamoDB utilizzato per limitare la creazione di indici al momento della creazione della tabella. Tuttavia, ora (dall'inizio del 2014), c'è il concetto di Global Secondary Index (GSI). Il GSI può essere creato sul tavolo in qualsiasi momento. Fino a 5 sono supportati. Quindi, l'indicizzazione non è più un problema di blocco per molti casi d'uso.

Si dovrebbe anche sapere che SimpleDB ha limiti di dimensioni e prestazioni. (10 GB e dire, 25 richieste/sec)

Forse alla fine, DynamoDB sostituirà SimpleDB in tutti i casi di utilizzo, ad eccezione dei casi più semplici.

0

In termini semplici entrambi i data store sono NoSql.

La differenza sta nella scalabilità (e in alcuni altri aspetti, ma il ridimensionamento porta il valore più grande a mio parere). SimpleDB è abbastanza simile a MongoDB ma ha un mucchio di limitations quando si tratta di ridimensionamento.

Ma DynamoDB consente di eseguire il provisioning di piccole dimensioni e di aumentare il throughput Provisioned necessario. E ridimensiona quando non è richiesto. (ad esempio durante una promozione, le iscrizioni ai referral di Celebrity, ecc. avranno un picco temporale di requisiti hardware)

2

SimpleDB sembra non ricevere alcun amore da Amazon in questi giorni - è difficile persino trovare dove Provalo nella Console AWS. Seems like SimpleDB is no longer being iterated on - usa DynamoDB come prima scelta per un database di documenti su AWS.

SimpleDb non è più realmente "iterato". Il che significa che non c'è alcun nuovo sviluppo in futuro per simpledb. È "supportato e supportato da ", ma non migliorerà.

+0

Impossibile migliorare in modo perfetto! – dividebyzero

0

credo che la differenza principale nella semplice DB vs Dynamo DB sono

  1. Prestazioni prevedibili in termini di latenza e essere in grado di gestire volumi elevati, senza compromettere la latenza e la velocità. DynamoDB raggiunge questo utilizzando la chiave di partizione
  2. Leggi, scrivere ottimizzazioni che possono essere personalizzati
  3. Meglio eventuale modello di coerenza perché l'uso di un algoritmo coerente hashing
0

3 principali differenze:

  1. Indicizzazione

    • SimpleDB crea l'indice per il campo "OGNI" in una tabella.
    • DynamoDB è necessario impostare i campi di indicizzazione prima di creare il database e non può essere modificato.
  2. Prezzi:

    • SimpleDB pricing si basa sulle ore di macchina e di stoccaggio
    • DynamoDB carica soldi per capacità di lettura/scrive i record per secondo.
  3. scalabilità:

    • SimpleDB richiede partizionamento manuale se la memorizzazione di dati supera 10GB.
    • DynamoDB distribuisce automaticamente i dati sotto il cofano, fornendo così una scalabilità molto elevata.