DBA の必須ガイド: 遅いデータベース クエリの解決

DBA の能力は、企業のデータベース システムの安定性からわかります。優れた DBA は、データベースの安定した運用を確保するだけでなく、データベースのさまざまな突然のパフォーマンスの問題に効果的に対処できる必要があります。そして最後の一般的なパフォーマンスの問題は、クエリが遅いことです。

私たちの会社は比較的大きく、大小のプロジェクトに合わせて 100 を超えるデータベース インスタンスがあります。これらのデータベースの安定した運用を確保するという重要なタスクは私にあります。私は毎日、すべての問題を 1 つずつトラブルシューティングする必要があります。これはタスクです。これは非常に困難な作業であり、間違いが起こることはよくありますが、影響は大きくありません。企業の利益に関わる場合は、次の会社がそれほど多くのデータベースを持たないことを祈ります。

難しすぎる

各データベース インスタンスにはスロー クエリの問題が数多く存在するため、トラブルシューティングを自分の人的リソースに依存するのは明らかに非現実的であり、多くの自動化ツールを試した結果、最終的に問題を完全に解決するツールを見つけました。それが、NineData のスロー クエリ分析機能です。データベース内のすべての遅いクエリを自動的に収集して記録できます。さらに目を引くのは、それぞれの遅いクエリに対してパフォーマンス診断を実行し、最終的にインデックスの追加または変更、テーブル構造の調整などの最適化の提案を提供することです。ビジネス ニーズに基づいた最適化の提案も提供します。「SQL 開発仕様を構成」と入力します。構成が完了すると、システムはこれらの仕様に基づいて遅い SQL も診断します。

早速、写真に移りましょう。

遅いクエリの傾向グラフ

これは、単一のデータ ソース ディメンションの低速クエリの傾向グラフです。まず、時間範囲内の低速クエリの合計数が表示されます。次に、12 月 8 日に大量の低速クエリが生成されたことが明確にわかります。曲線の上にマウスを置くと表示されます。

NineData の低速クエリ傾向グラフ

遅いクエリの統計

特定の段階でデータベースによって生成されたすべての低速クエリに関する詳細情報を表示します。SQL テンプレートは、特定のパラメータを含まない SQL フレームワークを表します。同じ SQL テンプレートを使用するすべての遅いクエリは、テンプレートの下に記録されます。テンプレートを展開すると、すべての遅い SQL ステートメントが表示されます。含まれる情報も実行時間など、非常に豊富です。 、クエリ時間、クエリを実行したユーザー、ホスト名など。

NineData の遅いクエリの統計

診断の最適化

低速クエリSQL文の性能診断を実施します。性能診断の結果は、実行時間の長さ、有効読み込みの低さ、待ち時間率の高さ、キャッシュヒット率の低さなどであり、管理者が設定したSQL開発仕様に基づいて標準的に審査されます。ステートメントがレビューされ、DBA がデータベースのパフォーマンスを簡単に最適化できるように、CBO コスト モデルに基づいてインデックスの推奨事項が提供されます。

NineData 診断の最適化

私にとって、このツールは日照りの後の恵みのようなもので、DBA に必要な機能がすべて揃っており、毎日 22 時過ぎまで残業していた私のような人間も、最近は定時で帰れるようになりました。

定時に退社し始める

最新のアップデート

つい最近、スロークエリ分析機能としてデータダッシュボードとレポートのダウンロード機能をリリースした。

前に述べたように、会社には 100 を超えるデータベース インスタンスがあり、各インスタンスには大量の低速クエリがあります...そこで問題が発生します。低速クエリを管理したい場合は、データ ソースを 1 つずつ開く必要があります。データソースの管理は非常に手間がかかりますが、このデータマーケットは最後の仕上げです。

スロークエリマーケット

データ ソース、環境、ラベル、データ ソース タイプ別の表示をサポートしており、最も遅いクエリを生成しているデータ ソースが一目でわかります。

NineData の低速クエリ市場

トップ 100 のデータ ソース

スロー クエリの数が多い上位 100 データ ソースが上位から順に表示され、詳細をクリックすると、管理用データ ソースのスロー クエリ ページにすぐにアクセスでき、非常に便利です。

NineData はトップ 100 のデータ ソースを表示します

レポートのダウンロード

この機能は、開発者に最適化要件を送信する必要がある場合に非常に役立ちます。データ ソースの低速クエリの詳細ページでは、ターゲット期間内のすべての低速 SQL を PDF ドキュメントに統合でき、修正が必要なすべての詳細が含まれます。 . 、開発者が比較して最適化できるようにします。

NineData では SQL レポートのダウンロードが遅くなります

追記

このツールを使用して以来、私は毎朝会社に来て、ゆっくりコーヒーを淹れ、コンピュータの電源を入れて NineData のコンソールにログインして、前日のスロークエリレポートを確認しています。当社のデータベースを包括的に理解することで、数日間全体的なステータスを把握した後、以前のように問題のトラブルシューティングに多大な時間とエネルギーを費やす代わりに、よりコアな修正作業に直接投資できるようになり、作業効率が大幅に向上します。

最も重要なことは、このツールは非常に信頼性が高いということです。数日間使用しても、何も見逃されませんでした。すべての小さなポイントがこのツールによって捕捉され、提示されます。上司は、対応するために多額の費用をかけて何人もの DBA を採用する必要がなくなりました。質問、ついにこれ以上の質問はありません。

IntelliJ IDEA 2023.3 と JetBrains Family Bucket の年次メジャー バージョン アップデート 新しいコンセプト「防御型プログラミング」: 安定した仕事に就く GitHub.com では 1,200 を超える MySQL ホストが稼働していますが、8.0 にシームレスにアップグレードするにはどうすればよいですか? Stephen Chow の Web3 チームは来月、独立したアプリをリリースする予定ですが、 Firefox は廃止されるのでしょうか? Visual Studio Code 1.85 リリース、フローティング ウィンドウ Yu Chengdong: ファーウェイは来年破壊的な製品を発売し、業界の歴史を書き換えるだろう 米国 CISA はメモリ セキュリティの脆弱性を排除するために C/C++ の廃止を勧告 TIOBE 12 月: C# がプログラミングになると予想30年前 雷軍が書いた論文「コンピュータウイルス判定エキスパートシステムの原理と設計」
{{名前}}
{{名前}}

Supongo que te gusta

Origin my.oschina.net/ninedata/blog/10321091
Recomendado
Clasificación