Symfoware Server 解説書 - FUJITSU -
目次 索引 前ページ次ページ

第5章 Symfoware Serverの機能> 5.1 データアクセス

5.1.4 最適なデータ操作

Symfoware Serverでは、SQL文の指令と結びつく表を調べて、探索条件に見合った処理手順を決めます。この働きのことを最適化処理(または、オプティマイ)と呼び、その処理の結果として決定される処理手順をアクセスプランと呼びます。Symfoware Serverは、データ量や格納状況の情報に基づいた最適化処理を実現しています。この情報を最適化情と呼びます。

最適化情報には、実表のデータ量(行数)、インデックスの階層数および異なるキー値の数などがあります。最適化情報の収集は、RDBコマンドを利用して行います。結果はRDBディクショナリに格納されます。

この最適化情報の値を利用して、1つの表に複数のインデックスがある場合や1つのSQL文で複数の表を検索する場合に、利用するインデックスおよび表の検索順など処理手順にかかるコストを評価して、SQL文の条件式に指定された内容をもとに効率の良い処理手順を決めます。

最適なデータ処理について、以下の機能を説明します。

パフォーマンスモニ

Symfoware Serverでは、運用中のシステムにおいて性能に問題が発生した場合に、原因を調査、特定するための機能として、パフォーマンスモニタを提供しています。

パフォーマンスモニタについての詳細は、“RDB運用ガイド”を参照してください。

パフォーマンスモニタには、以下の2つの機能があります。

◆アクセスプランの取得

一定時間以上の処理時間がかかっているSQL文を自動的に検出します。検出したSQL文に関するアクセスプラン、SQL文処理中にどのような状態が多くの時間を占めていたかといった状態のサンプリング情報を取得し、取得したデータを蓄積します。蓄積されたデータは、RDBコマンドを利用することで、そのSQL文を実行したクライアントの情報、SQL文、アクセスプラン、状態のサンプリング情報として表示できます。表示されたデータから、性能問題が発生したSQL文を特定し、問題の分析と解決のための対策を検討することができます。

◆性能の統計情報の取得

アプリケーションやRDBコマンドの動作状況、システム資源の使用情報、アプリケーションが獲得する資源の占有情報を自動的、定期的に取得し、取得したデータを蓄積します。蓄積されたデータは、RDBコマンドを利用することで、任意の時間、任意の種類の統計情報として表示できます。何らかの性能問題が発生した場合には、取得した性能の統計情報から、原因の調査が可能となります。

SQLTOOL

Symfoware Serverでは、SQLTOOLの機能により、アクセスプランを利用者が参照できるようにしています。SQLTOOLは、RDBコマンドにより、SQLを対話的に操作することができ、データベースの性能チューニングを支援することができます。

SQLTOOLについての詳細は、“SQLTOOLユーザーズガイド”を参照してください。

SQLTOOLには、以下の5つの機能があります。

◆アプリケーションの開発支援

アプリケーションの開発支援機能として、SQL文を対話的に実行する機能を提供しています。アプリケーションを作成することなく対話的にSQL文を記述することで、以下の作業を行うことができます。

アプリケーションの開発支援機能を使用して、対話的に実行できるSQL文を以下に示します。

◆アクセスプラの取得

作成したSQL文のアクセス手順を取得します。取得したアクセスプランにより、対象のSQL文が使用するインデックスおよび表の結合順などを知ることができ、データベースの設計どおりに、SQL文が動作しているかを検証することができます。

◆性能情報の取得

SQL文実行時の資源使用情報を性能情報として取得します。この情報は、アクセスプランと比較し、SQLの動作を分析し、SQLの動作環境をチューニングする場合に利用します。

◆最適化情報の変更、表示

データベースの最適化情報を変更、表示します。

◆チューニング情報の変更、表示

実行中のSQL環境のチューニング情報を動的に変更します。また、チューニング情報を表示することもできます。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2007