SQL_SERVER Telegram 820
امروز داشتم به مانیتورینگ نگاه می کردم ، دیدم توی یک بازه یک دفعه CPU به شدت رفته بالا و Wait ها هم زیاد بودن.
بررسی کردم دیدم یک کدی هست که یک دفعه ظاهر شده و تعداد دفعات اجراش زیاده.
زمان اجرای کد حدودا ۲ دقیقه بود و همچنین Logical Read بیش از ۲ میلیون داشت.
همچنین CPU هم به شدت درگیر شده بود.
اومدم پلن کد رو بررسی کردم . دیدم عزیز دل ، جان جانان ، آقامون SQL Server 😁 داره یک هشدار زیبای Implicit Convert میده.
دیدم توی شرط دوتا فیلد دارن باهم چک میشن که یکی bigint بود و یکی Nvarchar . همین باعث شده بود که پلن درستی ایجاد نشه و از ایندکس روی اون فیلد بهره نبره و کل جدول هربار اسکن بشه .
با تغییر اون فیلد Nvarchar به Bigint ( به خاطر اینکه داده هاشون یکی بودن و نیازی به Nvarchar نبود)‌ زمان اجرای کد مربوطه شد ۲۰۰ میلی ثانیه و Logical Read به زیر ۱۰۰ رسید.
حالا این دوست عزیز Implicit Convert چیست؟
زمانی که توی شرط ها فیلدی که قراره جستجو بشه ،‌نوع داده اش با نوع داده ای که داره بهش پاس داده میشه برابر نباشه‌، SQL Server میاد اینهارو بهم تبدیل میکنه.
همین باعث میشه یک فاجعه رخ بده. یعنی چی؟ دیگه اون جداول آماری Statistics مورد استفاده قرار نمیگیره و کل جدول رو مورد عنایت قرار میده. 😂
به همین راحتی کدتون میتونه یک فاجعه ای مثل کد بالا رو خلق کنه.
👍4811👌4🔥3



tgoop.com/sql_server/820
Create:
Last Update:

امروز داشتم به مانیتورینگ نگاه می کردم ، دیدم توی یک بازه یک دفعه CPU به شدت رفته بالا و Wait ها هم زیاد بودن.
بررسی کردم دیدم یک کدی هست که یک دفعه ظاهر شده و تعداد دفعات اجراش زیاده.
زمان اجرای کد حدودا ۲ دقیقه بود و همچنین Logical Read بیش از ۲ میلیون داشت.
همچنین CPU هم به شدت درگیر شده بود.
اومدم پلن کد رو بررسی کردم . دیدم عزیز دل ، جان جانان ، آقامون SQL Server 😁 داره یک هشدار زیبای Implicit Convert میده.
دیدم توی شرط دوتا فیلد دارن باهم چک میشن که یکی bigint بود و یکی Nvarchar . همین باعث شده بود که پلن درستی ایجاد نشه و از ایندکس روی اون فیلد بهره نبره و کل جدول هربار اسکن بشه .
با تغییر اون فیلد Nvarchar به Bigint ( به خاطر اینکه داده هاشون یکی بودن و نیازی به Nvarchar نبود)‌ زمان اجرای کد مربوطه شد ۲۰۰ میلی ثانیه و Logical Read به زیر ۱۰۰ رسید.
حالا این دوست عزیز Implicit Convert چیست؟
زمانی که توی شرط ها فیلدی که قراره جستجو بشه ،‌نوع داده اش با نوع داده ای که داره بهش پاس داده میشه برابر نباشه‌، SQL Server میاد اینهارو بهم تبدیل میکنه.
همین باعث میشه یک فاجعه رخ بده. یعنی چی؟ دیگه اون جداول آماری Statistics مورد استفاده قرار نمیگیره و کل جدول رو مورد عنایت قرار میده. 😂
به همین راحتی کدتون میتونه یک فاجعه ای مثل کد بالا رو خلق کنه.

BY SQL Server


Share with your friend now:
tgoop.com/sql_server/820

View MORE
Open in Telegram


Telegram News

Date: |

Ng Man-ho, a 27-year-old computer technician, was convicted last month of seven counts of incitement charges after he made use of the 100,000-member Chinese-language channel that he runs and manages to post "seditious messages," which had been shut down since August 2020. Each account can create up to 10 public channels Telegram is a leading cloud-based instant messages platform. It became popular in recent years for its privacy, speed, voice and video quality, and other unmatched features over its main competitor Whatsapp. The imprisonment came as Telegram said it was "surprised" by claims that privacy commissioner Ada Chung Lai-ling is seeking to block the messaging app due to doxxing content targeting police and politicians. 2How to set up a Telegram channel? (A step-by-step tutorial)
from us


Telegram SQL Server
FROM American