【发布时间】:2012-03-11 17:40:18
【问题描述】:
我正忙于一个新项目的数据库设计,我不确定是使用 UUID 还是使用普通的 table-unique auto-increment id。
到目前为止,我建立的网站都在一台服务器上运行,非常大的流量从来都不是什么大问题。然而,这个 Web 应用程序最终会在多个服务器上同时运行,提供一个 API,并且需要每秒处理数千个请求,我想确保我现在选择的设计不会在以后削弱任何这些可能性。
当然,我有我的怀疑,通过我提出问题的方式应该很清楚,但我想听听那些有更多经验的人,如果我有或没有,我以后会遇到什么麻烦UUID,以及我真正应该基于什么做出决定。
所以,简而言之:在决定是否对所有数据库模型使用 UUID 时,我应该考虑哪些因素,以便任何一个对象都可以由一个字符串唯一标识,以及何时将其用作主键而不是逐表自动增量是否合适?
注意:我看过this question (When are you truly forced to use UUID as part of the design?),并阅读了所有答案,但他们大多回答“UUID 冲突的频率如何”,而不是“何时适合使用它们”。
【问题讨论】:
标签: database database-design architecture uuid