ホームページ データベース mysql チュートリアル 使用索引调节向导调整应用程序的性能_MySQL

使用索引调节向导调整应用程序的性能_MySQL

Jun 01, 2016 pm 02:06 PM
使用 アプリ パフォーマンス 索引 調整 調整する

你可以使用SQL服务器调节器(SQL Server Profiler)工具来收集服务器当前活动的重要信息。被这个Profiler工具所追踪到的信息(包含有数据库的真实负载)能够被用在多种场合里。现在让我们来看看如何使用Profiler收集能够被索引调节向导所使用的数据,以及你该如何使用这些工具来调试你的应用程序。

什么时候使用它?


Profiler工具能够用在数据库开发生命周期的所有阶段。例如,在初始阶段,你可以用它来辅助调试或者查明你的应用程序应该如何以及在何时调用存储过程和其他的SQL声明。在我最近所参与的一个项目里,一个已编译组件一调用数据库就超时,在这种情况下,我们使用了Profiler来辨别SQL的声明和应用程序调用它们的顺序。使用这个工具就帮助我们发现了逻辑上的错误,这样我们就成功地更正了自己的应用程序。

在开发过程后面的阶段里,Profiler能够有助于辨别负载/压力测试(load/stress testing)过程中应用程序的瓶颈。你还可以用它来监视日常的活动、执行安全审查,以及辨别其他影响性能的因素(例如设计不佳的查询)。

在Profiler里,你必须决定要记录什么,并考虑将所记录下来的服务器活动应该被保存在哪里。你可以选择将自己的追踪信息保存到数据库表格里或者是文件里。当选择将捕捉到的数据保存到表格里的时候,你还可以设置要保存数据行的最大数量。这样,Profiler就能够在一个任务繁重的系统里迅速地捕捉大量数据。但是由于这一点,你可能想要限制在一次追踪之中Profiler所要捕捉的数据总量。

你可以选择将所获得的信息保存到追踪文件里。如果选择了这个选项,你就能够在文件达到了一定的大小之后将文件信息覆盖掉,这将限制捕捉信息文件大小的上限。而且,你可以选择要从哪里开始进行追踪处理。这就非常像在应用程序层里编写代码选择是在客户端还是在服务器端进行指针执行。在正式的产品系统里,你可能不希望在服务器上放上这么一个工作负载,这样的话,让客户端处理可能就是最好的选择了。

当在这两个选项之间进行选择的时候,你的主要注意力应该放在其对数据库/应用程序性能的影响上。对于大多数类型的日志记录工作而言,将其保存为文件对系统的负担要比保存到数据库的小,所以对于高流量的实际产品系统来说,将日至保存为文件可能是更好的选择。

使用Profiler

你可以使用Profiler创建和保存能够被索引调节向导所使用的追踪结果。为了使用Profiler为向导所收集到的数据,你可以选择SQL服务器自带的缺省模板。要做到这一点,在文件(File)菜单里选择新建|追踪(New | Trace)。在常规(General)选项卡里(图A)选择用于向导的缺省模板。你就会看到可以将追踪结果保存为文件或者到数据库里。

图A

使用索引调节向导调整应用程序的性能_MySQL

Profiler的常规选项卡

在事件(Events)选项卡里(B),和向导相关联的事件类型有两个:RPC:Completed用于存储过程,以及SQL:BatchCompleted用于其他的TSQL声明。

图B

使用索引调节向导调整应用程序的性能_MySQL

Profiler的事件选项卡

在使用调节器对SQL服务器的活动进行捕捉的时候,你会在一段相对较短的时间内获得大量的数据,这取决于你服务器的使用情况。所以你就应该选择只记录下你所需要的项目而不是修改缺省的模板。而且在运行Profiler的时候,你要确保在捕捉期间典型的应用程序活动会发生,这对于保证索引调节向导的质量是非常重要的,除非你是正在试图解决某个特定的问题,在后面这种情况下你要确信指定的事件正在发生。

