Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ データベース管理 » SQL Anywhere データベース接続 » SQL Anywhere データベースサーバ » SQL Anywhere のスレッド化

 

マルチプログラミングレベルのデータベースサーバ設定

データベースサーバの「マルチプログラミングレベル」は、同時にアクティブにできるタスクの最大数ですクライアント側の要求がデータベースサーバに届くと、その要求用に作成されたタスクがワーカ (使用可能な場合) に割り当てられます。ワーカが割り当てられた要求は「アクティブな要求」と呼ばれます。使用可能なすべてのワーカがビジー状態の場合、要求はスケジュールされていない要求キューと呼ばれる特殊なキューに格納され、要求はスケジュールされていない要求として分類されます。同様に、アクティブなタスクは、ワーカによって現在実行されているタスクです。アクティブなタスクは、アクセスプランの演算子を実行したり、その他のファンクションを実行したりします。ただし、(I/O 操作やローロックなどのために) リソースを待機することもあります。スケジュールされていないタスクは、実行の準備が整っているものの、利用可能なワーカを待機しているタスクを指します。同時に実行できるアクティブなタスクの数は、サーバのスレッドの数と、コンピュータに搭載されている論理プロセッサの数によって異なります。

SQL Anywhere を使用すると、DBA は、データベースサーバがサーバスループットに基づいてマルチプログラミングレベルを動的にチューニングできるようにするか (デフォルト)、またはマルチプログラミングレベルを手動で設定するかを選択できます。マルチプログラミングレベルは、データベースサーバの起動時にデータベースサーバオプション (-gna、-gnl、-gnh) を指定して設定するか、またはデータベースサーバの実行後に sa_server_option システムプロシージャで MinMultiprogrammingLevel、MaxMultiprogrammingLevel、CurrentMultiprogrammingLevel プロパティを使用して設定できます。

次の表は、データベースサーバのマルチプログラミングレベルを制御するコマンドラインオプションとサーバオプションをまとめたものです。

データベースサーバオプション (データベースサーバの起動時) sa_server_option 値 (データベースサーバの実行中) 説明
-gn CurrentMultiProgrammingLevel データベースサーバのマルチプログラミングレベルを設定します。
-gna AutoMultiProgrammingLevel データベースサーバのマルチプログラミングレベルの動的チューニングをオンまたはオフにします。
-gnh MaxMultiprogrammingLevel ネットワークデータベースサーバが同時に実行できるタスクの最大数を設定します。
-gnl MinMultiProgrammingLevel ネットワークデータベースサーバが同時に実行できるタスクの最小数を設定します。
 マルチプログラミングレベルのチューニング
 参照

各種マルチプログラミングレベル設定の効果
マルチプログラミングレベルの手動調整