PERMANENT - Teradata Database - Teradata Vantage NewSQL Engine - PERMANENTオプション、MODIFY DATABASE SQL文。

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

Product
Teradata Database
Teradata Vantage NewSQL Engine
Release Number
16.20
Published
2019年3月
Language
日本語
Last Update
2019-10-29
dita:mapPath
ja-JP/wkf1512081455740.ditamap
dita:ditavalPath
ja-JP/wkf1512081455740.ditaval
dita:id
B035-1144
Product Category
Software
Teradata Vantage

指定したデータベースの固定スペース割り当ての改定された値(バイト単位)。

n
このバイト数は、整数値、10進数値、または浮動小数点値として入力するか、バイト数を決定する値が得られる定数式として入力します。また、指数表記法を使用して値を入力することもできます。例えば、1000でも1E3でもかまいません。
nの値またはconstant_expressionの評価から決定されたバイト数は、所有者の固定領域を超えることはできません。
constant_expression
定数式は、列を参照しない任意のSQL式です。データベースのPERM領域サイズに適切な定数式を指定すると、Teradata Databaseは、AMP単位でPERM領域を割り当てることにより、システムのサイズに合わせた最適なPERM領域の容量を割り当てることができます。
定数式に基づいてPERM領域のサイズを指定すると、システムにAMPを追加したときなどに、割当て済みのサイズが自動的に拡大されなくなります。
BYTES
許容する領域の単位を重複して指定するためのオプションのキーワード。
SKEW
固定領域のスキュー制限を指定するために使用するキーワード。AMP領域の最大使用率がAMPごとの割り当てを超えることができるようにスキュー制限を指定できます。AMPごとの割り当ては、システムの最大の領域制限をAMP数で割ったものです。
constant_expression
定数式または0~10000までの定数。1~9999の値を指定して、AMPレベルの制限を示します。この制限はAMPごとの割り当てです*(1 + permskewlimit/100)。AMPごとのレベルに相当する領域を設定するには0を指定します。この場合スキューなしです。10000の値は無制限のスキューを示し、上限はシステムの最大領域制限になります。
DEFAULT
DBS Control DefaultPermSkewLimitPercentの値を使用します。
PERCENT
オプションのキーワード。このキーワードは読みやすくするために含めることができ、constant_expressionまたはDEFAULTキーワードが許容されるスキューのパーセンテージを指定することを示します。

例: 固定領域の割り当ての変更

personnelデータベースの固定領域の割り当てを、6,000,000バイトに変更します。

     MODIFY DATABASE personnel AS
     PERMANENT = 6000000 BYTES;

例: 定数式の使用によるデータベースのPERM、SPOOL、一時領域の変更

次の文は、production_developmentデータベースのPERM領域を定数式3,000,000 * (HASHAMP()+1)に基づいたサイズに変更し、SPOOLを定数式3,000,000 * (HASHAMP()+1)に基づいたサイズに変更し、TEMPORARYを定数式3,000,000 * (HASHAMP()+1)に基づいたサイズに変更します。これらの式では現在のシステムにあるAMPの数を計算し、そのサイズに合わせてproduction_developmentデータベースの固定、スプール、および一時領域を拡大します。

これは、データベースproduction_developmentの最初の定義です。

     CREATE DATABASE production_development AS
       DEFAULT DATABASE = it_dev,
       PASSWORD = (EXPIRE = 0),
       PERM = 2000000*(HASHAMP()+1),
       SPOOL = 2000000*(HASHAMP()+1),
       TEMPORARY = 2000000*(HASHAMP()+1);

次のMODIFY DATABASEリクエストでは、このデータベースの固定、スプール、および一時領域の割り当てを次のように変更します。

     MODIFY DATABASE production_development AS
       DEFAULT DATABASE = it_dev,
       PASSWORD = (EXPIRE = 0),
       PERM = 3000000*(HASHAMP()+1),
       SPOOL = 3000000*(HASHAMP()+1),
       TEMPORARY = 3000000*(HASHAMP()+1);

例: 固定領域スキューの制限値を追加するデータベースの変更

4つのAMPを含むシステムと、1ギガバイトの固定領域を持つデータベースを仮定します。固定領域のAMPごとの割り当ては250メガバイトです。固定領域のスキュー制限値を10%に設定すると、どのAMPでも固定領域のAMPごとの割り当てより25メガバイト多いスキュー制限が可能になります。使用する固定領域の合計が固定領域の1ギガバイトのグローバル制限を超えない限り、AMPでは275メガバイトまでの固定領域を使用できます。
     MODIFY DATABASE d1 AS 
       PERM = 1e9 SKEW = 10 PERCENT;