如何使用DynameDB建模社交或约会应用程序?该数据库合适吗?

问题描述 投票:0回答:2

想象一下,我有一个Users表,每个用户都可以像另一个用户一样,不喜欢他/她,阻止他/她(并被阻止)。我可以用几个表来建模,但是我不怎么发送这样的查询(请注意,一个用户可能喜欢/不喜欢/阻止成千上万的用户):

让用户进入该区域(使用经度和姿势很容易),我从没说过不喜欢他们,也从未阻止过他们。

太简单了,我不确定该怎么做。

我应该使用Aurora和SQL查询吗?在那种情况下,我知道该怎么做。就我而言,我不介意使用Aurora,因为我没有数百万条记录,也许对我而言更好。

非常感谢您的建议。

amazon-dynamodb amazon-rds-aurora
2个回答
0
投票

这是Amazon Neptune的用例之一

社交网络

Amazon Neptune可以快速轻松地处理大量用户配置文件和交互以构建社交网络应用程序。Neptune支持高吞吐量的高度交互式图形查询将社交功能引入您的应用程序。例如,如果您正在为您的应用程序构建社交订阅源,您可以使用Neptune提供优先显示用户最新结果的结果来自家人,来自“喜欢”朋友的更新,以及来自住在他们附近的朋友。


-1
投票

尝试此

PK:“节点”字符串用户标识SK:“ edge” enter image description here提示用户ID(表示关系的用户ID,如果是self,则为相同ID)

[属性:喜欢/不喜欢/阻止等关系加上您想要的所有其他数据。

然后在PK关系,SK节点或边上创建全局索引,您可以查询

像这样的“查询关系索引查询,其中PK =” like“和SK =” user“

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.