gpt4 book ai didi

哈希与数字ID

转载 作者:行者123 更新时间:2023-12-04 07:15:01 24 4
gpt4 key购买 nike

当创建一个Web应用程序时,该应用程序将如何显示重复实体的唯一标识符(YouTube上的视频或我的网站上的书籍部分)的显示方式,最好使用统一长度的标识符(例如哈希或唯一标识符)该项目在数据库中的键(1、2、3等)。

除了透露一些我认为不重要的有关应用程序内部的信息外,为什么使用哈希比仅使用唯一ID更好?

简而言之:哪个更适合用作公开显示的唯一标识符-哈希值或数据库中的唯一键?

编辑:我再次提出这个问题,因为Dmitriy提出了不要将命名与数据库特定属性联系在一起的好处。这种束缚会阻止我将来对数据库进行优化/规范化吗?

该平台使用带有ISAM/w MySQL的php/python。

最佳答案

除非您试图隐藏内部对象ID计数器的状态,否则散列会变得很慢(生成和比较),不必要的时间长,不必要的丑陋以及不必要的冲突。 GUID又长又丑,使得它们与哈希一样不适合人类食用。

对于类似 list 的事物,只需使用顺序(或分片)计数器即可。如果迁移到其他数据库,则只需将新计数器初始化为至少与最大的现有记录ID一样大的值。几乎每个数据库服务器都为您提供了一种方法。

如果您想隐藏计数器的状态,也许是因为您在计数用户,并且不想让竞争对手知道您有多少,那么我建议您避免显示内部ID。如果您坚持要显示它们并且不希望出现哈希的缺点,则可以考虑使用最大期限linear feedback shift register来生成ID。

关于哈希与数字ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/196726/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com