なぜプランキャッシュには実際の実行プランではなく推定されたプランが含まれているのですか?


8

見積もりプランを実際のプランではなくプランキャッシュに保存するというこの決定の背後にある多くの理由を考えることができます。しかし、「正しい」答えが見つかりません。

回答:


12

「実際の」の意味について考えてください。それはその計画の実行のために実際に起こることです。

実際の実行プランのもう1つの一般的な名前は、「ポスト実行プラン」です。このシナリオを関連付ける実際の例として、国を横断する旅行に行く計画を立てているとします。そのため、これからかかる道路と、かかると予想される時間を計画します。しかし、理由は道路工事や迂回のために、それは起こりませんかなりあなたが計画のように。それが実際の実行計画です。目的地に到達するためにたどった実際のルートです。見積もられた計画は、あなたがやろうと思っていたこと、そしてあなたがとるべきだと思った経路でした。

実行後の実行計画は、それだけなので保存できません。これらには、SQL Serverが発生すると考えているもの(推定実行計画)ではなく、実際に発生したことに関するメトリックが含まれています。

プランキャッシュは、実際には「マップ」の単なるリポジトリであり、新しいマップを作成するためにコストのかかる時間を費やすことなく再利用できます。実際の実行計画は事実の後で行われ、計画キャッシュは事実の前に処理されます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.