一旦追踪被保存到文件里或者数据库表格里,你就可以回放这一过程中所发生的所有活动——设置你希望的断点——这和你使用开发人员的IDE调试器很类似,如C所示。

图C

使用索引调节向导调整应用程序的性能_MySQL

回放Profiler的追踪内容

再次强调,捕捉到的数据会是相当多的。为了帮助限制所捕捉数据的数量,你可以定义过滤器。在定义自己的过滤器(图D)时,设置时间较长的查询是很常见的。

图D

使用索引调节向导调整应用程序的性能_MySQL

过滤数据

Profiler还能记录许多其他类型的数据库活动。Profiler本身就有许多选项供你选择。要获得更多的信息,我建议去查询MSDN在线或者SQL服务器的文档。Profiler会成为任何DBA的朋友,另外我还建议你去考察一下它的其他许多选项。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Apple Vision ProをPCに接続する方法 Apple Vision ProをPCに接続する方法 Apr 08, 2024 pm 09:01 PM

Apple Vision Pro ヘッドセットはコンピュータとネイティブ互換性がないため、Windows コンピュータに接続するように設定する必要があります。 Apple Vision Pro は発売以来、最先端の機能と充実した操作性を備えた大ヒット商品です。その理由は簡単にわかります。ただし、お使いの PC に合わせて調整することはできますが、その機能は AppleOS に大きく依存しているため、機能は制限されます。 AppleVisionPro をコンピュータに接続するにはどうすればよいですか? 1. システム要件を確認します 最新バージョンの Windows 11 が必要です (カスタム PC および Surface デバイスはサポートされていません) 64 ビット 2GHZ 以上の高速プロセッサをサポート 高性能 GPU、最大

ShazamアプリがiPhoneで動作しない:修正 ShazamアプリがiPhoneで動作しない:修正 Jun 08, 2024 pm 12:36 PM

iPhone の Shazam アプリに問題がありますか? Shazam は、曲を聞いて曲を見つけるのに役立ちます。ただし、Shazam が正常に動作しない場合、または曲が認識されない場合は、手動でトラブルシューティングを行う必要があります。 Shazam アプリの修復にはそれほど時間はかかりません。したがって、これ以上時間を無駄にすることなく、以下の手順に従って Shazam アプリの問題を解決してください。解決策 1 – 太字テキスト機能を無効にする iPhone の太字テキストが、Shazam が正しく動作しない原因である可能性があります。ステップ 1 – これは iPhone の設定からのみ実行できます。それで、開けてください。ステップ 2 – 次に、そこにある「ディスプレイと明るさ」設定を開きます。ステップ 3 – 「太字テキスト」が有効になっている場合

Windows 10 と Windows 11 のパフォーマンス比較: どちらが優れていますか? Windows 10 と Windows 11 のパフォーマンス比較: どちらが優れていますか? Mar 28, 2024 am 09:00 AM

Windows 10 と Windows 11 のパフォーマンス比較: どちらが優れていますか?テクノロジーの継続的な開発と進歩により、オペレーティング システムは常に更新され、アップグレードされます。世界最大のオペレーティング システム開発者の 1 つとして、Microsoft の Windows シリーズ オペレーティング システムは常にユーザーから大きな注目を集めてきました。 2021 年、Microsoft は Windows 11 オペレーティング システムをリリースし、広範な議論と注目を引き起こしました。では、Windows 10 と Windows 11 のパフォーマンスの違いは何でしょうか?

BTCC チュートリアル: BTCC 取引所で MetaMask ウォレットをバインドして使用する方法は? BTCC チュートリアル: BTCC 取引所で MetaMask ウォレットをバインドして使用する方法は? Apr 26, 2024 am 09:40 AM

