|
Pervasive PSQL のエンジンは、以下の 2 つのデータベース サブエンジンから構成されています。
Pervasive PSQL は最適化されたメモリ アーキテクチャを使用し、トランザクショナル アクセスとリレーショナル アクセスの両方に高いパフォーマンスを提供します。MKDE および SRDE は、共に同一プロセス アドレス空間で動作し、それらの間の通信にかかる CPU 時間を最小限にします。
同時にたくさんの更新や書き込みが行われたり、長時間に渡ってトランザクションが開かれたままになる複数ユーザー環境では、行レベルのロックによってデータベース エンジンのパフォーマンスが向上します。
トランザクションはページ全体ではなく直接影響する行のみをロックします。クライアントはあるページのレコードの変更を、他のクライアントが同一ページの別のレコードを変更するのと同時に行うことができます。2 番目のアプリケーションは、最初のアプリケーションが現在ロックしているのとまったく同じレコードを変更しようとしたときにのみ、待つことが必要になります。したがって、行レベルのロックは複数ユーザー環境で総体的な待ち時間を減少させ、パフォーマンスを向上させます。
この機能は MicroKernel Database エンジン内で完全に透過です。この機能は常に動作していて、サポートされるすべてのオペレーティング システム プラットフォームと同様、サーバー、ワークグループでサポートされます。この機能は、データ ファイル形式 v6.x 以降でサポートされます。
行レベルのロックはデータ ページに実装され、部分的にはキー ページにも実装されます。可変ページには行レベルのロックは適用されません。キー ページの一部分の変更によって、キー エントリが別のページに移動することがあります。その例として、キー ページが分割または結合されるときがあります。これらの変更では、トランザクションが完了するまで完全なページ ロックが継続します。
MicroKernel Database エンジン(MKDE)は、Pervasive PSQL アプリケーションの Btrieve および MicroKernel API をサポートしています。Pervasive PSQL Sever および Pervasive PSQL Workgroup は共に、エンジンと同じコンピューター上で実行されるローカル アプリケーションをサポートします。サーバーの MKDE は、ローカル アプリケーションとリモート(クライアント/サーバー)アプリケーションの両方をサポートします。ワークグループの MKDE は、リモート マシンで実行されるアプリケーションにも対応し、リモート マシン上の別のピア ワークグループ エンジンによるリクエストを処理します。
MicroKernel エンジンには、2 つのバージョンがあります。サーバー エンジンは、Linux および Windows サーバー上で実行可能です。ワークグループ エンジンは Windows 上でのみ実行できます。また、このエンジンはシングル ユーザーや小規模のワークグループ構成向けに設計されています。
デフォルトでは、ワークグループ エンジンは Windows のログイン時に起動されるよう設定されています。ファイルが既にエンジンによって開かれている場合、ワークグループ エンジンは、別のピア エンジンによるリクエストを処理できます。特定のマシンを設定してデータベース エンジンをゲートウェイとして使用することもでき、ほかのワークグループ エンジンがファイルを開くことを回避します。
Windows のサーバー エンジンは、インストールされると Windows のサービスとして実行されます。ワークグループ エンジンは、インストールされるとアプリケーションまたはサービスとして実行されます。アプリケーションとしてインストールされた場合は、ワークグループ MKDE の実行中は、それを表すトレイ アイコンが表示されます。ワークグループ MKDE を実行していない場合、トレイ アイコンは表示されません。サーバー エンジンの場合、またはワークグループ エンジンがサービスとしてインストールされた場合、トレイ アイコンは表示されません。「サーバーとワークグループの技術的な相違」も参照してください。
Pervasive PSQL の Btrieve および ODBC API を使用することにより、アプリケーションからのローカルまたはリモートのデータベース エンジンへの接続情報が表示されない、分散型データベース アプリケーションを作成できます。このアーキテクチャを使用すると、アプリケーションは共存するデータ、つまりアプリケーションと同じコンピューターで実行されているデータにアクセスすると同時に、リモート コンピューターのデータにもアクセスできます。さらに、SQL データベースは、ローカルの MicroKernel Database エンジンによって処理される DDF(データ辞書ファイル)、およびリモートの MicroKernel Database エンジンによって処理されるデータ ファイル(テーブル)を作成することにより、分散化が可能です。ローカルの MicroKernel Database エンジン以外のエンジンにも処理されるこのような SQL データベースは、「混合アクセス データベース」と呼ばれます。
混合アクセス データベースには、以下の制約があります。
サーバー版の Windows 用 MicroKernel エンジンは、ページをディスクに書き込む際に非同期 I/O を使用します。この機能はパフォーマンスを向上させます。MicroKernel は直ちに Windows システム キャッシュまたは MicroKernel のキャッシュにページを書き込みます。次に、Windows はページがディスク上にあると信号を送って、MicroKernel が効率的に書き込み操作を行えるようにします。
MicroKernel でたくさんの並行オペレーションが同時に行われる場合、特にデータセットがストライプ セットのディスク ドライバー上にある場合には、読み込みパフォーマンスも向上しています。各読み込みは、ページが利用可能になるまでワーカ スレッドを待機させます。非同期 I/O では、オペレーティング システムは複数の読み込み要求の作業をプールして、読み込み操作をより効率的に行います。
Pervasive PSQL Relational Database エンジン(SRDE)には、Pervasive PSQL アプリケーション用の ODBC サポートが用意されています。
ODBC クライアントのプラットフォームには、Windows プラットフォームがあります。SRDE へのリモート ODBC アプリケーション アクセスには、ODBC クライアントがインストールされている必要があります。これは、ネットワーク上でクライアント側の ODBC 呼び出しを ODBC 通信サーバーに転送する専用 ODBC ドライバーです。
SRDE には以下のような機能が含まれています。
ODBC 通信サーバーは、以下の機能を実行します。
SQL および ODBC の詳細については、『SQL Engine Reference』の SQL の概要および 「DSN と ODBC アドミニストレーター」 を参照してください。
|