web-dev-qa-db-ja.com

SQL Server 2008のDMVsys.dm_db_index_physical_statsで、圧縮されたpage_countとpage_countの意味

SQL Server 2008、DMV sys.dm_db_index_physical_statsでは、compressed_page_countと比較してpage_countはどういう意味ですか。次の情報が記載されたテーブルがあります。

Object_id     Index_type_desc      avg_frag_in_percent    page_count     compressed_page_count        avg_page_space_used_in_percent       avg_record_size_in_bytes
5464654        CLUSTERED INDEX         0                    140992          1410                                        99.24                        111.2
4465464        NONCLUSTERED INDEX      0                    52532           526                                         99.69                         32.2

テーブルには140992ページがありますが、圧縮後は1410ページか何か他のものになりますか?

[BOL says:][〜#〜] msdn [〜#〜] compressed_pa​​ge_count:圧縮されたページの数。

2
UB01

クラスター化されたインデックスには140992ページがあり、そのうち1410ページのみがページ圧縮されています。ページ圧縮は、いっぱいになったときにのみ試行されます。 ページ圧縮が発生した場合 を参照してください。

ページ圧縮のある新しいテーブルが作成されると、圧縮は行われません。ただし、テーブルのメタデータは、ページ圧縮を使用する必要があることを示しています。データが最初のデータページに追加されると、データは行圧縮されます。ページがいっぱいではないため、ページの圧縮によるメリットはありません。ページがいっぱいになると、次に追加される行がページ圧縮操作を開始します。ページ全体がレビューされます。各列はプレフィックス圧縮について評価され、次にすべての列が辞書圧縮について評価されます。ページ圧縮によってページに追加の行用の十分なスペースが作成された場合、その行が追加され、データは行圧縮とページ圧縮の両方になります。ページ圧縮によって得られたスペースからCI構造に必要なスペースを引いたものが重要でない場合、ページ圧縮はそのページには使用されません。将来の行は新しいページに収まるか、収まらない場合は新しいページがテーブルに追加されます。最初のページと同様に、新しいページは最初はページ圧縮されていません。

あなたの場合、圧縮されたページはごくわずかのようです。行圧縮の恩恵を受けることに注意してください。

3
Remus Rusanu
0
Shanky