ハッシュ関数による不均等な分散の検出 - Advanced SQL Engine - Teradata Database

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

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
2020年6月
Language
日本語
Last Update
2021-03-30
dita:mapPath
ja-JP/rgu1556127906220.ditamap
dita:ditavalPath
ja-JP/rgu1556127906220.ditaval
dita:id
B035-1093
Product Category
Software
Teradata Vantage

次の関数を使用して、不均等なデータ分散を識別できます。

関数 定義
HASHAMP ハッシュ バケットを所有するAMP
HASHBACKAMP ハッシュ バケットを所有するフォールバックAMP
HASHBUCKET 特定のハッシュ値のグループ
HASHROW 固有性フィールドのない32ビットの行ハッシュID

HASHAMPの例

AMP間の分散問題(スキュー)が疑われる場合に使用できるサンプルを以下に示します。以下のサンプルは3列から成るPI用です。

SELECT HASHAMP (HASHBUCKET (HASHROW (col_x, col_y, 
      col_z))), count (*)
FROM hash15 
GROUP BY 1
ORDER BY 2 desc;

HASHROWの例

行ハッシュの衝突が疑われる場合に使用できるサンプルを以下に示します。以下のサンプルは3列から成るPI用です。

SELECT HASHROW (col_x, col_y, col_z), count (*)
FROM hash15 
GROUP BY 1
ORDER BY 2 desc
HAVING count(*) > 10;