データベースサーバー側を変更せずに、既存の Oracle DB 接続 (perl DBI) の帯域幅を測定することに関するアイデアを探しています。現在、私は実行しています
select * from table;
ほぼ既知の量のデータと応答のタイミングを持つテーブルに対して。シェルから手動で実行しており、管理者が確認できるように、アプリケーションの管理/デバッグ セクションに同様の機能を実装することを検討しています。具体的には、最初に準備を実行してから、 Time::HiRes を使用してパフォーマンスのタイミングを計りながら実行を実行することを考えています。
質問:
- ベンチマークに使用するより良い SQL ステートメントはありますか? おそらく、一部のクエリは、特定の量の意味のないデータをオンザフライで生成する可能性があります。
dd if=/dev/zero bs=1k count=1k
- Web UI に統合可能な帯域幅を測定するための別のアプローチを考えられる人はいますか? 非対話型のシェル コマンドは正常に機能します。
少し背景。私のアプリケーションは、内部ネットワークを介して Oracle DB にアクセスしています。ネットワークに帯域幅の問題があります。悪い日には、ダイヤルアップと同じくらい悪いです。実装環境はRHEL/Oracle Instantclient/Perl DBIです。