Alter Database (集約ストレージ)

ASOモードのMaxL alter database文は、Essbaseデータベース全体の設定を変更するために役立ちます。

キーワード

MaxL alter databaseを使用すると、次の方法で集約ストレージ(ASO)データベース設定を変更できます。ほとんどの文に必要な最小アプリケーション権限はデータベース・マネージャですが、例外が記載されています。

alter database DBS-NAME enable startup

ユーザーが直接、またはデータベースの起動を必要とするリクエストの結果としてデータベースを起動できるようにします。スタートアップはデフォルトで使用可能になっています。

例:

alter database ASOSamp.Basic enable startup;
alter database DBS-NAME disable startup

すべてのユーザーが直接、またはデータベースを起動するリクエストの結果としてデータベースを起動することを禁止します。スタートアップはデフォルトで使用可能になっています。

例:

alter database ASOSamp.Basic disable startup;
alter database DBS-NAME enable autostartup

データベースが所属するアプリケーションが起動したときに、データベースを自動的に起動します。自動スタートアップは、デフォルトで有効になっています。この設定は、スタートアップが使用可能な場合にのみ適用されます。

例:

alter database ASOSamp.Basic enable autostartup;
alter database DBS-NAME disable autostartup

データベースが所属するアプリケーションが起動したときに、データベースが自動的に起動するのを禁止します。自動スタートアップは、デフォルトで有効になっています。

例:

alter database ASOSamp.Basic disable autostartup;
alter database DBS-NAME enable query_tracking

問合せベースのビュー最適化に使用するために、データベースの問合せデータの収集を開始します。

問合せトラッキングの結果を利用するには、次の文のいずれかで、オプションのbased on query_data文法を使用します。

問合せトラッキングはデフォルトでオンになっています。それが有効になっていることを確認するには、query database appname.dbname get cube_size_infoを使用します。

ノート:

問合せトラッキングと問合せトレースは異なります。

問合せトラッキングを使用すると、集約ストレージ・キューブに対するユーザー取得統計を取得できるため、Essbaseは、集計のパフォーマンスを向上させるためにビューベースの最適化を実行できます。これは、デフォルトではオンになっています。関連するMaxL文には、次のものがあります:

import query_tracking
export query_tracking
alter database enable query_tracking
query database appname.dbname get cube_size_info

問合せトレースを使用すると、ブロック・ストレージ・キューブ(ハイブリッド・モードを含む)のEssbase問合せパフォーマンス・メトリックを監視できます。これは、デフォルトではオフになっています。有効にすると、Essbaseはトレース・レポートにメトリックを記録します。関連する構成パラメータ: TRACE_REPORT、QUERYTRACE、QUERYTRACETHRESHOLD、LONGQUERYTIMETHRESHOLD。

例:

alter database ASOSamp.Basic enable query_tracking;
alter database DBS-NAME disable query_tracking

問合せベースのビュー最適化に向けた問合せデータの収集を停止します。問合せトラッキングはデフォルトでオンになっています。

例:

alter database ASOSamp.Basic disable query_tracking;

ASOsamp.Basicデータベースに対する問合せデータのハーベスティングをオフにします。

alter database DBS-NAME set retrieve_buffer_size …

データベース取得バッファ・サイズを変更します。このバッファには、RESTRICTまたはTOP/BOTTOMのレポート・ライター・コマンドで評価される前の、抽出された行データ・セルが保持されます。デフォルト・サイズは、20 KBです。最小サイズは2 KBです。サイズを増やすと、取得のパフォーマンスが向上する場合があります。

例:

alter database ASOSamp.Basic set retrieve_buffer_size 20kb;
alter database DBS-NAME set retrieve_sort_buffer_size …

データベースの取得ソート・バッファ・サイズを変更します。このバッファには、ソートされるまでデータが保持されます。デフォルト・サイズは、20 KBです。最小サイズは2 KBです。サイズを増やすと、取得のパフォーマンスが向上する場合があります。

例:

alter database ASOSamp.Basic set retrieve_sort_buffer_size 20kb;
alter database DBS-NAME set minimum permission …

すべてのユーザーまたはグループがデータベースに対して持てる権限のレベルを設定します。最小権限より高い権限が付与されているユーザーまたはグループには影響しません。この文は、EPM Shared Servicesセキュリティ・モードでのみ使用できます。

