ADC

DataStream

NetScaler DataStream機能は、送信されるSQLクエリに基づいてリクエストを分散することにより、データベースレイヤーでリクエストを切り替えるインテリジェントなメカニズムを提供します。

NetScalerアプライアンスをデータベースサーバーの前に導入すると、アプリケーションサーバーとWebサーバーからのトラフィックが最適に分散されます。管理者は、SQL クエリ内の情報、データベース名、ユーザー名、文字セット、およびパケットサイズに基づいてトラフィックをセグメント化できます。

負荷分散アルゴリズムに基づいて要求を切り替えるように負荷分散を設定できます。または、SQL クエリパラメータに基づいて決定を行うようにコンテンツスイッチングを設定して、切り替え条件を詳しく説明することもできます。さらに、データベースサーバーの状態を追跡するようにモニターを構成できます。

注:

NetScaler DataStreamは、MySQLデータベースとMS SQLデータベースでのみサポートされています。サポートされているプロトコルバージョン、文字セット、特殊クエリ、およびトランザクションについては、「DataStream Reference」を参照してください。

DataStream 仕組み

DataStreamでは、ADCアプライアンスはアプリケーションまたはWebサーバーとデータベースサーバーの間にインラインで配置されます。アプライアンスでは、データベースサーバーはサービスによって表されます。

一般的な DataStream デプロイメントは、次の図で説明されているエンティティで構成されています。

図1:DataStream エンティティモデル

DataStream エンティティモデル

この図に示すように、DataStream 構成には次のものを含めることができます。

  • オプションのコンテンツスイッチング仮想サーバー (CS)。
  • 負荷分散仮想サーバー (LB1 と LB2) で構成される負荷分散設定。
  • サービス (Svc1、Svc2、Svc3、および Svc4)。
  • コンテンツスイッチングポリシー (オプション)。

クライアント(アプリケーションまたはWebサーバー)は、NetScalerアプライアンスで構成されたコンテンツスイッチ仮想サーバー(CS)のIPアドレスに要求を送信します。次に、アプライアンスは、アプライアンスに設定されているデータベースユーザー認証情報を使用してクライアントを認証します。コンテンツスイッチング仮想サーバー (CS) は、関連するコンテンツスイッチングポリシーを要求に適用します。ポリシーを評価した後、コンテンツスイッチ仮想サーバー (CS) は要求を適切な負荷分散仮想サーバー (LB1 または LB2) にルーティングします。次に、負荷分散仮想サーバーは、負荷分散アルゴリズムに基づいて適切なデータベースサーバー(アプライアンス上のサービスで表される)に要求を分散します。NetScalerアプライアンスは、同じデータベースユーザー資格情報を使用してデータベースサーバーとの接続を認証します。

コンテンツスイッチング仮想サーバーがアプライアンス上に構成されていない場合、クライアント(アプリケーションまたは Web サーバー)は、アプライアンス上に構成された負荷分散仮想サーバーに要求を送信します。NetScalerアプライアンスは、アプライアンスで構成されたデータベースユーザー資格情報を使用してクライアントを認証し、同じ資格情報を使用してデータベースサーバーとの接続を認証します。負荷分散仮想サーバーは、負荷分散アルゴリズムに従って要求をデータベースサーバーに分散します。データベース切り替えに最も効果的な負荷分散アルゴリズムは、最小接続方式です。

DataStream は接続多重化を使用して、同じサーバー側接続で複数のクライアント側リクエストを送信できるようにします。次の接続プロパティが考慮されます。

  • ユーザー名
  • データベース名
  • パケットサイズ
  • 文字セット
DataStream

この記事の概要