2016-08-16 12 views
1

私たちはCRM NAVを前提としています。私たちには多くのパフォーマンス問題があります。アプリケーションログのクエリ実行時間を考慮して、1日あたり40〜50メッセージを取得します。CRM Nav 2015非常に遅い、クエリ実行時間制限外

警告1のようなものです、我々はアプリケーションログに取得

警告メッセージ:46.3秒の クエリの実行時間は、30秒のしきい値を超えました。スレッド:148;データベース:MSCRM; クエリ自体。

しかし、このクエリを実行すると、SSMSで時間がかからず、ORが1秒または2秒になることがあります。

CRMからのクエリとSSMSでのクエリを実行する時間の点で大きな違いがあるのはなぜですか。 ?

パフォーマンスを向上させるためにインデックスを再構築または再編成する必要があると思いますか?

ありがとうございました。 P.

+0

[Stack DBA](http://dba.stackexchange.com/search?q=query+slow)の方々が助けてくれるかもしれません。しかし、彼らはさらに多くの情報を必要とするでしょう。 [SQL Server Profiler](https://msdn.microsoft.com/en-us/library/ms181091.aspx?f=255&MSPPError=-2147217396)またはログファイルから取り込むことができるものはすべて役立ちます。実行計画を必ず含めてください。 –

+0

プロファイラへのクエリはほとんど実行されず、インデックスの作成と削除の提案がありましたが、それを行うのはどれほど安全ですか? – user2040021

+0

スタートアップパラメータに '-T4136'を追加し、' Parameter Sniffing'について確認してください – Devart

答えて

0

CRMシステムでレポートを実行してからSSMSから実行する可能性が最も高いのは、レポートを実行しているユーザーです。ほとんどのレポートは、フィルタリングされたビューに対して実行されます。このビューには、多くのオーバーヘッドを実施するセキュリティが含まれています。システム管理者権限でクエリを実行すると、フィルタされたビューに対するクエリのオーバーヘッドが大幅に削減されます。 SSMSとCRMの非管理者からシステム管理者を実行していますか?

サポートされていないものの、通常のビューに対してレポートクエリを書くことは、問題なく完璧に動作し、非常に高速です。もちろん、セキュリティチェックを含むフィルタリングされたビューに含まれる機能は失われます。

インデックス: はい、あなたは定期的にインデックスあなたのCRMデータベースに必ず、毎日または毎週あなたのインデックスをデフラグすることはさらに重要である必要があります。

CRMデータベースのインデックスの作成とデフラグはサポートされています。 30%を超えるフラグメンテーションレベルのインデックスは再構築することを推奨しますが、フラグメンテーションが10%を超えるものは再編成することをお勧めします。

プロダクションインデックスのデフラグは完全に安全ですが、システムのパフォーマンスへの影響を最小限に抑えるために、夜間に操作を実行する必要があります。

+0

非常に良い説明@Zach。いつものように、ありがとう! – user2040021

関連する問題