来自拥有 5000 万用户的 SQL 数据库的快速用户名密码匹配[关闭]

Posted

技术标签:

【中文标题】来自拥有 5000 万用户的 SQL 数据库的快速用户名密码匹配[关闭]【英文标题】:Fast username password matching from SQL database that has 50 million users [closed] 【发布时间】:2020-05-15 23:54:24 【问题描述】:

我正在研究从我的 sql 数据库中匹配用户名和密码的速度。 我正在研究 facebook/google/twitter 如何让您在几秒钟内登录,而他们有数百万次使用。 他们使用什么类型的算法?为什么他们可以快速识别您输入了正确的用户名密码组合? 为什么系统会很快识别出您输入了错误的密码/用户名? 他们使用的方法是什么? 提前致谢。

【问题讨论】:

【参考方案1】:

您通常会使用如下查询:

select 1 from users where username = ? and password = ?

问号代表查询参数的位置(您可能应该对密码使用某种散列机制)。如果查询返回某些内容,那么您就知道凭据是正常的。如果没有返回任何行,则登录失败。

为了性能,您只需要users(username, password) 上的索引。即使表中有几百万行,这也应该非常快,因为数据库可以仅通过查看索引来执行查询。

【讨论】:

以上是关于来自拥有 5000 万用户的 SQL 数据库的快速用户名密码匹配[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

云原生数据编排厂商Alluxio获5000万美元C轮融资

如何使用 AWS 快速对 100 亿行 SQL 表进行分区?

独创PHP张强医生集团首轮谨慎融资5000万

Chrome曾冲击7天5000万活跃用户,最后失败......

极客日报:HarmonyOS 2.0用户数升至5000万;腾讯起诉抖音侵权《王者荣耀》,获赔60万?抖音:没侵权,已上诉!

字节回应阿里涉侵犯男员工曾面试并通过一面;HarmonyOS 2.0用户数升至5000万|极客头条...