16.20 - SPOOL - Teradata Database - Teradata Vantage NewSQL Engine

Teradata Vantage™ SQLデータ定義言語 構文規則および例

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Release Date
2019年3月
Content Type
プログラミング リファレンス
Publication ID
B035-1144-162K-JPN
Language
日本語 (日本)

profile_nameのスプール ファイルに許可される最大バイト数。デフォルトはNULLですが、その場合、プロファイルに割り当てられた個々のユーザーに定義されている設定が使用されます。

プロファイルでのスプール領域制限の変更は、MODIFY PROFILEリクエストが実行依頼されるとすぐに有効になります。

n
このバイト数は、整数値、10進数値、または浮動小数点値として入力するか、バイト数を決定する値が得られる定数式として入力します。また、指数表記法を使用して値を入力することもできます。例えば、1000でも1E3でもかまいません。
nは、作成者のプロファイルのスプール領域パラメータを超えることはできません。そのプロファイルでスプール領域が定義されていない場合、Teradata Databaseは個々のユーザー作成者に定義されたスプール領域の制限を使用します。
constant_expression
定数式は、列を参照しない任意のSQL式です。データベースのスプール領域サイズに適切な定数式を指定すると、Teradata Databaseは、システムのサイズに合わせた最適なSPOOLの容量を割り当てます。
定数式に基づいてスプール領域のサイズを指定すると、システムにAMPを追加したときなどに、割当て済みのサイズが自動的に拡大されなくなります。
BYTES
許容する領域の単位を重複して指定するためのオプションのキーワード。

例: プロファイル スプール領域の変更

ユーザーandersonのスプール設定が500,000バイト、ユーザーbrewsterのスプール設定が800,000バイトであると仮定します。

ユーザーandersonは、500,000バイトのスプール設定を使用して、financeという名前のプロファイルを作成できます。

     CREATE PROFILE finance AS 
     SPOOL = 500000;

ユーザーandersonは、このプロファイルをbrewsterに割り当てて、スプール制限を効率的に800,000から500,000に削減することができます。

     MODIFY USER brewster AS 
     PROFILE = finance;

andersonの所有者が後でスプールの割振りを1,000,000に増やすと、andersonfinanceプロファイル スプールの設定を1,000,000バイトにすることができます。brewsterを含め、そのプロファイルが割り当てられたすべてのユーザーは、自動的に1,000,000バイトのスプール領域を取得することになります。

     MODIFY PROFILE finance AS
     SPOOL = 1000000;

andersonの所有者が後でスプールの割り振りを500,000に減らしても、financeプロファイルおよびbrewsterの割り当ては影響されません。

例: 定数式を使用したプロファイルのスプール領域の指定

次のリクエストは、プロファイルresearch_and_developmentのスプール領域を、定数式3,000,000 (HASHAMP()+1)に基づいたサイズに変更します。これらの式では現在のシステムにあるAMPの数を計算して、そのサイズに合わせてresearch_and_developmentプロファイルのスプール領域を拡大します。

これは、プロファイルresearch_and_developmentの最初の定義です。

     CREATE PROFILE research_and_development AS
       DEFAULT DATABASE = it_dev,
       PASSWORD = (EXPIRE = 0),
       SPOOL = 2000000*(HASHAMP()+1);

次のMODIFY PROFILEリクエストでは、このプロファイルのスプール領域の割当てを次のように変更します。

     MODIFY PROFILE research_and_development AS
       DEFAULT DATABASE = it_dev,
       PASSWORD = (EXPIRE = 0),
       SPOOL = 3000000*(HASHAMP()+1);