Gor*_*nek 0 amazon-s3 redis amazon-dynamodb amazon-cloudsearch
我正在为我的应用程序创建一个方案,我想知道我的想法是否正确
示例:电子商务网站
在DynamoDb中,我会把产品(product_id,元数据链接到S3)
S3,我会用它来存储搜索数据格式(SDF/JSON)(产品名称,产品描述,价格......等)
Amazon CloudSearch将用于索引S3中的文档,并能够搜索它们.Redis将用于缓存结果
我的计划是对的吗?s3可以成为一个好的"数据库"吗?
DynamoDb在这里甚至需要吗?
如果你认为S3只是你产品的记录来源而你并不期望大量的读/写,那么它可以工作,但是你必须认识到它比使用真正的数据库慢得多.不仅慢1-2倍,而且速度更慢.我们使用S3存储Postgres中存储的实时数据的审计数据 - 这是一个魅力,但这是一次写入并且很少读取的数据.必须检索审核记录时的检索时间> 50ms.当您需要一次操作多个记录时,通常不接受这种类型的速度.
如果您打算使用dynamoDB,为什么不使用它来存储您在s3上存储的内容?试着遵循保持简单的概念,我会使用以下堆栈:
再一次,为了简单起见,如果你已经在使用dynamoDB并且不打算使用任何Redis的专用dastatypes,请跳过Redis进行缓存 - 即:你的缓存只不过是字符串的键,等等.如果你使用Redis,请使用Redis.您计划利用其他数据类型,或者如果您希望缓存更接近您的应用程序 - 即:您计划在Web服务器上使用Redis.
| 归档时间: |
|
| 查看次数: |
3413 次 |
| 最近记录: |