FAQ
そもそもハイブリッド メモリデータベースって何ですか?
ALTIBASEの基本的な仕組みは、ハードディスクにデータを格納する従来型のRDBMS(リレーショナル・データベース管理システム)と同じです。
ただし、ハードディスクと同じようにメモリ領域を使える点が異なります。 検索や集計など高速処理が必要なデータを格納するためのテーブルをメモリ上に
作成し、それ以外のテーブルをハードディスク上に作成するといった使い方ができるのが特徴です。
システムを止めずに、ハードディスク側からメモリ側にテーブルを移動することも可能ですし、その逆も可能です。
複数のサーバ間でデータを複製(レプリケーション)することもできます。
もう1つの特徴は、データベースを操作するための言語「SQL」を使える点です。標準規格の「SQL92」をサポートしています。
そのため、既存のアプリケーションを大きく改変しなくとも、データベースをALTIBASEに移行することが可能です。
メモリデータベースって何ですか?
メモリデータベースとはデータベース開始時に全てのデータをメモリ上に配置したデータベース管理システムのことです。
メモリデータベースはトランザクション処理も高速に処理可能です。
全てのデータをメモリ上に配置しているため、ディスク型のDBMSと比較するとディスクアクセスの回数を大幅に減らすことが可能になり、
またデータ処理アルゴリズムが非常にシンプルになります。
物理メモリがデータベース容量より小さい場合でも実行できますか?
ALTIBASEにはディスクテーブルスペースとメモリテーブルスペースという概念があります。ディスクテーブルスペース上に配置したテーブルは一般的なディスク型データベースと同様の動きとなります。この場合、頻繁に参照されるデータがバッファとして物理メモリ上に展開されますのでその分物理メモリが必要となります。一方、メモリテーブルスペース上に配置したテーブルはメモリデータベースと同様の動きとなります。従って、ディスクテーブルスペース上に配置したデータは十分な物理メモリがなくても問題はありませんが、メモリテーブルスペースに配置した場合、ALTIBASEのメモリ領域はスワップアウト禁止の設定となっているため、十分な物理メモリ容量がないとALTIBASEを起動することができません。ALTIBASEのメモリ領域をスワップアウト可能な設定とした場合、少ない物理メモリでの動作は可能ですが、パフォーマンスが劣化することが考えられるためお奨めできません。
通常はディスクテーブルスペース上にテーブルを配置しておき、高パフォーマンスが期待される場合にそのテーブルをメモリテーブルスペース上にコピーや移動させることも可能です。逆にピーク期を過ぎたデータをメモリテーブルスペースからディスクテーブルスペースにコピーや移動させることも可能です。<br>
ALTIBASEでは、実装されている物理メモリのサイズに応じたデータ配置を柔軟に設計できます。
データベースは拡張可能ですか?
メモリテーブルスペース、ディスクテーブルスペース共にデータベース作成時に初期割り当てサイズと自動拡張サイズの設定が可能です。自動拡張は利用可能な物理メモリがある限り行われ、メモリを確保できない場合には自動拡張の要因となった操作がエラーリターンします。
データベースの断片化は発生しますか?
データの挿入や削除の繰り返しによりデータの断片化が発生することがあります。ALTIBASEはメモリ上のデータ格納領域を内部的にページ管理しており、断片化により空き状態となったページをガーベージコレクトスレッドにより回収・再利用します。これらの動作はすべて自動的に行われるため、ユーザ操作による断片化の解消の運用などは不要です。
必要なメモリ容量について教えてください。
ALTIBASEで必要なメモリ容量はデータサイズ+インデックス領域+ALTIBASEの作業領域となり、通常データ容量の1.5倍が必要なメモリ容量となります。
可用性を実現する構成を組むことは可能ですか?
ALTIBASEのレプリケーションオプション(Replication ALTIBASE to ALTIBASE)を使用することで、Active/Standby,Active/Activeの冗長化構成をとることができます。冗長化構成台数は最大32台まで可能です。
システムの障害が発生した場合にデータの復旧ができますか?
ALTIBASEは稼動中にテーブルデータのスナップショットイメージであるチェックポイントファイルの取得と、レコード更新情報となるトランザクションログファイルの書き込みを行います。<br />障害発生後にALTIBASEを再起動するとこれらのファイルからデータを読み取り、障害開始直前の状態にデータを復旧します。
ディスクを利用しないで運用することはできますか?
システム障害が発生した場合でも、データを復旧する必要がない場合(ALTIBASEを再起動してデータをロードし直せばよい場合)には、ディスクを使用しない運用が可能です。ディスクを利用しない運用では、すべてのディスクアクセスが行われないため、ALTIBASEのパフォーマンスを最大化してご利用頂けます。
OracleやSQL Serverにアクセスするアプリケーションをそのまま流用できますか?
SQL92に準拠したSQL構文であれば、ほぼそのまま使用できます。アプリケーションインタフェースもODBC,JDBCをサポートしておりますので、これらのインタフェースを使用するアプリケーションであれば、ドライバの接続先の変更を行うだけで流用することができます。
他のメモリDB製品のアプリケーションインタフェースはあまり充実してないので導入が困難ですが、ALTIBASEはどうですか?
メモリDBの技術は比較的新しいため、ユーザが製品を導入する際、様々な問題があるようです。
メモリDBの目的は、パフォーマンスを改善することです。
もし便利な機能をたくさん実装したとするとメモリDBの性能が劣化する事につながります。
従って、他のメモリDB製品はODBC, JDBCインタフェースレベルのみ提供するのが主のようです。
ALTIBASEでは、アプリケーションプログラムからの使いやすさも重要だと考えています。
ODBC、JDBCだけでなく、組込SQLをサポートするSES、ストアドプロシージャを記述するPSMもサポートしています。ISAMや他社のRDBMSからの移行事例も豊富にあります。
Webアプリケーションシステムなどでの利用は可能ですか?
WebLogic、WebSphere、PHP、PERL、JSP、ASP、ASP.netなどとの連携が可能です。
ALTIBASEの価格はどのように設定されていますか?
価格については、ALTIBASE販売パートナー様へお問い合わせください。
データベース容量が増加した場合にライセンスの追加購入は可能ですか?
ALTIBASEのライセンス体系はデータベース容量により決定されますが、当初ご購入頂いたライセンスからデータベース容量が超過する場合には、上位のライセンスとの差額にてアップグレード頂くことが可能です。詳細については、ALTIBASE販売パートナー様、または弊社営業までお問い合わせください。