Advanced Operations Guide (v11)

対話型 Btrieve Maintenance ユーティリティ

対話型 Maintenance ユーティリティは、Windows 32 ビットおよび 64 ビット プラットフォームで実行される Windows アプリケーションです。このユーティリティは、グラフィカル インターフェイスを使用した場合、またはディスクリプション ファイルを作成したい場合に使用します。このセクションには次の主なトピックがあります。

それぞれの主なトピックにはそのトピックに固有のタスクがあります。

拡張ファイルのサポート

MicroKernel データ ファイルは、オペレーティング システムのファイル サイズ上限を超えた容量を持つことが可能です。データを、MicroKernel の拡張ファイルからシーケンシャル ファイルにエクスポートした際、実際の形式の違いから、そのシーケンシャル ファイルの容量がデータベース エンジンのファイル サイズ上限を超える場合があります。

大きなサイズのファイルをエクスポートする際、対話型 Maintenance ユーティリティでは、シーケンシャル ファイルがファイル サイズの上限(2 GB)を超えていることを検出すると、エクステンション ファイルの作成が開始されます。この処理は自動的に行われます。エクステンション ファイルおよび元のシーケンシャル ファイルは、同じボリューム内に存在する必要があります(ファイルのサイズの制限は、オペレーティング システムやファイル システムによって異なります。2 GB というサイズは単にデータベース エンジンで強制的に指定した制限サイズです)。

エクステンション ファイルの名前には、ベース ファイルと似た名前を付ける方式が使用されます。エクステンション ファイルを示すのに、ネイティブな MKDE エクステンション ファイルがキャレット("^")を使用するのに対し、シーケンシャル ファイルのエクステンション ファイルはチルダ("~")を使用するので、同じベース ファイル名を持つ既存の MKDE 拡張ファイルを上書きするのを防ぎます。最初のエクスポート エクステンション ファイルには、ベース ファイル名に ".~01" という拡張子が付きます。次のエクステンション ファイルには、ベース ファイル名に ".~02" というように拡張子が付けられます。これらの拡張子は 16 進形式で追加されます。

名前付け規則は 255 までのエクステンション ファイルをサポートします。したがって、最大ファイル サイズは 256 GB です。

また、シーケンシャル ファイルからデータをインポートする場合は、ファイルが拡張されているかどうかがチェックされ、エクステンション ファイルからデータがロードされます。

長いファイル名と埋め込みスペースのサポート

スペースを含む長いファイル名は、サポートされるすべてのオペレーティング システムで使用できます。参照対象となるすべてのファイル名には、埋め込みスペースを含むことが可能であり、また 8 バイトを超える名前も使用可能です。

Btrieve の古いバージョンでは、Open や Create など、パスに基づくオペレーションの際に、ファイル名の最後にスペースを追加することができました。このバージョンでも、デフォルトとしてこれが設定されており、操作に支障をきたしませんが、バージョン埋め込みスペースを含むファイル名やディレクトリ名も正しく認識する機能を利用したい場合は、クライアント リクエスターの[スペースを含むファイル/ディレクトリ名]設定をオンに設定します。デフォルトの設定はオンです。

このオプションをオフに設定した場合でも、埋め込みスペースを含む名前を持つファイルにアクセスする際に、アプリケーションがファイルを開く、または作成する BTRV/BTRVID/BTRCALL/BTRCALLID コールを行うとき、その名前を二重引用符で囲めば、使用することができます。

レコードおよびページ圧縮

Pervasive PSQL ではレコードおよびページによる 2 種類のデータ圧縮を提供します。これら 2 種類のデータ圧縮は、別々に使われることもあれば、一緒に使われることもあります。2 つの圧縮タイプの主な目的はいずれも、データ ファイルのサイズを減らし、データのタイプとデータ操作のタイプに応じてより速いパフォーマンスを提供することです。

レコード圧縮

レコード圧縮には 6.0 以上のファイル形式が必要です。レコード圧縮により、多数の繰り返し文字を含むレコードの格納に必要なスペースを大幅に削減できます。データベース エンジンは、5 つ以上連続する同一文字を 3 バイトに圧縮します。

ファイルの作成時、指定されたレコード長に余裕を持たせるため、データベース エンジンは自動的に指定されたより大きいページ サイズを使用します。圧縮されていないレコードが、使用できる最大ページに収まりきらないほど大きい場合、データベース エンジンは自動的にレコード圧縮をオンにします。

