行分散のスキューによる性能への影響 - Advanced SQL Engine - Teradata Database

Teradata Vantage™- データベースの管理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.10
Published
2021年7月
Language
日本語
Last Update
2021-09-23
dita:mapPath
ja-JP/upb1600054424724.ditamap
dita:ditavalPath
ja-JP/wrg1590696035526.ditaval
dita:id
B035-1093
Product Category
Software
Teradata Vantage

テーブルの行がAMP間で不均等に分散していると(スキュー)、問合わせの処理効率が低下します。

分散にスキューが発生すると、次の結果が生じます。

  • フル テーブル スキャンおよびバルク挿入の際、CPU並列処理の効率が劣化する。
  • 値が重複する場合に、更新と挿入に伴う入出力が増大する。

テーブルがスキューされると、その影響がいくつかの操作に現れることになります。例えば、次のようになります。

  • フル テーブル スキャンの場合、ターゲット テーブルの行数が少ないAMPは、行数が多いAMPが完了するまで待機することを余儀なくされます。ノードのCPU使用状況はこうした相違を反映することになります。ノード全体の速度は最も遅いノードのAMPと同じになるためです。
  • スキュー テーブルへのバルク(大量の)挿入を行なう場合は、同じNUPI値の行が多数あるAMPに余分の負担がかかるということを考慮してください。

    500万行のテーブルのうち、5,000行が同じNUPI値を持つとします。ここで、100,000行をこのテーブルに挿入します。この挿入行のうち100行はNUPI値が同じであるとします。このNUPI値を持つ5,000行を保持するAMPは、このNUPIについて50万回(5,000 * 100)も重複行の検査をしなければなりません。結果として、この操作の並列効率性が悪化します。