数据库
首页 > 数据库> > 像Tinder这样的应用程序的高效MySQL数据库设计

像Tinder这样的应用程序的高效MySQL数据库设计

作者:互联网

我正在创建Tinder之类的应用.用户可以向右或向右滑动,向左或向左滑动或不喜欢另一个用户.问题是关于存储用户的操作.用户操作需要一个表,如下所示

Person 1.   |   Person 2.    |     op
__________________________________
000001.          000007.          Dislike
000001.          000011.          Like
000001.          000053.          Dislike
000001.          000173.          Dislike

它存储操作,还用于不向用户显示更多时间.到现在为止还可以.

但是问题是,如果仅1000个用户刷卡另外1000个用户,则该表将具有1M行.如果有100,000个用户这样做,那么……将达到1亿行!这是非常巨大的.

你们对不那么大的结构设计有任何想法吗?

谢谢.

解决方法:

您将永远不会有一百万行,因为如果您正在做类似Tinder的应用程序,则可以重新匹配人员.因此,我建议您添加一个日期列,以知道何时可以删除行和存储过程,并可以执行该清理清理过期的关系.

使用此列,行将不会堆叠,并且您将永远不会有数百万行.

当人们喜欢在一起时,您也不需要存储.

编辑:为什么不使用带有两个列的CHECKSUM()来存储每个关系的哈希值?会更轻.

EDIT2:别忘了这是一个爱情应用.人们无法与所有人匹配,因为他们有性取向.

标签:data-structures,mysql,database,tinder
来源: https://codeday.me/bug/20191211/2105793.html