- -Oracleパフォーマンスチューニング:データベースのパフォーマンスを向上させる方法

Oracleパフォーマンスチューニング:データベースのパフォーマンスを向上させる方法

Oracleデータベースのパフォーマンスが低いsidな。多くの場合、アプリケーションのパフォーマンス低下につながるさまざまな影響があります。これは、典型的な管理者がどこでもない問題を探しているときに、野生のガチョウの追跡につながる可能性があります。

データベースが分散多層アプリケーションのボトルネックにならないようにする方法は1つしかありません。Oracleデータベースのパフォーマンスの調整。それが今日の投稿のトピックになります。 私たちの目標は、このテーマに関する詳細なチュートリアルを提供することではなく、この一見圧倒的なタスクを処理するのに役立つ最良のツールを選択できるようにするのに十分な情報を提供することです。

Oracleパフォーマンスチューニング:データベースのパフォーマンスを向上させる方法

まず、データベースの紹介から始めます。であり、どのように機能するか。もちろん、Oracleが今日の主な焦点であるため、Oracleについてもう少し具体的になります。次に、パフォーマンスチューニングに取り組みます。それが何であり、どのように機能するかを説明します。次のビジネスの順序は、Oracleデータベースのパフォーマンスチューニング作業の中核であるデータベースパフォーマンス分析です。そしてそれは非常に重要なので、Oracleデータベースのパフォーマンス分析に最適なツールを最終的にレビューします。

リレーショナルデータベース管理システムについて

最も単純な表現では、データベースはデータです整理された情報を格納する構造。データベース内のデータはテーブルに保存され、各行はデータの1つのアイテムを表し、各列はこのアイテムに関する情報の一部です。たとえば、各エントリが行になり、姓、名、住所、通り、都市、州、国などの列があるデータベースにアドレス帳を保存できます。

データベースシステム-リレーショナルとも呼ばれますデータベースマネージャ-そのデータを操作するいくつかの方法を提供します。複数のテーブルを結合したり、データをインデックス化して検索を高速化したり、さまざまな方法で操作したりできます。データベースの説明には1冊の本が必要です。実際、何百もの本がこの主題について書かれています。私たちの議論のために、重要なことは、データベースは非常に複雑なソフトウェアであるということです。その複雑さに一部起因して、多くの要因がパフォーマンスに影響を与える可能性があります。

Oracleについては、リレーショナルデータベース管理システム(RDBMS)。古くからあり、1979年に最初にリリースされたとき、最初のSQLベースのRDBMSでした。それ以来、進化は止まらず、バージョン19は昨年8月にリリースされました。今日、RDBMS市場は複数のベンダーからの製品で飽和しています。 Microsoft SQL ServerとIBM DB2はおそらく最も人気のある代替品ですが、無料のオープンソース製品はますます人気が高まっており、多くの場合、ほとんどのユースケースで同等の機能とパフォーマンスを提供しています。

Oracleパフォーマンスチューニングとは

Oracleデータベースのパフォーマンスチューニング Oracleを最適化するプロセスを指しますSQLステートメントの実行を効率化することによるパフォーマンス。簡単に言えば、パフォーマンスチューニングは、データベース内に含まれる情報へのアクセスと変更のプロセスを簡素化し、クエリの応答時間を改善し、結果としてアプリケーションのパフォーマンスを改善します。一部の教科書がどんなに複雑に見えても、実際にはそれだけになります。ただし、それを行うことは複雑な部分です。人生の多くのことと同様に、これは言うよりも簡単です。

仕組みは?

パフォーマンスチューニングでは、パフォーマンスの問題の原因を特定するためのRDBMS。データベース管理者(DBA)は、しばしば困難なタスクに直面しています。一方では、ユーザーはアプリの遅延やページの読み込みが遅いことを報告しますが、他方では、管理者はデータベースのボトルネックの原因を特定することはできません。オプティマイザーの問題ですか?クエリステートメントの実際のコーディングですか?サーバーに問題がありますか?

