Amazon describe las diferencias entre S3 y SimpleDB en el SimpleDB overview page. Almacenan objetos S3 en almacenamiento más lento y objetos SimpleDB en almacenamiento más rápido, lo que significa que es más caro almacenar la misma cantidad de datos en SimpleDB que en S3.
Si simplemente almacena grandes objetos binarios como valores y está almacenando metadatos por su cuenta o puede obtener fácilmente la clave para el objeto que desea, entonces probablemente solo use S3.
SimpleDB se utilizaría sobre S3 en el caso en que desee almacenar múltiples pares clave-valor asociados con un elemento y desee conservar la capacidad de buscar elementos en función de cualquiera de los pares clave-valor.
S3 le permite almacenar metadatos clave-valor junto con el objeto, pero para encontrar un objeto basado en los metadatos, debe recuperar los metadatos para cada objeto en su cubo y decidir qué elemento (o artículos) que desea obtener Eso puede ser lento y costoso para grandes cubos. Además, existe un límite en la cantidad de metadatos que puede almacenar y recuperar si está utilizando la API REST.
SimpleDB es más flexible con los metadatos almacenados. Los pares clave-valor están indexados, por lo que las consultas pueden ser rápidas. Puede agregar y modificar pares clave-valor que ya están en SimpleDB, donde deberá eliminar y volver a crear objetos en S3 para actualizar los metadatos. Sin embargo, hay un límite de 1024 bytes para el tamaño de la clave y los valores, y un límite general para la cantidad de datos en un dominio (análogo de segmento). Todos los límites de SimpleDB se enumeran en el SDB Developer Guide.
Si está almacenando objetos grandes con una gran cantidad de metadatos de valores-clave, probablemente utilice un enfoque híbrido. La página de descripción general de Amazon sugiere almacenar metadatos en SimpleDB con uno de los pares clave-valor siendo un puntero a S3 para los datos del objeto.
O, para decirlo sin rodeos: SimpleDB es una base de datos, S3 es un sistema de archivos. –
De hecho. Ese es el tl; dr. –