AccessのJetエンジンを利用したファイル共有型LANの特徴
Accessが当初発売されたころは、ディスクトップ型のデータベースとしてローカルのパソコンにインストールされるのが一般的でした。ディストップ型のデータベースとして利用する場合、Accessをローカルのパソコンにインストールして、データベースファイル(*.mdb)もローカルディスク上に作成します。この場合、データベースを他のユーザーと共有しないで排他的に利用することになります。
|
|
図 Accessをディスクトップ型のデータベースとして利用する形態
ディスクトップ型のデータベースとして利用する場合、アプリケーションの性能は、ハードディスクの速度とパソコン本体のCPUに依存することになります。
LAN(Local Area Network)の発展に伴い、データベースファイルをファイルサーバーに格納して、複数のユーザー間で共有するファイル共有型の利用形態が普及してきました。LAN環境でAccessを利用するときは、ネットワークのトラフィック負荷を軽減させるために、データベースファイルをバックエンド用(BackEnd.mdb)とフロントエンド用(FrontEnd.mdb)に分離するのが一般的です。この場合、バックエンド用のmdbは、ファイルサーバーに格納して複数のユーザー間で共有します。フロントエンド用のmdbは、ローカルパソコン(クライアント)のハードディクスに格納してネットワークの負荷に影響を与えないようにします。(つまり、ネットワークのケーブルを経由させないようにします。)
バックエンド用のデータベースには、通常テーブルのみ格納します。フロントエンド用のデータベースからは、バックエンドのデータベースにリンクさせて利用します。フロントエンドのデータベースには、リンクされたテーブル、クエリ、フォーム、レポートそしてモジュールなどを格納します。
|
|
図 Accessをファイル共有型のデータベースとして利用する
(データベースをバックエンド/フロントエンドに分割しない利用形態)
図のようにデータベースをバックエンド/フロントエンドに分割しない場合、Accessのフォームを開いたときフォームとフォームに連結されたデータがネットワーク経由でクライアントのパソコンに転送されます。このため、後述するデータベースを分割した場合と比較するとネットワークのトラフィックが増加して余分な負荷がかかります。
|
|
図 Accessをファイル共有型のデータベースとして利用する
(データベースをバックエンド/フロントエンドに分割して負荷を軽減)
図のようにデータベースをフロントエンドとバックエンドに分割した場合、Accessのフォームを開いたときフォームは、ローカルディスクからロードされますからネットワークに余分な負荷がかかりません。フォームに連結されているデータは、ネットワーク経由でクライアントのパソコンに転送されます。データベースを分割ないときと比較すると、フォーム/レポート/モジュールなどをロードするための負荷が軽減されます。
最後に、ファイル共有型データベースの特徴をまとめると以下のようになります。
■ クライアント/サーバー型(C/S型)のデータベースと比較して安価です。(数万円で購入できます。)
■ データベースの価格がクライアント数に依存しません。
SQL Server,
OracleなどのC/S型のデータベースは、クライアント数により価格が異なります。)
■ C/S型のシステムと比較して開発が容易です。
■ 作業テーブルの作成が容易です。
フロントエンドデータベースがクライアントのローカルディスクに作成されるので、作業テーブルを作成しても他のクライアントと競合することがありません。
■ 更新頻度の少ないテーブルを、フロントエンドのデータベースに格納してネットワークのトラフィックを軽減することができます。(例えば、郵便番号辞書など)
■ データベースエンジン(Jetエンジン)がクライアント側にインストールされます。