パフォーマンス調整の管理者は考慮する必要がありますOracleデータベースの多くの要素を使用して、操作の遅延をトラブルシューティングします。パフォーマンスチューニングは非常に時間がかかるだけでなく、さらに重要なこととして、どこから始めればよいかを把握するのが難しい場合があります。集中的なパフォーマンスチューニングプロセスでは、システムレベルのアプローチを採用し、すべてのOracleコンポーネントを上から下まで考慮します。

多くのデータベースの専門家が知っているように、チューニング管理者が最初にサーバー、データベースインスタンス、およびそのオブジェクトでシステムレベルのチューニングを実行しない限り、個々のSQLステートメントは1つずつ効果がありません。個々のSQLステートメントをチューニングする前に、入出力(I / O)測定、オプティマイザーのパラメーターと統計、およびインスタンス設定を評価することを強くお勧めします。そうしないと、設計された実行計画に反して実行プロトコルを決定するため、オプティマイザによって後でSQLチューニング作業が役に立たなくなる可能性があります。

関連する読書: 6最高のSQL Server監視ツール

最初のステップ、データベースパフォーマンスの分析

データベースサーバーのパフォーマンスの分析と稼働時間やその他の運用パラメータを監視することは、ネットワーク、システム、データベース管理者の最も重要なタスクの1つです。データベースサーバーソフトウェアをスムーズかつ効率的に実行し続けるのに役立ちます。適切なツールを使用して適切に実行すると、サーバーのハードウェアとソフトウェアだけでなく、さらに重要なこととして、エンドユーザーのエクスペリエンスにとっても有益であることがわかります。

いくつかの問題がデータベースサーバーを苦しめ、パフォーマンスに悪影響を及ぼす可能性があります。それらのうち、最も重要なもののいくつかを次に示します。

データベースサイズ

データベースのサイズが大きくなると、サーバーはテーブルからデータを読み取って処理するには、より多くのメモリとCPUが必要です。たとえば、既存のテーブルのサイズを大きくすると、サーバーのパフォーマンスに顕著な影響が生じる可能性があります。

クエリ構造

クエリは、データベースに与えられるコマンドです特定のデータを取得します。クエリが複雑になるほど、データベースのパフォーマンスへの影響が大きくなります。サーバーのパフォーマンスを管理するには、データベースサーバーで最も負荷の高いクエリを特定することが重要です。最も多くのリソースを使用しているクエリが特定されると、サーバーサイクルとメモリ使用量の負荷を減らすための努力をすることができます。また、データベースでこれらの高価なクエリを引き起こしているアプリケーションを見つけることは、これらのクエリの背後にある根本的な問題を診断し、迅速かつ効率的に修正するのに役立ちます。クエリの監視は、問題を引き起こしているホストアプリケーションを特定するのに役立ち、他のアプリケーションの問題を診断するのにも役立ちます。

インデックスの断片化

データベースに保存されているデータは、データベースを検索し、データをより高速かつ効率的に取得します。適切なインデックス作成はデータの検索と取得を高速化するのに役立ちますが、データが変更、削除、または削除されると、インデックス付けされたコンテンツが散らばり、データベースが断片化してパフォーマンスが低下する可能性があります。

ハードウェア性能

を実行しているサーバーのハードウェアパフォーマンスデータベースは、データベースのパフォーマンスにも大きな影響を与える可能性があります。メモリ、キャッシュ、およびページングをリアルタイムで監視して、データベースサーバーソフトウェアが最適に実行され、ボトルネックやスローダウンが発生しないことを確認する必要があります。

Oracle Databaseパフォーマンス分析のトップツール

Oracleデータベースのパフォーマンス分析はこのように重要でありながら複雑な問題であるため、利用可能な最高のツールのいくつかを市場で探し回っています。以下でレビュ​​ーする各ツールは非常に推奨されますが、それらはすべて非常に異なっています。特定のニーズに最適なツールの選択を完了する前に、詳細なレビューを読んだり、それらのほとんどが提供する利用可能な無料トライアルを利用したりしてください。

