sql >> データベース >  >> RDS >> Sqlserver

Sequential Guid の主キー列はクラスター化インデックスにする必要がありますか?

    最初に明確にすることは、主キーとクラスター化インデックスは 2 つの別個の異なるものです。つまり、一方が他方に結合されていないことです (PK は非クラスター化することができ、クラスター化インデックスは非 PK にすることができます)。

    それを考えると、「シーケンシャル GUID をクラスター化インデックスとして使用する必要があるか」という質問が増えていると思います。これはよくある質問ですが、Kimberly Tripp がこれについて話し合っています おそらく私が見た人の中で最高です。この記事では PK について言及していますが、記事の中で彼女は主にクラスター化されたインデックスの選択と PK の選択に考慮事項がどのように適用されるかについて言及しています。

    クラスター キーとして GUID を使用することを既に決定していると仮定すると (そうでない場合もあります)、シーケンシャル GUID の使用は、非シーケンシャル GUID よりも優れた選択肢である可能性が高くなりますが、少なくとも 1 つの GUID があります。非シーケンシャル GUID が好まれる可能性があるシナリオ (ただし、システムと SQL サーバーを基本的に十分に理解して、これを使用する必要があることに疑いの余地がない非常にまれな非常に高度なシナリオですが、これを使用する必要があります。ストレージ デバイス上のホットスポットと、大量の書き込みをクラスターのさまざまな場所に分散させることができます)。




    1. MySQL-サブクエリに基づくカウンターで更新

    2. SQL Server:両方にWHERE句がある2つのクエリでUNIONを使用するにはどうすればよいですか?

    3. MYSQL左結合NULL値を選択するにはどうすればよいですか?

    4. Oracleの特定の位置から文字を削除します