Caché システム管理
Caché の構成
Caché を構成するには、管理ポータルを使用します。"Caché システム管理ガイド" には、マネージャの使用方法の詳細な情報や、各パラメータの最小値および最大値の情報が含まれています。または、選択したユーティリティの特定のフィールドで <F1> を押して、Caché のオンライン・ヘルプにアクセスすることもできます。
基本的なシステム構成のヒント:
-
アクセスするユーザの数を少なく設定しない限り、ユーザ・プロセスの最大数が Caché ライセンスのプロセス・カウントの合計と等しいことを確認します。
-
アプリケーションでより大きい値が要求されない限り、パーティション・サイズを適切なサイズ (既定は 1 MB) に保ちます。この値を大きく設定しすぎると、メモリとスワップ領域が効率的に使用されなくなります。Caché パーティションはサイズが固定されており、MSM パーティションのように拡張または縮小することはありません。Caché には %PARTSIZ に相当するユーティリティがないため、パーティション・サイズを動的に変更することはできません。
-
多くの場合、グローバル・バッファおよびルーチン・バッファの数を増やすのが、パフォーマンスを向上させる最善で最短の方法です。
MSM ユーティリティおよびそれらに相当する Caché 機能のリストについては、付録の “MSM と Caché ユーティリティ・カタログ” を参照してください。
デバイスの構成
ほとんどの場合、デバイスはまずオペレーティング・システム・レベルでセットアップする必要があります。OS レベルで構成すると、Caché 内ですぐにこれらのデバイスを使用できるようになります。これらのデバイスに対してニーモニック名または数値エイリアスを設定する必要がある場合は、管理ポータルのデバイス構成ユーティリティを使用します。これらの Caché レベルのデバイス構成は、cache.cpf ファイルに格納されます。Caché を起動するたびに、システムは cache.cpf ファイルを読み取り、CACHESYS データベース内でシステム・レベル・グローバルを再生成します。
デバイスの構成のヒント:
-
Caché には一連の予約された、組み込みのデバイス番号があり、それらは通常 MSM とは異なります。詳細は、"Caché 入出力デバイス・ガイド" を参照してください。
-
デバイスに対して、SUN などのニーモニック名、または 100 などの数値エイリアス (MSM システムでも共通) でアクセスする場合は、Caché のデバイス・テーブルにデバイスを入力するだけで済みます。
-
ニーモニック名は ^%IS という文字ベースのユーティリティで使用されます。このユーティリティは ^INTEGRIT および ^%G などのユーティリティにより使用されます。
-
数値エイリアスは Caché の OPEN、USE、および CLOSE コマンドにより直接使用されます。エイリアスの使用は、MSM のようなデバイス処理に最適な方法です。
-
ニーモニック名または数値エイリアスを使用する必要がない場合でも、^%IS ユーティリティまたは OPEN、USE、CLOSE コマンドを使用してデバイスにアクセスできます。例えば、/dev/rmt0 がシステム上で有効なデバイスであれば、コマンド OPEN "/dev/rmt0":"R" は有効になります。
-
パイプは、マシン上でプリンタや他のデバイスにアクセスする非常に有効な方法です。パイプのセットアップと使用に関する詳細は、"Caché 入出力デバイス・ガイド" を参照してください。
-
Caché の SPOOL デバイスを使用する場合は、^SPOOL グローバルを分離した場所に格納し、それが開発環境でスペースを取らないようにすることをお勧めします。その後、このグローバルはネームスペース構成を使用して参照できます。
Caché でのデバイスの構成に関する詳細は、"Caché システム管理ガイド" を参照してください。
Caché バックアップの自動化
Caché のバックアップとリストアは、実働システム上で実行するよう設計されています。バックアップは、システム全体においても、各データベース単位でも、または個別のグローバルとルーチンに対しても実行できます。OS レベルでの Caché バックアップの自動化を実行する上で、いくつかの考慮事項があります。次の 4 つの推奨する方法があります。
-
OS スケジューラは、Caché のバックアップ API 内で呼び出され、Caché の並行バックアップを実行します。完全バックアップ、累積バックアップ、インクリメンタル・バックアップを含む、Caché のバックアップ方法のいずれも、この API を通して利用可能です。この方法は実際の自動化バックアップにお勧めします。
-
Caché は OS スクリプトにより停止でき、その後 OS レベル・バックアップを実行できます。
-
Caché のデータベースは、OS レベル・バックアップが実行されている間、フリーズする場合があります。
-
OS レベル・バックアップでは、実際の Caché データベースの完全バックアップを実行できます。この方法を使用する場合、物理的整合性を維持するため、完全バックアップの後すぐに有効な累積バックアップも実行する必要があります。このとき、累積バックアップの自動化のために Caché バックアップ API を呼び出すことができます。このプロシージャの手順は、以下のとおりです。
-
事前バックアップ・コマンドとして、次のインクリメンタル・ビットマップを消去します。
Set x=$$CLRINC^DBACK(1)
-
実働システム上で OS バックアップを実行します。
-
バックアップ後のコマンドとして、次のように累積バックアップを実行します。
Set x=$$BACKUP^DBACK(Arg1,Arg2,...Arg10)
このオプションでは、OS レベル・バックアップでバックアップの実行中にファイルの変更が許可されている必要があります。OS バックアップ・ソフトウェアを注意して選んでください。
-
システム・バックアップのリストアは、^BACKUP と呼ばれる文字ベースのユーティリティで実行されます。基本的なバックアップ・タイプとその実行方法に関する詳細は、"Caché システム管理ガイド" を参照してください。
Caché ジャーナリング
Caché でのジャーナリングは、MSM でのジャーナリングの方法とよく似ています。システム障害後、システムを可能な限り最新の状態に戻すには、バックアップと組み合わせて使用するのが最適な方法です。ジャーナリングは、アプリケーション・トランザクションの追跡にも使用されます。ジャーナリングの詳細は、"高可用性ガイド" を参照してください。
ビフォー・イメージ・ジャーナル (BIJ) に相当する Caché の機能は、ライト・イメージ・ジャーナル (WIJ) と呼ばれます。これは、Caché システム上で自動的に有効になります。これは、\cachesys\mgr ディレクトリにある cache.wij という単一のファイル (安定したボリューム・グループごとに個別の BIJ ファイルを持つ MSM のようではなく) で構成されます。ファイルのサイズは固定されておらず、必要に応じて変更されたブロックを収容するために拡張します。
アフター・イメージ・ジャーナルも自動的に有効化されます。MSM とは異なり、Caché ジャーナル・ファイルは必要に応じて作成され、事前に定義される必要はありません。Caché が再起動されるたびに、新しいジャーナル・ファイルが作成されます。ジャーナル・ファイルが自動的に削除される "経過時間" は、管理ポータルで変更可能なシステム設定で決定されます。
ジャーナリングのヒント:
-
プロセスでは、^%SYS.NOJRN の ENABLE と DISABLE 行タグを使用して、そのプロセスに対するジャーナリングを有効または無効にできます。
-
[すべてのグローバルをジャーナルする] オプションは、本当に必要でない限り使用しないでください。このオプションを選択すると、データベース内のすべてのグローバルがジャーナルされます。そのため、非常に大きなサイズのジャーナル・ファイルが作成され、シャドウ・システム・ジャーナリングが使用されている場合は、システムのパフォーマンスが低下し、ネットワーク・トラフィックが増大する場合があります。システムの再起動時に消去できる一時グローバルは、決してジャーナルしないでください。
-
バックアップごとにジャーナル・ファイルを切り替えることをお勧めします。このプロセスは自動化できます。
-
シャドウ・システム・ジャーナリング構成では、拡張グローバル参照が使用されていない限り、グローバル READ はローカル・バージョンのグローバルにのみアクセスします。
シャドウ・システム・ジャーナリング
Caché シャドウ・システム・ジャーナリングは概念的に MSM のクロス・システム・ジャーナリングとよく似ていますが、Caché シャドウ・システム・ジャーナリングのほうが機能的に優れています。例えば、Caché では次の 2 つのデータ転送モードが使用可能です。
-
高速 (以前はブロック・モード) モード
-
シャドウは、データ・サーバに接続し、実際のジャーナル・フラット・ファイルを取得します。
-
取得されたトランザクションは、オプションでシャドウ・マシンに適用されます。冗長なジャーナル・ファイルを維持するには、取得されたトランザクションを適用しないよう選択することをお勧めします。
-
一度に多くのトランザクションがバイナリ・ジャーナル・ブロックにより取得されるため、ブロック・モードはレコード・モードより高速になる可能性が高くなります。
-
適用されたトランザクションは、必要に応じてシャドウ・マシンのローカル・ジャーナル・ファイルに記録されます。
-
-
互換 (以前はレコード・モード) モード
-
シャドウは、TCP 経由でデータベース・サーバに接続し、パッケージ化された文字列を使用してトランザクションを取得します。
-
取得されたトランザクションは、適用される前にプログラム的にスキャンされます。スキャンの際、次の情報にアクセスできます。
-
現在のレコードのアドレス
-
SET または KILL などのトランザクション・タイプ
-
存在する場合、関連するグローバル
-
グローバルが設定する新規値
-
-
トランザクションがパッケージ化された文字列により取得されるため、レコード・モードはブロック・モードより低速になる可能性が高くなります。
-
適用されたトランザクションは、必要に応じてシャドウ・マシンのローカル・ジャーナル・ファイルに記録されます。
-
レコード型転送モードのシャドウイングは、異なるエンディアン・システムをリンクする場合 (Intel および Sun など) に採用できます。これとは異なり、ブロック型転送モードのシャドウイングでは、転送は同じエンディアン・タイプに限定されます。
-
転送と配信のメカニズムは、MSM と Caché 間で異なります。MSM は DDP 経由の "push" メカニズムを利用します。このメカニズムでは、個別の SET や KILL が通常のクロス・システム更新としてシャドウ・サーバに適用されます。Caché は、プライマリ・サーバからシャドウ・サーバへ、TCP/IP 経由でデータを取り込みます。
Caché のネイティブ TCP の使用には、シャドウイング・パフォーマンスの向上や WAN サポートの容易なセットアップなど、さまざまな利点があります。インターネット上のシャドウイングなどの拡張機能や、各プライマリ・サーバに複数のシャドウ・サーバを定義する機能も利用可能です。
MSM から Caché へのシャドウイングと切り替え
MSM クロス・システム・ジャーナリングが、(例えば、拡張グローバル参照を使用して) シンプルな DDP クロス・システム SET および KILL により実装されており、Caché で DDP がサポートされる場合は、MSM サーバから Caché サーバへのシャドウイングが可能です。これは、プロダクション・システムで最小限のダウン・タイムで切り替えを準備する際、非常に役立ちます。
例えば、MSM プライマリ/シャドウの組み合わせを Caché の同等の機能で置き換える場合の次の手順について考えてみます。
-
MSM シャドウをオフラインにして、バックアップし、ジャーナリングを有効にします (または既に有効になっている場合は、ジャーナル・スペースを切り替えます)。
-
Caché サーバにバックアップをリストアします。
-
MSM UCI を Caché データベースに変換します (前の章を参照してください)。
-
Caché と MSM 間でDDP を構成し、MSM で Caché データベースを表示できるようにします。
-
MSM シャドウ上でクロス・システム・ジャーナリングを構成し、Caché プライマリの適切なデータベースを指定するようにします。
-
MSM シャドウ上でクロス・システム・ジャーナリングを有効にします。
Caché プライマリに更新が送信されるようになります。もちろん Caché シャドウを作成して (上記の #3 で作成された元の Caché データベースを使用して)、Caché プライマリに接続することもできます。
システムが安定し、日付と時刻の切り替えが設定されたら、MSM プライマリ・サーバへのすべてのアクセスを無効にし、Caché プライマリにすべての更新がフィルタされるようにし、MSM サーバをシャットダウンします (安全を確保するため)。その後、ユーザに対して、古い MSM プライマリの代わりに新しい Caché プライマリへのアクセスを許可します。最後の手順は、サーバやクライアント構成で IP アドレスを変更するのと同じくらい簡単です。
この方法を使用すると、ダウンタイムの合計が数分に短縮されます。