我们的数据库基础已使用EF-6 Code First Approach设计。最初我们设计了数据库,为多租户保留sharding architecture
。
然而随着经济和普遍的普及Azure上的专用数据库层,这似乎不再是一个明智的架构,以便在应用程序级别处理SQL Server数据库的水平拆分。
因为已知Guid.NewGuid()导致碎片化 作为Integer主键的索引。建议使用Microsoft支持 使用顺序Guid而不是Guid.NewGuid()。
凭借这种架构背景,我越来越倾向于永远停止使用Guid作为主键。
DB的合并和拆分似乎不再是一个明智的选择 适用于现代应用程序架构师。
如果需要,请纠正我!
使用Sequential Guid over Integer primary是否有任何优势 SQL Server中的密钥?