首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >亚马逊如何创建唯一的Base-36 Ids?

亚马逊如何创建唯一的Base-36 Ids?
EN

Stack Overflow用户
提问于 2014-01-03 05:27:05
回答 1查看 360关注 0票数 2

没有什么邪恶的东西,只是作为一个web开发者的好奇心。

我正在研究Amazon如何实现他们的购物车页面,并注意到他们没有使用基数为10的int值作为订单行标识符,而是使用基数为36的值。

他们是否正在将一些巨大的大整数序列值转换为base-36以保持UI输出简短(我不认为是这样的,因为几分钟后添加到我购物车中的项目将远远超过万亿条记录)?有没有内置了36碱基序列的数据库?还有其他原因/解释吗?

在.Net/SQL Server平台上有类似的东西吗(我知道Guids)?

EN

回答 1

Stack Overflow用户

发布于 2014-03-21 11:50:53

你确定是36号基地而不是32号基地?使用2的幂(16/32/64)具有性能优势...无论如何,他们使用Dynamo存储数据,所以这些可能是用作数据库记录关键字的哈希码。它们几乎肯定不是序列。我怀疑它们是不是UUIDs,因为要在集群中均匀分布它们会很棘手。您可以在描述其架构的the paper中阅读有关Dynamo的更多信息。

为了在.NET中使用base-32,我知道至少有one library可以做到这一点。Base-32很方便,人类可读,URL安全,并且比base-16更好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20892219

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档