基于客户端生成的高分辨率时间戳的主键

时间:2018-09-02 10:21:24

标签: indexing timestamp relational-database primary-key uuid

我正在为我的关系数据库(Postgres)表寻求主键:

  • 可以在客户端上生成,发生碰撞的可能性很小
  • 可以支持快速(可能是集群的)索引。
  • 将在联盟,分片和迁移方案中很好地发挥作用。
  • 用作公共对象ID(例如在API中)时,不会泄漏有关我的系统内部的数据。

起初,我想到了使用内部自动递增整数主键和公共客户端生成的GUID代理键。但是there are issues with this approach

经过进一步考虑,我认为在客户端上生成的整数时间戳主键(具有毫秒分辨率)将很好地满足所有这些要求。

这种方法可能存在问题吗?

0 个答案:

没有答案