2012-01-22 17 views

Respuesta

146

Esto es abordado por la AYUDA respectiva Q: How does Amazon DynamoDB differ from Amazon SimpleDB? Which should I use? (enlace de hash ya no funciona, pero su uso en la página Buscar para localizar cuestión dentro de la página) hasta cierto punto ya, con el resumen más compacta al final del párrafo:

Aunque SimpleDB tiene limitaciones de escala, puede ser una buena opción para cargas de trabajo más pequeñas que requieren flexibilidad de consulta. Amazon SimpleDB indexa automáticamente todos los atributos de los elementos y, por lo tanto, admite la consulta de flexibilidad a costa del rendimiento y la escala.

Por lo tanto, es una solución de compromiso entre rendimiento/escalabilidad y simplicidad/flexibilidad, es decir, para los escenarios más simples aún podría ser más fácil Primeros pasos con SimpleDB para evitar las complejidades de architecturing su solicitud de DynamoDB (ver más abajo para una perspectiva diferente)

La entrada de la FAQ ligado hace referencia a Werner Vogels de Amazon DynamoDB – a Fast and Scalable NoSQL Database Service Designed for Internet Scale Applications, así, que es de hecho una lectura elaborada y por lo tanto muy recomendable en relación con la historia de NoSQL en Amazon en general y, en particular, Dynamo; contiene muchas más ideas que abordan su pregunta también, p.

Se hizo evidente que el control de los desarrolladores [incluso los ingenieros de Amazon] simplicidad fuertemente preferido de grano fino, ya que votaron "con los pies" y adoptaron soluciones de AWS basados ​​en la nube, como Amazon S3 y Amazon SimpleDB , sobre Dynamo. [mía Además]

Obviamente DynamoDB se ha introducido para hacer frente a esto y por lo tanto podría ser calificado como un sucesor de SimpleDB en lugar de 'sólo' se modifica su oferta NoSQL existente:

Llegamos a la conclusión de que una solución ideal combinaría las mejores partes de el diseño original de Dynamo (escalabilidad incremental, alto rendimiento predecible de ) con las mejores partes de SimpleDB (facilidad de administración de un servicio en la nube, consistencia y un modelo de datos basado en tablas que es más rico que un almacén de clave-valor puro).

de Resumen sugiere DynamoDB para ser un buen ajuste para aplicaciones de cualquier tamaño ahora en consecuencia Werner:

Amazon DynamoDB está diseñado para mantener predeciblemente alto rendimiento y para ser altamente eficiente en costo para cargas de trabajo de cualquier escala, desde hasta las aplicaciones más grandes de escala de Internet.

20

use SimpleDB o DynamoDB, depende de su caso de uso, compartí algo de mi experiencia usando SimpleDB in some cases instead of DynamoDB. En otro producto, utilicé SimpleDB y DynamoDB para almacenar diferentes datos.

+13

gustado el post - No estaría de resumir aquí –

+0

gustado el post también. @Mason, ¿qué piensas sobre cómo SimpleDCB ha desaparecido lentamente de la consola de productos de AWS? ¿Sigues usando SimpleDB o has migrado? –

+1

@DavidRobbins SimpleDB podría haber sido desaprobado por AWS, pero sigue ahí y se ajusta perfectamente a mi modalización de datos. No he migrado mi código todavía, y no planeo hacerlo. Pero para nuevos productos, elijo otras bases de datos como dynamodb o mysql. –

4

Una de las diferencias solía ser (como dice @Mason Zhang en su artículo anterior) en la indexación. DynamoDB solía limitar la creación de índices en el momento de crear la tabla. Sin embargo, ahora (desde principios de 2014), existe el concepto de Índice Secundario Global (GSI). El GSI se puede crear sobre la mesa en cualquier momento. Hasta 5 son compatibles. Por lo tanto, la indexación ya no es un problema de bloqueo para muchos casos de uso.

También debe saber que SimpleDB tiene límites de tamaño y rendimiento. (10GB y digamos, 25 solicitudes/seg.)

Quizás eventualmente, DynamoDB reemplace SimpleDB en todos los casos de uso menos en los más simples.

0

En términos simples, ambos almacenes de datos son NoSql.

La diferencia radica en la escalabilidad (y algunos otros aspectos, pero el escalado tiene el mayor valor en mi opinión). SimpleDB es bastante similar a MongoDB pero tiene un montón de limitations cuando se trata de escalar.

Pero DynamoDB le permite aprovisionar productos pequeños y ampliar el rendimiento previsto que necesite. Y reduzca la escala cuando no se requiera. (es decir, durante una promoción, los registros de referencia de famosos, etc escenarios como este tendrán un pico de requisitos de hardware basado en el tiempo)

2

SimpleDB no parece estar recibiendo ningún amor de Amazon en estos días, es difícil incluso encontrar dónde provisión en la Consola de AWS. Seems like SimpleDB is no longer being iterated on: utilice DynamoDB como su primera opción para una base de datos de documentos en AWS.

SimpleDb ya no se "itera". Lo que significa que no hay nuevo desarrollo en el futuro para simpledb. Se "mantiene y admite ", pero no mejorará.

+0

No se puede mejorar en perfecto! – dividebyzero

0

creo que la principal diferencia en simple vs Dynamo DB DB son

  1. Rendimiento previsible en términos de latencia y ser capaz de manejar grandes volúmenes sin comprometer la latencia y rendimiento. DynamoDB logra esto mediante el uso de la partición clave
  2. Leer, escribir optimizaciones que se pueden personalizar
  3. mejor modelo de consistencia eventual debido a que el uso de algoritmo hash consistente
0

3 diferencias clave:

  1. Indexación

    • SimpleDB crea el índice para el campo "TODOS" en una tabla.
    • DynamoDB tiene que establecer los campos de indexación antes de crear la base de datos, y no se puede modificar.
  2. Precio:

    • precios SimpleDB se basa en horas de la máquina y capacidad de almacenamiento
    • DynamoDB cobrar dinero por la capacidad de lectura/escribe registros por segundo.
  3. Escalabilidad:

    • SimpleDB requiere partición manual si el almacenamiento de datos excede de 10 GB.
    • DynamoDB distribuye automáticamente los datos debajo del cofre, por lo tanto, proporciona una escalabilidad muy alta.
Cuestiones relacionadas