1. SolarWinds Database Performance Analyzer (無料Tリアル

最初のエントリーは、 SolarWinds、私たちをもたらした同じ会社 ネットワークパフォーマンスモニター、多くの人が最高のネットワーク帯域幅監視ツールの1つと見なしています。 SolarWinds 主に世の中にある最高の無料ツールのいくつかを含むツールの印象的な選択により、ネットワーク管理者の間で有名になりました。

SolarWinds Database Performance Analyzer (または DPA)Oracleデータベースの監視と分析問題を解決するためのインスタンス。応答時間分析メソッドを使用し、クエリ要求とデータベースからの対応する応答との間の時間に焦点を当て、待機時間とイベントを分析してデータベースのボトルネックを特定します。

SolarWinds Database Performance Analyzer

  • 無料トライアル: SolarWinds Database Performance Analyzer
  • 公式ダウンロードリンク: https://www.solarwinds.com/database-performance-analyzer/registration

このツールは使いやすいインターフェースを誇ります問題をすばやく簡単に見つけるのに役立ちます。メイン画面では、データベースインスタンス、待機時間、クエリアドバイス、CPU(警告およびクリティカルアラートを含む)、メモリ、ディスク、およびセッションを表示できます。

特定のデータベースのトレンドダッシュボードインスタンスは、1か月間のユーザーの合計待機時間(または、平均または典型的な1日の待機時間の選択)をグラフィカル形式で表示します。グラフの各色は個々のSQLステートメントを表し、どのステートメントが実行に最も時間がかかるかを表します。

SolarWinds Database Performance Analyzer 機能満載なので、記事全体がそれに専念できます。最も重要な機能の概要を次に示します。

データベースのチューニングのアドバイス

このツールは、個々のチューニングに関するアドバイスを提供しますデータベースインスタンスを作成し、それらが最高のパフォーマンスで実行されていることを確認します。インスタンスのすべてのパラメーターを分析し、特定のクエリまたはデータベースインスタンス全体を最適なパフォーマンスに最適化するための一連のアクションを推奨することで、それを実現します。

すべてのアクティブなセッションのアクティブな監視

非常に詳細なネイティブポーリングエンジンは、データベースインスタンスに追加の負荷をかけることなく、データベースインスタンス内で発生しているすべてを正確に記録します。

データベースコンポーネントの追跡、監視、分析

パフォーマンスの根本原因を特定するために問題、ツールはクエリ、ユーザー、ファイル、計画、オブジェクト、待機時間、ストレージ、日付/時間/時間/分を自動的に関連付けて、その場で問題を正確に発見して診断します。

すべてのデータベースのモニタリングの単一ポイント

SolarWinds Database Performance Analyzer Oracleでのみ機能しません。 実際には、Microsoft SQL Server、MySQL、DB2、ASEなどのほとんどの主要製品をサポートしています。また、物理オンプレミスサーバー、仮想マシン(VmwareまたはHyper-Vのいずれか)、およびクラウドベースのデータベースもサポートします。

エージェントレスで高度にスケーラブル

この製品を使用すると、できるだけ多くを監視できます必要に応じてデータベースインスタンス。 1から1000インスタンスまで簡単に拡張できます。また、サーバーに監視エージェントや分析エージェントをインストールする必要もありません。したがって、このツールがデータベースのパフォーマンスに影響を与えるリスクはありません。

の価格 SolarWinds Database Performance Analyzer $ 1 995から開始し、監視するデータベースインスタンスの数と種類によって異なります。購入する前に製品を試してみたい場合は、完全に機能する14日間の試用版を利用できます。

14日間の無料トライアル: https://www.solarwinds.com/database-performance-analyzer/registration

2. Idera診断マネージャー

Idera診断マネージャー Oracleおよびその他のパフォーマンス監視を提供します物理環境と仮想環境の両方のデータベース。このツールにより、管理者は、物理サーバー、仮想マシン、およびその基礎となるホストハードウェアからパフォーマンス統計、メトリック、およびアラートを表示できます。監視されるメトリックには、CPU、メモリ、ハードディスクの使用量と容量、ネットワークの使用量などが含まれます。この製品は、国境を越えた監視とともにSQLクエリの予防的な監視も提供し、管理者にOracleデータベースの正常性に関する推奨事項を提供できます。

Idera Diagnostic Manager-セントラルダッシュボード

Idera診断マネージャー ウェブベースのインターフェースまたはモバイルを提供しますAndroidとiOSの両方の携帯電話とタブレット、Blackberryプラットフォームで利用できるアプリ。 Oracleサーバーインスタンスに関するリアルタイムデータと履歴データを利用できるため、管理者はモバイルアプリから即座に変更を加えることができます。また、モバイルアプリはWebコンソールほど機能満載ではありませんが、プロセスの表示と強制終了、必要に応じたジョブの開始と停止、問題の解決に役立つクエリの実行など、いくつかの管理タスクを実行できます。

この強力なツールの他の機能には、誤ったアラートを回避するために構築された予測アラートシステム、および効率が悪いクエリやパフォーマンスの低いクエリを特定できる優れたクエリパフォーマンス監視機能。の価格 Idera診断マネージャー データベースインスタンスあたり1 996ドルから開始し、かなり短い14日間の試用版も利用できます。

3. ManageEngineアプリケーションマネージャー

あまり知られていないかもしれませんが SolarWinds, ManageEngine ネットワーク管理者の間で優れた評判を得ている別名です。その名前に惑わされないでください。が ManageEngineアプリケーションマネージャー 主にアプリケーション管理を扱っており、いくつかの強力なOracleパフォーマンス監視および管理機能も含まれており、管理ツールと同じくらい監視プラットフォームです。

ManageEngineアプリケーションマネージャーのOracleデータベースモニターは、多次元のすぐに使えるOracleの監視を提供します。また、迅速なアラートと洞察力に富んだレポートを誇っています。その多数の機能により、 Applications ManagerによるOracle用データベースパフォーマンスアナライザー 強力なOracleデータベース監視ツールです何千ものIT管理者が使用します。 Oracleデータベースは複雑であり、監視は多くの場合困難で時間がかかります。重要なパラメータは、亀裂を簡単にすり抜けることができます。このツールの効果的なOracle監視サポートにより、Oracleデータベースのさまざまな面、特にテーブルスペース、セッション、SGA、データファイル、ディスクI / Oに関連するメトリックのパフォーマンスを簡単に追跡できます。

ManageEngine Applications Manager Oracleスクリーンショット

これでできることはもっとたくさんありますツール。たとえば、アプリケーションのパフォーマンス監視環境に関するコードレベルの情報を使用して、アプリケーションの応答時間を追跡できます。トランザクション追跡機能により、遅いトランザクションを検出できます。データベースクエリの実行を監視し、バックグラウンドトランザクションを追跡します。

ManageEngineアプリケーションマネージャー いくつかのエディションで利用可能です。 機能限定の無料版、ProfessionalおよびEnterprise有料版があります。価格は945ドルからで、詳細はManageEngineに問い合わせて入手できます。 30日間の無料試用版も利用できます。

4. eG Enterprise

eGイノベーション パフォーマンス監視ツールを専門とする会社です。その主力製品は eG Enterprise。総合的なパフォーマンス管理ソリューションです自動化されたIT監視、診断、およびレポートを提供して、アプリケーションのスローダウン、ユーザーエクスペリエンスの問題、ネットワークの停止、仮想化のボトルネック、サーバー障害、ストレージのホットスポットなどのトラブルシューティングを行います。

eG Enterprise エージェントベースとエージェントレスの組み合わせを使用します物理環境、仮想環境、クラウド環境、ハイブリッド環境など、あらゆるタイプの環境で、アプリケーションコードからハードウェアまで、ITインフラストラクチャ全体の健全性とパフォーマンスを監視するテクノロジ。このツールは、特許取得済みのパフォーマンス相関と根本原因診断テクノロジーを使用しています。これにより、パフォーマンスのトラブルシューティングが簡単になり、問題の解決と運用効率が向上します。

eG Enterpriseスクリーンショット

eG Enterprise の広範な監視機能が含まれていますOracleデータベース。単一のeG監視エージェントは、システムで実行されているすべてのOracleデータベースインスタンスを監視できます。 Oracleデータベースインスタンスの実際の監視は非侵入的に実行され、管理者は監視をエージェントベースで実行するか、エージェントレスで実行するかを設定するオプションがあります。

eG Enterpriseのウェブベースのアーキテクチャにより、中央マネージャーからの分散Oracleサーバーの管理と監視。管理者は、Web上でOracleデータベースサーバーのパフォーマンスをリアルタイムで表示および分析できます。このツールのOracleモニターには、大量のパフォーマンスデータで管理者を圧倒することを避けるために構築されたOracleデータベースサーバー専用のモデルが含まれています。管理者は、Oracleデータベースサーバーのレイヤーモデルを表示することにより、データベースサーバーのどのレイヤーが問題を引き起こしているのかをすばやく判断できます。

eG Enterpriseの価格設定と導入モデルはかなり複雑です。 このツールは、永続ライセンスまたはサブスクリプションベースで、ローカルにインストールされたソフトウェアとして利用できます。必要に応じて、クラウドベースのSaaSオプションも利用できます。価格はすぐに入手できません eGイノベーション 会社からの正式な見積もりをリクエストする必要があります。製品の機能をテストできる場合は、出版社から無料試用版を入手できます。

5. Idera Precise Platform

リストの最後は、別の製品です イデラ と呼ばれる 正確なプラットフォーム。とは異なります 診断マネージャー 正確なプラットフォームがOracle環境の可用性を維持し、最高の効率で実行するように特別に設計されています。このツールは、すべての重要なシステムコンポーネントからパフォーマンスメトリックをキャプチャ、測定、分析し、エンドユーザーが影響を受ける前に問題の根本原因を検出して修正するのに役立ちます。この製品は、複数のOracleおよびOracle RACインスタンスにわたって高レベルの可視性を提供し、問題の検出時にアラートを提供し、収集されたデータに関するレポートを提供し、Oracleデータベースパフォーマンス情報のウェアハウスを維持します。

Idera Preciseメインウィンドウ

イデラ 正確なプラットフォーム データベースの動作を継続的に分析して見つける最もパフォーマンスの低いオブジェクトまたはプロセス。これには、重いステートメント、重いオブジェクト、高いI / O、RACイベント、ストレージデバイスなどが含まれます。履歴統計は、インスタンスごと、ユーザーごと、およびプログラムごとに保存され、全体像を見るために必要なコンテキストを提供します。 SQLステートメント、データベースオブジェクト、およびOracleインスタンスを迅速に分析して、パフォーマンスの問題の特定の原因を明らかにします。また、Oracleアクセスパスを詳細な手順で表示し、各手順を理解するために必要な統計情報を表示して、問題を迅速に特定できるようにします。

イデラ 正確なプラットフォーム DBAに知識のライブラリを提供し、Oracle環境の調整を支援するために設計された経験。 SQLステートメントのチューニング、データベースオブジェクトのチューニング、インデックスチューニング、インデックスコストに関する推奨事項を提供します。また、問題のある領域を自動的に特定し、それらに対処する方法に関する実用的なアドバイスを提供します。さらに、DBAはwhat-if分析を実行して、提案された変更の影響を実際に予測する前に予測することができるため、誤って事態を悪化させるリスクを軽減できます。最後に、このツールを使用すると、ビジネスの増大するニーズに合わせてサーバーとストレージの容量を調整しやすくなります。

の価格 Idera Precise Platform すぐに利用できないため、次のことを行う必要があります特定の環境に適した見積もりについては、会社にお問い合わせください。同様に、デモセッションは、出版社に連絡することで手配できますが、無料トライアルは利用できないようです。

コメント