Cyber Luxeonのアーキテクチャと管理ツール
ここでは、Cyber Luxeonを構成するプロセスと、Cyber Luxeonのサーバー上の物理的な構成、DB管理者用GUIツールのDXEマネージャについて概説します。以下の図にCyber Luxeonのアーキテクチャを示します。
Cyber Luxeonのプロセス構成
Cyber Luxeonは、複数のプロセスがそれぞれ協業することで、XMLDBとしての機能を実現しています。複数のプロセスで役割分担をすることにより、プロセスを複数のサーバーに分散することができますので、スケーラビリティの向上も期待できます。以下の表にCyber Luxeonを構成するプロセスをまとめます。
プロセス | プロセス名(Windowsの場合) | 概要 |
DXE ObjectStoreサーバ | osserver.exe | XMLStoreを直接読み書きする |
XMLキャッシュ | xlnserver.exe | XMLStore上にあるXMLデータを、キャッシュして管理する |
DXEロックマネージャ | oscmgr6.exe | XMLStoreのロック状態を管理する |
Cyber Luxeon管理プロセス | xlnadmin.exe | 各XMLキャッシュの設定とXMLStoreの配置状況を管理する |
上記のアーキテクチャ図のオレンジ色のコンポーネントが、Cyber Luxeonのプロセスの各プロセスをあらわしています。
DXE ObjectStoreサーバ
XMLStoreを直接読み書きする唯一のプロセスです。他のプロセスはすべて、DXE ObjectStoreサーバを経由してXMLStoreにアクセスします。
XMLキャッシュ
XMLStore上にあるXMLデータを、キャッシュして管理します。具体的には、DXE Object Storeサーバーにアクセスし、XMLStore上にあるXMLデータに対して、作成・検索・更新・削除、XSL処理などを行います。XML操作の中心部分を担うXMLキャッシュを複数のサーバに分散して配置することで、システム全体のパフォーマンス向上を図ることができます。
DXEロックマネージャ
XMLStoreのロック状態をキャッシュします。XMLキャッシュは、DXEロックマネージャから、XMLドキュメントのロック状態を取得します。XMLキャッシュの稼動するマシンごとに起動されます。
Cyber Luxeon管理プロセス
各XMLキャッシュの設定とXMLStoreの配置状況を管理します。XMLキャッシュの管理事項を以下に列挙します。
- XMLキャッシュの名称
- アクセス・タイプ
- ロック・タイプ
- ルート
Cyber Luxeonのプロセスにアクセスするクライアント
Cyber Luxeonのプロセスにアクセスするクライアントは、DXEクライアントとDXEマネージャです。
DXEクライアント
Cyber Luxeonにアクセスするユーザーアプリケーションを総称して、DXEクライアントと呼びます。DXEクライアントを開発するには、Cyber Luxeonに用意されたAPIを使用してデータベースを操作する処理をユーザーアプリケーションに記述します。DXEクライアントは、XMLStoreに直接アクセスするのではなく、XMLキャッシュにアクセスし、間接的にXMLStoreにアクセスします。
DXEマネージャ
DXEマネージャは、XMLDBの管理者が、Cyber Luxeonや、格納されたデータを管理するためのGUIツールです。DXEマネージャはデフォルトキャッシュにアクセスします。
物理構成
以下の図にCyber Luxeonの物理的構成を示します。
ホスト
ホストはCyber Luxeonが稼動しているマシンのことです。
パーティション
パーティションとは物理的なフォルダに論理名を割り当てたものです。
パーティションの実体は、「c:\Program Files\CyberTech\Luxeon\storage」などのフォルダです。1ホスト内に複数のパーティションを作成することができます。
XMLStore
XMLStoreとは、名前の通り、XMLを蓄積する仕組みのことです。1つのストアに対し、1つの物理ファイルが割り当てられます。1パーティション内に複数のXMLStoreを作成することができます。
ディレクトリ
XMLStore内で、データを分類するための仕組みです。また、ディレクトリ内にも階層構造にディレクトリを作成することができます。ファイルシステム上の実際のフォルダとは異なります。
ドキュメント
格納するXMLドキュメントそのものです。
仮想ドキュメント
仮想ドキュメントは、DXE サーバーエクステンションに関連づけられます。DXEサーバーエクステンションとは、サーバサイドで起動するバッチ処理です。あたかも、XMLファイルを操作しているようにサーバ上のプログラムファイルを呼び出すので、仮想ドキュメントという名前がついています。JavaもしくはCOMで開発することができます。
仮想ドキュメントのメリットとして以下のものがあげられます。
- キャッシュプロセスのアドレス空間を使って動作するので、実行中にサーバ/クライアント間の通信やクライアントに負荷がかからない。
- DXEクライアントは1処理1トランザクションであるが、DXEサーバーエクステンション
バインダドキュメント
複数のXMLドキュメントを束ねて扱うためのドキュメントです。バインダドキュメントで複数のXMLを束ねることにより、バインダドキュメントにidをキーとしたインデックスを設定して、検索を高速化することができます。
Cyber Luxeonの入手方法、インストールと起動
まずは、Cyber Luxeonが起動するまでを説明します。
入手方法
サイバーテック社のサイトから無償版(Developer Edition)を申し込んでください。申し込み後、サイバーテック社からメディアが郵送されます(2006年12月25日現在)。
インストール
Cyber Luxeonをインストールするには、CD-ROMに格納されているsetup用のexeファイルを実行します。インストールのウィザードが起動しますので、ウィザードに従ってインストールします。詳細は付属のインストールマニュアルを参照してください。
起動
Cyber LuxeonはWindowsにインストールするとサービスとして登録されます。サービスへの登録は、[コントロールパネル]>[管理ツール]>>[サービス]で確認することができます。
以下の図は、Cyber Luxeonの起動直後にWindowsタスクマネージャでプロセスを参照した抜粋です。