0

より具体的には(主題に対する一般的な答えは「はい」である可能性が高いため):

Sybaseには大量のデータを含むテーブルがあります。

列の1つは、「挿入日」(DATE、日時タイプ)です。

テーブルのクラスター化されたインデックスは「DATE」で始まります。

質問:別の非クラスター化インデックスの場合、列の順序(より具体的には、「DATE」が最初または2番目のインデックス列であるかどうか)は、挿入クエリのパフォーマンスに影響しますか?

他のすべてが等しいと仮定します。たとえば、2番目の非クラスター化インデックスの順序はselectクエリのパフォーマンスに影響しません(影響する場合でも、この質問の目的には関係ありません)。

4

2 に答える 2

2

全ページまたはデータページのテーブルにはどのようなロックスキームがありますか?(lockscheme('table_name')を選択するとわかります。)インデックス保守の(アプリケーションで監視された)パフォーマンスは、データページのロックスキームを使用するとはるかに優れています。

インデックスが注文されます。挿入時間は、その順序を維持するためのコストによって異なります。インデックスが作成された列の値が単調に増加する行を挿入すると、インデックスは「最後に」大きくなり、パフォーマンスが向上します(複数の同時アップデーターによる同時実行の問題を法として)。インデックスツリーは時々リバランスする必要がありますが、それは迅速な操作だと思います。

挿入の順序がインデックスと同じ順序でない場合、そのインデックスには「中央に」エントリを挿入する必要があります。これにより、ページ分割が発生する可能性があります(モジュロでは、塗りつぶしを設定することで十分なスペースが割り当てられません。上記の係数)および「インデックスの断片化」

とにかく、答えは-いつものように-いくつかの実験を行い、経過時間とIOアクティビティを測定することです。optdiagの出力も確認することをお勧めします。

pjjH

于 2009-09-23T06:35:54.813 に答える
0

これは主にインデックスのフィルファクターによって決定され、列の選択性はそれほど大きくないと思います。

于 2009-09-23T02:20:08.820 に答える