MetaMask (中国語ではリトル フォックス ウォレットとも呼ばれます) は、無料で評判の高い暗号化ウォレット ソフトウェアです。現在、BTCC は MetaMask ウォレットへのバインドをサポートしており、バインド後は MetaMask ウォレットを使用してすぐにログイン、値の保存、コインの購入などが可能になり、初回バインドで 20 USDT のトライアル ボーナスも獲得できます。 BTCCMetaMask ウォレットのチュートリアルでは、MetaMask の登録方法と使用方法、および BTCC で Little Fox ウォレットをバインドして使用する方法を詳しく紹介します。メタマスクウォレットとは何ですか? 3,000 万人を超えるユーザーを抱える MetaMask Little Fox ウォレットは、現在最も人気のある暗号通貨ウォレットの 1 つです。無料で使用でき、拡張機能としてネットワーク上にインストールできます。

Xiaomi Autoアプリの使い方 Xiaomi Autoアプリの使い方 Apr 01, 2024 pm 09:19 PM

Xiaomi 車用ソフトウェアは、車のリモート制御機能を提供し、ユーザーが携帯電話やコンピュータを介して車両のドアや窓の開閉、エンジンの始動、車両のエアコンやオーディオの制御など、車両を遠隔制御できるようにします。このソフトウェアの使い方や内容について、一緒に学びましょう。 Xiaomi Auto アプリの機能と使用方法の包括的なリスト 1. Xiaomi Auto アプリは 3 月 25 日に Apple AppStore で公開され、Android スマートフォンのアプリストアからダウンロードできるようになりました; 車の購入: 主要なハイライトと技術パラメータについて学びますXiaomi Auto のサービスを利用して、試乗の予約をし、Xiaomi 車の設定と注文を行い、車の受け取りの To-Do 項目のオンライン処理をサポートします。 3. コミュニティ: Xiaomi Auto ブランド情報を理解し、車の経験を交換し、素晴らしいカーライフを共有します; 4. 車の制御: 携帯電話はリモコン、遠隔制御、リアルタイム セキュリティ、簡単です。

Embedding サービスのローカル実行パフォーマンスは OpenAI Text-Embedding-Ada-002 を上回っており、とても便利です。 Embedding サービスのローカル実行パフォーマンスは OpenAI Text-Embedding-Ada-002 を上回っており、とても便利です。 Apr 15, 2024 am 09:01 AM

Ollama は、Llama2、Mistral、Gemma などのオープンソース モデルをローカルで簡単に実行できるようにする非常に実用的なツールです。この記事では、Ollamaを使ってテキストをベクトル化する方法を紹介します。 Ollama をローカルにインストールしていない場合は、この記事を読んでください。この記事では、nomic-embed-text[2] モデルを使用します。これは、短いコンテキストおよび長いコンテキストのタスクにおいて OpenAI text-embedding-ada-002 および text-embedding-3-small よりも優れたパフォーマンスを発揮するテキスト エンコーダーです。 o が正常にインストールされたら、nomic-embed-text サービスを開始します。

PHP 配列キー値の反転: さまざまな方法のパフォーマンス比較分析 PHP 配列キー値の反転: さまざまな方法のパフォーマンス比較分析 May 03, 2024 pm 09:03 PM

PHP の配列キー値の反転メソッドのパフォーマンスを比較すると、array_flip() 関数は、大規模な配列 (100 万要素以上) では for ループよりもパフォーマンスが良く、所要時間が短いことがわかります。キー値を手動で反転する for ループ方式は、比較的長い時間がかかります。

さまざまな Java フレームワークのパフォーマンスの比較 さまざまな Java フレームワークのパフォーマンスの比較 Jun 05, 2024 pm 07:14 PM

さまざまな Java フレームワークのパフォーマンス比較: REST API リクエスト処理: Vert.x が最高で、リクエスト レートは SpringBoot の 2 倍、Dropwizard の 3 倍です。データベース クエリ: SpringBoot の HibernateORM は Vert.x や Dropwizard の ORM よりも優れています。キャッシュ操作: Vert.x の Hazelcast クライアントは、SpringBoot や Dropwizard のキャッシュ メカニズムよりも優れています。適切なフレームワーク: アプリケーションの要件に応じて選択します。Vert.x は高パフォーマンスの Web サービスに適しており、SpringBoot はデータ集約型のアプリケーションに適しており、Dropwizard はマイクロサービス アーキテクチャに適しています。

See all articles