圧縮レコードの最終的な長さは、ファイルに書き込まれるまで決定されないため、データベース エンジンはレコード圧縮されたファイルを可変長レコード ファイルとして作成します。レコードの圧縮されたイメージは可変長レコードとして格納されます。アプリケーションがレコードの追加、更新、削除を頻繁に行うと、個々のレコードはいくつかのファイル ページに断片化されます。データベース エンジンは 1 つのレコードを取得するために複数のファイル ページを読み取らなければならない場合があるので、この断片化によってアクセス時間が遅くなるおそれがあります。

開発者リファレンス『Pervasive PSQL Programmer's Guide』のページ サイズの選択ファイル サイズの予測およびレコード圧縮も参照してください。

ページ圧縮

ページ圧縮には 9.5 以上のファイル形式が必要です。内部的には、Pervasive PSQL データ ファイルはさまざまな種類のページの連続です。ページ圧縮は、ファイル内のデータ ページの圧縮と復元を制御します。

ファイルが物理ストレージから読み取られると、データ ページは復元されてメモリ キャッシュに保持されます。レコードの読み取りと更新は、メモリ キャッシュ内の圧縮されていないデータに対して行われます。書き込み操作が行われると、データ ページは圧縮されて物理ストレージに書き込まれます。圧縮されたページが、次回アクセスされるまで保持されるかどうかは、キャッシュ管理によって異なります。

データの種類によって圧縮しても意味がない場合、データベース エンジンはそのデータを圧縮しないで物理ストレージに書き込みます。

圧縮の使用時期の判断

レコード圧縮、ページ圧縮、あるいはその両方を使用することで得られる利点は、圧縮されるデータのタイプによって異なります。次の表では、データ圧縮を使用するかどうかを判断するための一般的な要因を説明します。

表 53 データ圧縮がふさわしいか考慮するための要因
圧縮
考慮する要因
レコード
ページ

 
レコード圧縮は、以下の条件の場合に最も効果的です。
  • 各レコードに文字の繰り返しが多数含まれる可能性がある。たとえば、レコードにいくつかのフィールドが含まれており、レコードをファイルに挿入するときにそれらのフィールドはすべてタスクによって空白に初期化される可能性があります。レコード圧縮は、これらのフィールドがほかの値を含むフィールドで分割される場合でなく、レコード内で 1 つにグループ化される場合に有効です。
  • データベース エンジンを実行するコンピューターが、圧縮バッファーで必要となる追加メモリを提供できる。
  • レコードは、変更されることに比べ、より頻繁に読み取られる。
レコードの固定長部分が「ページ サイズ - オーバーヘッド」より長い場合、自動的に圧縮が使用されます。
レコード圧縮は、キー オンリー ファイルやブランク トランケーションを使用するファイルには使用できません。
 

ページ圧縮は、以下の条件の場合に最も効果的です。
  • データが ZIP タイプの圧縮アルゴリズムを使用して高度に圧縮可能である。ページ圧縮によってファイル サイズが 1/4 程度に著しく縮小できる場合、ファイルのパフォーマンスはかなり向上します。
  • ページは、追加、更新、削除されることに比べ、より頻繁に読み取られる。
圧縮しても意味がない場合、データベース エンジンはデータ ページを圧縮しないで物理ストレージに書き込みます。

レコード圧縮およびページ圧縮の使用は、レコードに大きな空白部分が含まれる場合と、ページが追加、更新、削除されることに比べ頻繁に読み取られる場合に最も効果的です。

Btrieve Maintenance ユーティリティのインターフェイス

オペレーティング システムの[スタート]メニューまたはアプリ画面から、あるいは Pervasive PSQL Control Center の[ツール]メニューから Maintenance ユーティリティにアクセスします。このユーティリティのメイン ウィンドウは、次のようになります。

図 19 Btrieve Maintenance ユーティリティのメイン ウィンドウ

メニュー オプション

対話型 Maintenance ユーティリティには、以下のメニューが用意されています。

オプション
ファイル情報エディターの表示、オーナー ネームの設定およびクリア、ファイル情報レポートの生成、ユーティリティの終了を行います。
インデックス
インデックスの作成と削除を行います。
データ
ASCII ファイルからのデータのロード、ASCII ファイルへのデータの保存、データ ファイル間のレコードのコピー、および最後のバックアップからシステム エラーが発生するまでの間に行ったデータ ファイルへの変更を回復するためのロール フォワードを行います。
ヘルプ
Maintenance ユーティリティのヘルプを起動します。

ヘルプの起動

Maintenance ユーティリティのヘルプを使用するには、ヘルプの必要なダイアログ ボックスで[ヘルプ]をクリックするか、以下のような[ヘルプ]メニューのコマンドを選択します。

ヘルプの起動
Maintenance ユーティリティのヘルプ トピックが表示されます。
バージョン情報
著作権情報および製品のバージョン番号が表示されます。


Maintenance ユーティリティの概要

ファイル情報エディター