テーブルで Int / GUID のどちらを使用すべきかという質問があります。このシナリオを使用します。
主キーとしてa を使用しBIGINT
ます – クラスタ化など、結合、高速検索などに使用します。つまり、これは検索とユーザーの利便性のために最適化されています。
をGUID
レコードの一意のマーカーとして使用します。これは、サーバー/アプリケーションなどにデータを移植するときに使用するものです。これはユーザーには表示されませんが、すべてのレコードにスタンプされます。
これにより、両方の長所が得られます。主キーとして使用することによる断片化とパフォーマンスへの影響を回避GUIDs
できますが、レコードを個別に識別できるため、データを移動したりシステム間で共有したりするときにその利点を維持できます。
追加のストレージ コストが高すぎると主張する人もいるかもしれませんが、同じデータ列で 2 つの異なることを試みるよりも、SAN に数ドル余分に費やす方が長期的には安くなると思います。