[解決済み] クラスタ化インデックスと非クラスタ化インデックスの違い[重複]について
質問
を追加する必要があります。
index
を追加する必要があり、いくつかの助けを必要としています。
私は混乱しており、いくつかの点を明確にする必要があります。
-
にインデックスを使用すべきでしょうか。
non-int
カラムにインデックスを使うべきでしょうか?なぜ/なぜそうしないか -
についてたくさん読みました。
clustered
とnon-clustered
の2つのインデックスがありますが、いつどちらを使うかまだ決めかねています。良い例があれば、私や他の多くの開発者の助けになります。
頻繁に更新されるカラムやテーブルにはインデックスを使用すべきではないことは知っています。また、テスト段階に進む前に、それがすべて良好であることをどのように知ることができますか?
どのように解決するのですか?
2つの問題を分離する必要があります。
1)は 主キー は論理的な構成で、テーブルのすべての行を一意的かつ確実に識別するキーの候補のひとつです。これは、INT、GUID、文字列など、本当に何でもかまいません。
2) クラスタリングキー (テーブル上の "クラスタ化インデックス" を定義するカラム) - これは 物理的 ストレージに関連するもので、ここでは、小さくて安定した、増え続けるデータ型が最適な選択です。
デフォルトでは、SQL Serverテーブルの主キーはクラスタリングキーとしても使用されますが、そのようにする必要はありません!
すべてのテーブル (データを格納するために使用するテーブル、ルックアップ テーブルなど) はクラスタリング キーを持つ必要があります。クラスタリング・キーがないのは意味がない。実際、一般的に信じられていることとは異なり、クラスタリングキーを持つことで、挿入や削除を含むすべての一般的な操作が高速化されます(テーブルの構成が異なるため、通常は ヒープ - を使用する場合よりも優れています)。
インデックス作成の女王、Kimberly Tripp には、なぜクラスタリングキーを持つべきなのか、そしてどのようなカラムをクラスタリングキーとして使用するのが最適なのかというトピックについて、非常に多くの優れた記事があります。1つのテーブルに1つしかないため、クラスタリングキーに最適なカラムを選ぶことが最も重要です。 正しい クラスタリングキーを選ぶことが最も重要です。
- PRIMARY KEY および/またはクラスタ化されたキーとしての GUID
- クラスター化インデックスの議論は続く
- 増え続けるクラスタリングキー - クラスタ化インデックス論争.........再び!
- ディスクスペースは安い - それは ではない がポイントです。
マルク
関連
-
[解決済み】識別関係と非識別関係の違いとは?
-
[解決済み] Microsoft OLE DB Provider for SQL Server エラー '80040e14' '=' 付近の構文が正しくない
-
[解決済み] SQL Agent を使用して SSIS パッケージを実行する際の問題 - "DTSER_FAILURE(1)" で失敗します。
-
[解決済み] SSISの日付と時刻の連結
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] インデックスを指定してリストから要素を削除する方法
-
[解決済み] varcharとnvarcharの違いは何ですか?
-
[解決済み] JOINとINNER JOINの違いについて
-
[解決済み] クラスター化インデックスと非クラスター化インデックスの実際の意味は何ですか?
-
[解決済み】クラスタ化インデックスと非クラスタ化インデックスの違いは何ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] プロシージャは 'ntext/nchar/nvarchar' 型のパラメータ '@statement' を想定しています。
-
[解決済み] sql文の角括弧[]の使い方を教えてください。
-
[解決済み] SQL Server の更新コマンドでエラー - "現在のコマンドで深刻なエラーが発生しました".
-
[解決済み] 結果を分割するためのSQLの小数点以下の値
-
[解決済み] 変数に値を代入するSELECT文は、データ検索操作と組み合わせてはいけません。
-
[解決済み] 累積和の求め方
-
[解決済み] SQLでNaN値をNULLに、またはNaNを0に変換する
-
[解決済み] 日付から年内の週番号を取得する
-
[解決済み] SQL Serverでマテリアライズド・ビューを作成する方法は?
-
[解決済み】クラスタ化インデックスと非クラスタ化インデックスの違いは何ですか?