例:

alter database ASOSamp.Basic set minimum permission no_access;
alter database DBS-NAME set variable …

データベースにすでにある代替変数の値を変更します。値が256バイトを超えないようにする必要があります。先頭のアンパサンド(&)を除いて、任意の文字を含められます。

例:

alter database ASOSamp.Basic set variable CurrMonth 'Oct';
alter database DBS-NAME set active alias_table …

別名表を、レポートと追加の別名リクエストのプライマリ表として設定します。一度に1つの別名表のみを使用できます。この設定はユーザーに固有です。文を発行しているユーザーのアクティブな別名表のみを設定します。

例:

alter database ASOSamp.Basic set active alias_table 'Default';

アクティブな別名表を確認するには、query databaseを使用します。

alter database DBS-NAME reset

データベースからすべてのデータと、リンクされたレポート・オブジェクトをクリアしますが、アウトラインは保持します。

ノート:

データのクリア操作が開始されたときにカーネル問合せが実行中の場合、データのクリア操作はカーネル問合せの完了を待機し、その後データのクリア操作が続行されます。この情報は、reset allreset dataの文法にも適用されます。

例:

alter database ASOSamp.Basic reset;
alter database DBS-NAME reset all

すべてのデータ、リンク・レポート・オブジェクト、およびアウトラインがクリアされます。

例:

alter database ASOSamp.Basic reset all;
alter database DBS-NAME reset data

resetの使用と同様です。

例:

alter database ASOSamp.Basic reset data;
alter database DBS-NAME clear aggregates

すべての集約ビューを削除します。

例:

alter database ASOSamp.Basic clear aggregates;

ASOsamp.Basicデータベースのすべての集約ビューを削除します。

alter database DBS-NAME clear data in region …

指定した領域のデータをクリアします。

領域からデータをクリアするには、2つの方法があります。

  • 物理。指定した領域内の入力セルが集約ストレージ・データベースから物理的に削除されます。データを物理的にクリアするプロセスは、クリアされるデータのサイズではなく、入力データのサイズに比例した時間で完了します。したがって、この方法は通常、大きいデータ・スライスを削除する必要がある場合にのみ使用します。

    物理的なクリアについては、physicalキーワードを指定して、MaxL文を使用します。

    alter database appname.dbname clear data in region 'MDX set expression' physical;

    時間を節約するために、MDX set expressionsのカンマ区切りリストを使用して、複数の物理領域からクリアできます。

    alter database ASOSamp.Basic clear data in region 
     '{CrossJoin({[Promotions].[Coupon]},{[Time].[1st Half]}),
       CrossJoin({[Promotions].[Coupon]},{[Time].[2nd Half]})}'
    physical;
  • 論理。指定した領域内の入力セルが負の相殺値とともに新しいデータ・スライスに書き込まれ、その結果、クリアするセルの値がゼロになります。データを論理的にクリアするプロセスは、クリアされるデータのサイズに比例した時間で完了します。相殺セルが作成されるため、このオプションではデータベースのサイズが大きくなります。

    論理的なクリアについては、physicalキーワードを指定せずに、MaxL文を使用します。

    alter database appname.dbname clear data in region 'MDX set expression';

領域は対称である必要があります。領域に含まれる任意のディメンションのメンバーは、保管済メンバーである必要があります。データを物理的にクリアすると、領域内のメンバーは、代替階層の上位レベルのメンバーになる場合があります。(代替階層の上位レベルのメンバーが領域に含まれる場合、パフォーマンスが低下する可能性があります。)メンバーは動的メンバー(暗黙的または明示的なMDX式を使用したメンバー)や、属性ディメンションのメンバーにはできません。詳細は、集約ストレージ・キューブからのデータのクリアを参照してください。

値がゼロのセルを削除するには、alter database MaxL文にmerge文法とremove_zero_cellsキーワードを使用します。

例:

alter database ASOsamp.Basic clear data in region '{Jan, Budget}' physical;

月がJanのすべてのBudgetデータを、物理メソッドを使用してASOsamp.Basicデータベースからクリアします。

