コンカレントユーザサポート
データベースに対する同時ユーザ数は、データベースの特性や該当システムの容量と密接な関係があります。しかし、システム容量が増える比率だけ実際にデータベースがサポートする同時ユーザ数は比例関係を持たないことが一般的であり、特にデータベースがサポートするサービスアーキテクチャーがこのようなリソースに関する問題と直接的な関連性があります。
伝統的な方法として、サービス当り一つのプロセスを生成する構造を持つアーキテクチャは、ユーザ数分のプロセスが生成されなければならず、それによるリソースの無駄使いが激しい状態では、大容量ユーザをサポートするための解決策を見つけるのが困難です。限定されたプロセスで大量のユーザーをサポートするとしても、リソースをユーザ間で時間差をつけて分けて使うこととなり、完全な解決策であるとはいえません。
このような問題から、現在のデータベースの構造はマルチスレッドアーキテクチャーに移行している傾向であり、Altibaseは、設計当初からマルチスレッドを基本に検討されています。
Altibaseでは、スレッドアーキテクチャーを基本にサービススレッドプールやサービスセッションプールを提供し、2段階のスレッド構造を提供します。サービスセッションプールは、クライアントの要求を直接担当し、クライアントに情報を返すセッションを維持するものであり、サービススレッドプールは、このようなクライアントのサービスを実際に下位モジュールで実行します。サービスセッションプールやサービススレッドプールの数は、プロパティにより該当システムの負荷に合わせて適切な値を選択することができるため、必要以上のサーバーリソースを消耗することがないよう制御できます。また、クライアントに対する高速な応答を保障するために、一定の数までのクライアントにはサービススレッドとの1:1接続により最大の性能を保障し、一定の数以上のクライアントが接続される場合は、N:Mの接続に自動変換し、サーバーリソースを効率的に利用できるクライアント-サーバー間の混合サービス(Hybrid Architecture)方式を提供します。