資料の 英語版 に戻るData Virtualizationにおける統計情報の収集
Data Virtualizationにおける統計情報の収集
最終更新: 2024年11月26日
照会パフォーマンスを最適化するために、照会されるデータに関する統計を収集できます。
コスト・ベースのオプティマイザーによる決定は、照会パフォーマンスにとって不可欠です。 オプティマイザーは、照会されるデータに関する統計情報を使用して決定を行います。 正確で最新の統計により、最適な照会パフォーマンスが確保されます。 以下の条件が当てはまる場合は常に統計を収集します。
最適化プログラムおよび照会パフォーマンスについて詳しくは、 最適化プロファイルおよびガイドラインを参照してください。
- 新しい表が作成され、データが取り込まれます。
- 既存の表のデータは、以下のような重大な変更を受けます。
- 新規データを追加します。
- 古いデータは削除されます。
- 既存データは更新されます。
Data Virtualization化は、オプティマイザが効率的な実行プランを構築するのに十分な情報を得られるように、以下の項目の統計情報を収集します:
- 照会で参照される表。
- ビューで参照されるすべての表。 仮想ビューを作成するときには、そのビューで参照されているすべての表の統計を必ず収集してください。 統計はビューでは収集されません。
- 述部 (結合述部を含む) および照会で参照される集約関数で参照されるすべての列。
照会の最初の SELECT リストにのみ現れる列の統計を収集する必要はありません。
重要: 照会パフォーマンスを向上させるには統計を収集することが重要であるため、最新の統計を用意することが重要です。 仮想表に多数の行がある場合、または多数の列について統計が収集される場合、統計収集はリソースを大量に消費し、完了までに時間がかかることがあります。 システムの負荷が低いときに統計を収集することを検討してください。 多数の統計収集ジョブを同時にスケジュールすることは避けてください。
Data Virtualizationでは、以下の基本統計が収集される:
- 表カーディナリティー (CARD)
- テーブルの行数。
- 列カーディナリティー (COLCARD)
- 列の個別値の数。
- ハイ・キー (HIGH2KEY)
- 仮想化テーブルのリモート・データ・ソースと、使用される収集タイプに応じて、列の最高データ値または 2 番目に高いデータ値のいずれか。
- 低位キー (LOW2KEY)
- 仮想化テーブルのリモート・データ・ソースと、使用される収集タイプに応じて、列の最低データ値または 2 番目に低いデータ値のいずれか。 多くのデータソースについて、Data Virtualizationは最も低いキー値を収集する。 ブランクは、統計が収集されなかったことを示すものではありません。
- NULL 値の数 (NUMNULLS)
- 列内の NULL 値の数。 この数値は、LOB タイプの列について収集される唯一の統計です。
統計収集タイプ
Data Virtualizationは2つの統計収集タイプをサポートしている:
- remote-catalog
- このタイプの統計収集は、ローカル方式の統計収集がサポートされる、リモート・データ・ソース内の仮想化テーブルでのみサポートされます。リモート・データ・ソースのカタログ・テーブルに格納されている統計が取得され、Data Virtualization統計カタログに格納されます。リモート・データ・ソースで正確な統計を使用できるようにすることが重要です。 remote-catalog タイプの統計収集は、グループ化されたテーブルではサポートされません。
- remote-query
- このタイプの統計収集では、仮想化テーブルに対する SQL 照会を使用して統計が計算されます。仮想化テーブルに多数の行がある場合、または多数の列の統計が収集される場合、このタイプはリソースを過度に使用する可能性があり、完了までに時間がかかることがあります。 パフォーマンスを向上させ、リソースを節約するには、 Data Virtualization化の COLLECT_STATISTICS ストアド・プロシージャでTABLESAMPLE オプションを指定するか、クラウド・オブジェクト・ストレージのデータ・ソースに 'ANALYZEコマンドを使用して、データ・サンプリングで統計情報を収集します。
ベスト・プラクティス
IBM® Db2®や'Oracleようなローカル統計収集ツールをサポートするリモートデータソースの場合、Data Virtualizationにおける統計収集のベストプラクティスは、リモートデータソースのローカル統計が正確で最新であること、特にクエリ述語で使用されるキー列の基本列統計が最新であることを保証することです。 この目的のために、Data Virtualizationウェブクライアントで統計収集ジョブを作成することをお勧めします。