alter database ASOsamp.Basic clear data in region '{Jan, Budget}';

月がJanのすべてのBudgetデータを、論理メソッドを使用してASOsamp.Basicデータベースからクリアします。

alter database ASOsamp.Basic clear data in region '{CrossJoin({[Promotions].[Coupon]},{[Time].[1st Half]}), CrossJoin({[Promotions].[Coupon]},{[Time].[2nd Half]})}' physical;

2つの物理領域をASOsamp.Basicデータベースからクリアします。

alter database ASOsamp.Basic clear data in region 'CrossJoin({Jan},{Forecast1, Forecast2})';

Forecast1およびForecast2シナリオのすべての1月のデータをASOsamp.Basicデータベースからクリアします。

alter database DBS-NAME compact outline

アウトライン・ファイルを圧縮して、アウトライン・ファイルのサイズを減らします。圧縮は、アウトライン・ファイルを最適なサイズに保つのに役立ちます。アウトライン・ファイルが圧縮された後、メンバーが追加または削除されると、以前のようにファイルは増大し続けます。

ノート:

アウトラインを圧縮しても、Essbaseでデータはクリアされません。メンバーをアウトラインから削除すると、アウトライン・ファイル内のそのメンバーに対応するレコードが削除済としてマークされますが、レコードはアウトライン・ファイルに残ります。アウトライン・ファイルを圧縮しても、削除されたメンバーのレコードは除去されません。

例:

alter database ASOsamp.Basic compact outline;
alter database DBS-NAME add variable …

データベース・レベルの代替変数を名前を指定して作成し、オプションで、表す変数の文字列値を割り当てます。値は、set variableを使用して後から割当てまたは変更できます。代替変数は定期的に変化する情報のグローバルなプレースホルダとして機能します。代替変数は、計算およびレポート・スクリプトで参照される場合があります。

同じ名前の代替変数がサーバー、アプリケーション、およびデータベース・レベルで存在する場合、変数の優先順位は次のようになります。データベース・レベルの代替変数は、アプリケーション・レベルの変数に優先し、アプリケーション・レベルの変数はサーバー・レベルの変数に優先します。

例:

alter database ASOsamp.Basic add variable Month 'Oct';
alter database DBS-NAME drop variable …

代替変数とそれに対応する値をデータベースから削除します。

例:

alter database ASOsamp.Basic drop variable Month;
alter database DBS-NAME initialize load_buffer …

データをロードするために、メモリー内に一時バッファを作成します。

データ・ロード・バッファは、割当て、カスタム計算、およびロック操作と送信操作のために集約ストレージ・データベースで使用されます。複数のデータ・ロード・バッファが単一の集約ストレージ・データベースに存在できます。

ロード・バッファで使用が許可される集約ストレージ・キャッシュ・リソースの共有と、ロード・バッファ操作を中止する前にリソースが使用可能になるまでどれくらい待機するかを制御できます。また、欠落およびゼロの値、重複値、同じセル内の複数値がデータ・ソース内にある場合にどのように処理するかを決定するプロパティも設定できます。

  • resource_usage RNUMを指定して、制約をロード・バッファに配置します。

  • プロパティPROPSを指定して、Essbaseにソース・データの空の値の処理を指示します。

  • wait_for_resourcesを指定して、リソースが使用可能になるまでロード・バッファ操作の処理を待機します。待機時間は、ASOLOADBUFFERWAIT構成で指定された時間、またはデフォルトの待機(10秒)のいずれかです。

例:

alter database ASOsamp.Basic initialize load_buffer with buffer_id 1 resource_usage .5 property ignore_missing_values, ignore_zero_values;

ASOsamp.Basicデータベースのメモリーにデータ・ロード・バッファを作成します。バッファは、使用可能なリソースの50%のみを使用できます。データ・ソース内の欠落した値とゼロは無視されます。

「バッファを使用したデータのロード」集約ストレージ・キューブへのデータのロードも参照してください。

alter database DBS-NAME destroy load_buffer …

一時データロード・メモリー・バッファを破棄します。

例:

alter database ASOsamp.Basic destroy load_buffer with buffer_id 1;
alter database DBS-NAME unlock all objects

