【发布时间】:2009-03-20 09:07:28
【问题描述】:
我刚刚阅读了blog post 关于 NHibernate 从系统时间 (Guid.Comb) 创建 GUID 的能力,从而避免了大量的数据库碎片。您可以将其称为与 SQL Server Sequential ID 等效的客户端。
有没有办法在我的 Linq-to-Sql 项目中使用类似的策略(通过在代码中生成 Guid)?
【问题讨论】:
-
我尝试了所有这些 COMB guid 样本,它们都产生了 10K 行的高碎片。 arul 的版本 - 98% 的碎片。
NHibernate - 53% 的碎片。
rpcrt4.dll - 98% 的碎片
bigint - 6% 的碎片
人们期望 COMB 商品的性能如何? -
@Shaun 这取决于您插入的速度,如果您每秒只有几次插入,则应该没有碎片。
标签: .net nhibernate linq-to-sql guid