Database dynamodb中的建议引擎-查询与其他记录没有关系的记录
在过去的两周里,我一直在学习dynamodb文档,并进行了数据库设计,但有一件事让我很为难,尽管我认为我对这个db引擎有很好的了解,但我无法解决以下问题 假设(为了简单起见)我有一个类似Spotify的服务,表中有以下记录: 用户记录:Database dynamodb中的建议引擎-查询与其他记录没有关系的记录,database,amazon-web-services,amazon-dynamodb,Database,Amazon Web Services,Amazon Dynamodb,在过去的两周里,我一直在学习dynamodb文档,并进行了数据库设计,但有一件事让我很为难,尽管我认为我对这个db引擎有很好的了解,但我无法解决以下问题 假设(为了简单起见)我有一个类似Spotify的服务,表中有以下记录: 用户记录: 主键:USR_# SK:用户 数据:名称(并不重要) 歌曲记录: 主键:SNG_# SK:宋 资料:标题 听录音 主键:USR_# SK:SNG_# 数据:日期 已听记录是数据库中的记录,表示用户已听过特定歌曲 想象一下,表中有数千个用户和数千条记录
- 主键:USR_#
- SK:用户
- 数据:名称(并不重要)
- 主键:SNG_#
- SK:宋
- 资料:标题
- 主键:USR_#
- SK:SNG_#
- 数据:日期
我相信这在应用层比数据库层处理得更好。由于Dynamodb没有连接,您需要在应用程序中构建类似连接的逻辑 如果我使用lambda函数呢?这种记忆不会持久。另外,我正在使用JavaScript。我很快检查了HashMap,它是Java的东西。我可以使用Redis,但如果出于某些原因需要清除内存,该怎么办?另外,您如何排除用户收听的记录(歌曲)?在最坏的情况下,需要对数据库进行n-1次调用,其中n是记录数。这意味着,如果我有一百万首歌曲,我将不得不为一个用户查询数据库99999次。我可以拥有成千上万个。