ユーザーまたはプロセスで使用されているデータベース上のすべてのオブジェクトをロック解除します。サービス管理者である必要があります。サービス管理者は任意のオブジェクトをロック解除できますが、他のユーザーはロックしたオブジェクトしかロック解除できません。

例:

alter database ASOSamp.Basic unlock all objects;
alter database DBS-NAME rename …

データベースの名前を変更します。データベースの名前を変更すると、キューブ・ディレクトリの名前も変更されます。

例:

alter database ASOSamp.Basic rename to Basic2;
alter database DBS-NAME comment …

データベースの説明を作成します。最大文字数は80文字です。この説明は、データベース管理者が使用できます。Smart Viewやその他のグリッド・クライアント・ユーザー向けにデータベースに注釈を付けるには、かわりにset noteを使用します。

例:

alter database ASOSamp.Basic comment 'my comment';
alter database DBS-NAME merge all|incremental data [remove_zero_cells]

増分データ・スライスをマージします。次のキーワードのいずれかを使用します:

  • all—すべての増分データ・スライスをメイン・データベース・スライスにマージします。

  • incremental—すべての増分データ・スライスを単一のデータ・スライスにマージします。メイン・データベース・スライスは変更されません。

  • (オプション) remove_zero_cells—増分データ・スライスをマージするときに、値がゼロのセルを削除します(セルの値がゼロになる領域からデータを論理的にクリアします)。

例:

alter database ASOsamp.Basic merge all data;

すべての増分データ・スライスをASOsamp.Basicデータベースのメイン・スライスにマージします。

alter database ASOsamp.Basic merge incremental data;

すべての増分データ・スライスをASOsamp.Basicデータベース内の単一データ・スライスにマージします。

alter database ASOsamp.Basic merge all data remove_zero_cells;

すべての増分データ・スライスをASOsamp.Basicデータベースのメイン・スライスにマージし、値がゼロのセルを削除します。

alter database DBS-NAME enable replication_assume_identical_outline

集約ストレージ・データベースがターゲットでブロック・ストレージ・データベースがソースであり、2つのアウトラインが同一の場合は、集約ストレージ・データベースのレプリケーションを最適化します。

レプリケーションの最適化は、ターゲットの集約ストレージ・アプリケーションにのみ影響し、ソースのブロック・ストレージ・アプリケーションには影響しません。この機能は、ブロック・ストレージ・レプリケーションには適用されません。

例:

alter database ASOSamp.Basic enable replication_assume_identical_outline;

サーバーまたはアプリケーション・レベルでこの機能を有効にするには、かわりにREPLICATIONASSUMEIDENTICALOUTLINE構成を使用します。

alter database DBS-NAME disable replication_assume_identical_outline

集約ストレージ・データベースがターゲットでブロック・ストレージ・データベースがソースであり、2つのアウトラインが同一の場合に、集約ストレージ・データベースのレプリケーションを最適化しません。

例:

alter database ASOSamp.Basic disable replication_assume_identical_outline;
alter database DBS-NAME begin archive to file

プログラムをアーカイブすることでバックアップのためにデータベースを準備し、バックアップ中にファイルへの書き込みを抑制します。この処理を実行するには、システム管理者である必要があります。

アーカイブを開始すると次のような結果になります。

  • データベースが読取り専用モードに切り替えられます。アプリケーションの再起動後も読取り専用状態が持続し、end archiveを使用して読取り/書込みに戻るように変更されるまで続きます。

  • バックアップが必要なファイルのリストが格納されたファイルが作成されます。別のパスが指定されないかぎり、ファイルはデータベース・ディレクトリに格納されます。

begin archiveとend archiveでは、バックアップは実行されません。バックアップ・プロセス中にデータベースを保護するだけです。

ノート:

begin archive to fileend archiveの文法を使用することは、MaxLを使用してデータベースをバックアップおよびリカバリするためにサポートされる唯一の方法です。

例:

alter database ASOSamp.Basic begin archive to file 'asosamp_basic.arc';
alter database DBS-NAME end archive

データベース・ファイルをバックアップした後に、データベースが読取り書込みモードに戻ります。

ノート:

begin archive to fileend archiveの文法を使用することは、MaxLを使用してデータベースをバックアップおよびリカバリするためにサポートされる唯一の方法です。